新建文本
groups test
-----------------------------------------------------------------------------------------
id test
-----------------------------------------------------------------------------------------
adduser 后, 发现su 切换至该用户没反应,查看/etc/passwd 发现用户的shell 为false! 所以需要修改用户shell, 命令如下:
usermod -s /bin/bash username
-------------------------------------------------------------------------------------useradd,userdel,usermod,id
groupadd groupdel,groupmod,groups
-------------------------------------------------------------------------------------
查看未安装rpm包里面的内容使用命令:
rpm -qpl /**/**/xxxx.rpm包名(全路径)
-p, --package PACKAGE_FILE
-l,--list List files in package.
-q query
-------------------------------------------------------------------------------------
CentOS自带的Yum源文件中使用了 $releasever , $basearch 等这些变量, 奇怪的是这些变量的值是从哪获取的呢?
Google 一下之后,说明Yum变量的说明可以在这里(5.3.3. Using Yum Variables)找到,说明如下:
5.3.3. Using Yum Variables
You can use and reference the following built-in variables in yum commands and in all Yum configuration files (that is, /etc/yum.conf and all .repo files in the /etc/yum.repos.d/ directory):
$releasever
You can use this variable to reference the release version of Red Hat Enterprise Linux. Yum obtains the value of $releasever from the distroverpkg=value line in the /etc/yum.conf configuration file. If there is no such line in /etc/yum.conf, then yum infers the correct value by deriving the version number from the redhat-release package.
$arch
You can use this variable to refer to the system’s CPU architecture as returned when calling Python’s os.uname() function. Valid values for $arch include: i586, i686 and x86_64.
$basearch
You can use $basearch to reference the base architecture of the system. For example, i686 and i586 machines both have a base architecture of i386, and AMD64 and Intel64 machines have a base architecture of x86_64.
$YUM0-9
These ten variables are each replaced with the value of any shell environment variables with the same name. If one of these variables is referenced (in /etc/yum.conf for example) and a shell environment variable with the same name does not exist, then the configuration file variable is not replaced.
To define a custom variable or to override the value of an existing one, create a file with the same name as the variable (without the “$” sign) in the /etc/yum/vars/ directory, and add the desired value on its first line.
For example, repository descriptions often include the operating system name. To define a new variable called $osname, create a new file with “Red Hat Enterprise Linux” on the first line and save it as /etc/yum/vars/osname:
~]# echo “Red Hat Enterprise Linux” > /etc/yum/vars/osname
Instead of “Red Hat Enterprise Linux 6”, you can now use the following in the .repo files:
name=$osname $releasever
文中说到$releasever的定义可以查看 /etc/yum.conf 文件的事distroverpkg=value 行,打开 /etc/yum.conf 看一下,默认文件(我的是CentOS 6)内容如下:
-------------------------------------------------------------------------------------
1、用户列表文件:/etc/passwd/
2、用户组列表文件:/etc/group
5、查看用户操作:w命令(需要root权限)
6、查看某一用户:w 用户名
7、查看登录用户:who
8、查看用户登录历史记录:last
9、修改root用户密码:
passwd
10、root用户修改其他用户密码:
passwd <user_name>
----------------------------------------------------------------------------------
EPEL的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。
DNF(Dandified Yum)是新一代的RPM软件包管理器。
DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。
DNF使用RPM,libsolv和hawkey库进行包管理操作,Fedora22已经默认使用DNF。
YUM简介
1. YUM: Yellowdog Update Modifier
完成RHEL系列前端自动解决依赖关系安装工具,依赖rpm存在
2.工作模式:C/S 架构
Server端(yum仓库):依赖关系库、原文件、校验码文件
Client端:yum客户端程序、配置文件(连接Server路径信息)
3.设计缺陷:
某一次安装过程中半途终止,再次重启后将无法解决程序间的依赖关系
yum升级版dnf就是为了解决此类问题
------------------------------------------------------------------------------------------
yum配置文件路径
/etc/yum.conf:为所有yum仓库提供公共配置
/etc/yum.repos.d/*.repo:为仓库的指向提供配置
仓库(*.repo)配置文件定义:
[repositoryID] #仓库ID,唯一标识别,不能重复
name=Some name for this repository # 完整的仓库名称
baseurl=url://path/to/repository/ # yum仓库指明的访问路径
enabled={1|0} #是否启用此yum仓库,默认启用
gpgcheck={1|0} #是否检查完整性和来源合法性
gpgkey=URL #秘钥文件位置,可能是对方仓库提供
enablegroups={1|0} #是否基于组来批量管理程序包
failovermethod={roundrobin|priority} #故障转移方法:轮询、根据优先级选择; 默认roundrobin随机
1)*.repo可以将多个[repositoryID]的配置信息放在一个而文件内,也可以切成多个方便管理
2)baseurl可以使用:ftp:// 、http:// 、nfs:// 、file:/// 指明URL路径
3)baseurl等号两边不能有空格,其后可以填写多个镜像访问路径,每行一个,不能顶行写
多个访问路径间联系是镜像相同,目的是为了做备用访问
显示仓库列表:repolist
# yum repolist [all|enabled|disabled] [所有|可用的|不可用]
以指定的关键字搜索程序包名及summary信息:search
# yum search string1 [string2] [...]
Linux使用yum install 安装程序时,提示“另外一个程序锁定了 yum;等待它退出……”
原因:
yum命令一次只能安装一个软件,所以当你下载安装第二个软件包时,系统进程锁会锁定yum,这时,关闭进程甚至关闭虚拟机重启再执行yum还是会出现同样情况
解决:
强制采用rm -f /var/run/yum.pid关闭yum进程即可
yum whatprovides反查询命令在什么包中。
yum provides反查询文件在什么包中。
------------------------------------------------------------------------------------------