RPM包管理常用命令
一、rpm命令
1. 包名与包全名
- 包全名:操作的包是没有安装的包时,使用包全名。而且要主要路径
- 包名:操作已经安装的软件包时,使用包名。是搜索/var/lib/rpm中的数据库
2. RPM安装
rpm -ivh 包全名
选项:
-i (install) 安装
-v (verbose) 显示详细信息
-h (hash) 显示进度
--nodeps 不检测依赖性[不建议使用]
3. RPM包升级
rpm -Uvh 包全名
选项:
-U (upgrade) 升级
4. 卸载
rpm -e 包名
选项:
-e (erase) 卸载
--nodeps 不检查依赖性
5. 查询是否安装
rpm -q 包名
选项:
-q (query) 查询
-a (all) 查询所有
6. 查询软件包详细信息
rpm -qi 包名
选项:
-i (information) 查询软件信息
-p (package) 查询未安装的包信息,需要使用全包名
7. 查询包中文件安装位置
rpm -ql 包名
选项:
-l (list) 列表
-p (package) 查询未安装的包信息,需要使用全包名
8. 查询系统文件属于哪个RPM包
rpm -qf 系统文件名[绝对路径/相对路径]
选项:
-f (file) 文件路径
9. 查询安装包的依赖性
rpm - qR 包名
选项:
-R (requires) 查询软件安装包的依赖性
-p (package) 查询未安装的包信息,需要使用全包名
10. RPM包校验
验证结果对照表:
- S 文件大小是否改变
- M 文件的类型或者文件的权限(rwx)是否改变
- 5 文件的MD5校验和是否改变(可以看成文件的内容是否改变)
- D 主从设备号是否改变
- L 文件路径是否改变
- U 文件属主(所有者)是否改变
- G 文件所属组是否改变
- T 文件修改时间是否改变
文件类型
- c 配置文件(config file)
- d 普通文档 (documentation)
- g “鬼”文件(ghost file),很少见,就是该文件不应该被这个RPM包包含
- l 授权文件(license file)
- r 描述文件(readme)
rpm -V 已安装的包名
选项:
-V (verify) 校验执行RPM包中的文件
11. RPM包中提取文件
rpm2cpio 包全名 | \
cpio -idv .文件绝对路径
# 将rpm包转换成cpio格式命令
rpm2cpio
# 是一个标准工具,用于创建软件档案文件和从档案中提取文件
cpio
cpio 选项 < [文件|设备]
选项:
-i: copy-in模式,还原
-d: 还原时自动创建新目录
-v: 显示还原过程
------- 例 --------
# 查询ls命令属于哪个软件包
rpm -qf /bin/ls
# 造成ls命令误删除假象
mv /bin/ls /tmp/
# 提取RPM包中ls命令到当前目录的/bin/ls下
rpm2cpio /mnt/cdrom/Package/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls
# 把ls命令复制到/bin目录,修复丢失文件
cp /root/bin/ls /bin/
二、yum在线管理
1. 配置
1.1 yum配置文件路径
/etc/yum.conf
1.2 yum源配置文件路径
/etc/yum.repos.d
# 配置说明
[base] 容器名称
name 容器说明,可以自己随便写
mirrorlist 镜像站点,这个可以注释掉,mirrorlist和baseurl属性只配置一个即可
baseurl yum源服务器地址。默认使用CentOS官方服务器
enabled 是否启用,不配置此项,默认生效,0:禁用,1:启用
gpgcheck 1:RPM数字整数生效,0:不生效
gpgkey 数字证书的公钥文件路径。不用修改
2. 常用命令
2.1 查询所有可用包
# 查询所有可用的软件包列表
yum list
# 搜索服务器上所有和关键字相关的包
yum search 关键字
2.2 安装
yum -y install 包名
选项:
install 安装
-y 自动回答yes
--downloadonly 只下载不安装,下载到/etc/yum.conf配置文件指定的缓存目录中
2.3 升级
yum -y update 包名
选项:
update 升级
-y 自动回答yes
2.4 卸载
此命令不建议使用,容易级联删除其他包引用的软件或包,谨慎使用!
yum -y remove 包名
选项:
remove 卸载
-y 自动回答yes
2.5 yum软件组管理命令
# 列出所有可用的软件
yum grouplist
# 安装指定软件组,组名可以由grouplist查出来
yum groupinstall 软件组名
#卸载指定软件组
yum groupremove
2.6 光盘yum源搭建步骤
- 挂载光盘
mount /dev/cdrom /mnt/cdrom
- 虚拟机设置->硬件->设备状态->[勾选]已连接->连接->选中使用IOS镜像文件->选择文件
- 让网络yum源文件失效
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS-Vault.repo CentOS-Vault.repo.bak
- 修改光盘yum源配置文件
cd /etc/yum.repos.d
vim CentOS-Media.repo
>>>>>>>>>>>>>>>>>
[cd6-media]
name=CentOS-$releaserver-Media
# 配置挂载的光盘地址
baseurl=file:///mnt/cdrom
enabled=1
gpgckeck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-CentOS-6
<<<<<<<<<<<<<<<<<
3. 安装位置
3.1 RPM包安装位置
默认安装位置如下
RPM安装包默认安装路径 | |
---|---|
/etc/ | 配置文件安装目录 |
/usr/bin/ | 可执行文件命令安装目录 |
/usr/lib/ | 程序所使用的函数库保存位置 |
/usr/share/doc/ | 基本软件使用手册保存位置 |
/usr/share/man/ | 帮助文件保存位置 |
3.2 源码包安装位置
一般时安装在/usr/local/软件名/
,有些软件不一定按照这个规则
3.3 安装位置不同的影响
RPM包安装的服务可以使用系统服务管理命令(service)来管理。例如:RPM安装的apache的启动方式
- /etc/rc.d/init.d/httpd start
- service httpd start