什么是rpm?
rpm是RPM package manager的缩写,最早由RedHat公司提出的软件包标准,后来随着rpm的不断发展而又增加许多功能,逐渐的成为linux公认的软件包管理标准。支持该格式的厂商有RedHat linux、SUSE linux、Mandriva linux。
rpm命令十分强大,那么rpm命令究竟有什么功能呢?
1 查询已安装在linux系统中的rpm软件包的信息
2 查询rpm软件包安装文件的信息
3 安装rpm软件包到当前linux系统
4 从linux系统中卸载已安装的rpm软件包
5 升级当前linux系统的rpm软件包
(1)#rpm -qa后面不接参数用于查看系统中已经安装的所有的rpm包
(2)#rpm -q rpm包名用于查看系统中是否安装了该软件包,如果安装了,系统会显示完整的包名;如果没有安装,系统会提示”package bas is not installed”。
(3)#rpm -qi rpm包名用于查看系统中已经安装的rpm包的完整信息,包括该包的版本信息,安装时间和大小等。
(4)#rpm -ql rpm包名用于查看该软件包都安装到了那些位置。
(5)#rpm -qf 文件名用于查看某个文件使用那个rpm包安装的。
(6)#rpm -qpi rpm包名和#rpm -qpl分别用于查看没有安装的包的信息,注意下和(4)、(5)的区别。
(7)#rpm -ivh 包名用于安装rpm软件包,i代表安装、v代表可视化安装、h代表安装的时候显示进度。
(8)#rpm –force -irpm包用于强制安装rpm软件包,–force参数用于安装存在依存关系的rpm包。不过一般我们并不怎做,解决依存关系的较好的方法是使用#rpm -i 命令一起安装。
(9)#rpm -e rpm包名用于删除rpm软件包。rpm -e –nodeps 包名用于删除存在依存关系的软件包,该命令可以将和该包存在依存关系的所有的软件包统统删除。
(10)#rpm -Urpm包名用于对rpm包的升级。
rpm 常用命令
1.安装一个包
# rpm -ivh
2.升级一个包
# rpm -Uvh
3.移走一个包
# rpm -e
4.安装参数
–force 即使覆盖属于其它包的文件也强迫安装
–nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。
5.查询一个包是否被安装
# rpm -q < rpm package name>
6.得到被安装的包的信息
# rpm -qi < rpm package name>
7.列出该包中有哪些文件
# rpm -ql < rpm package name>
8.列出服务器上的一个文件属于哪一个RPM包
#rpm -qf
9.可综合好几个参数一起用
# rpm -qil < rpm package name>
10.列出所有被安装的rpm package
# rpm -qa
11.列出一个未被安装进系统的RPM包文件中包含有哪些文件?
# rpm -qilp < rpm package name>
一、安装
命令格式:
rpm -i ( or –install) options file1.rpm … fileN.rpm
参数:
file1.rpm … fileN.rpm 将要安装的RPM包的文件名
详细选项:
-h (or –hash) 安装时输出hash记号 (“#”)
–test 只对安装进行测试,并不实际安装。
–percent 以百分比的形式输出安装的进度。
–excludedocs 不安装软件包中的文档文件
–includedocs 安装文档
–replacepkgs 强制重新安装已经安装的软件包
–replacefiles 替换属于其它软件包的文件
–force 忽略软件包及文件的冲突
–noscripts 不运行预安装和后安装脚本
–prefix 将软件包安装到由 指定的路径下
–ignorearch 不校验软件包的结构
–ignoreos 不检查软件包运行的操作系统
–nodeps 不检查依赖性关系
–ftpproxy 用 作为 FTP代理
–ftpport 指定FTP的端口号为
通用选项
-v 显示附加信息
-vv 显示调试信息
–root 让RPM将指定的路径做为”根目录”,这样预安装程序和后安
装程序都会安装到这个目录下
–rcfile 设置rpmrc文件为
–dbpath 设置RPM 资料库存所在的路径为
二、删除
命令格式:
rpm -e ( or –erase) options pkg1 … pkgN
参数
pkg1 … pkgN :要删除的软件包
详细选项
–test 只执行删除的测试
–noscripts 不运行预安装和后安装脚本程序
–nodeps 不检查依赖性
通用选项
-vv 显示调试信息
–root 让RPM将指定的路径做为”根目录”,这样预安装程序和后安装
程序都会安装到这个目录下
–rcfile 设置rpmrc文件为
–dbpath 设置RPM 资料库存所在的路径为
三、升级
命令格式
rpm -U ( or –upgrade) options file1.rpm … fileN.rpm
参数
file1.rpm … fileN.rpm 软件包的名字
详细选项
-h (or –hash) 安装时输出hash记号 (“#”)
–oldpackage 允许”升级”到一个老版本
–test 只进行升级测试
–excludedocs 不安装软件包中的文档文件
–includedocs 安装文档
–replacepkgs 强制重新安装已经安装的软件包
–replacefiles 替换属于其它软件包的文件
–force 忽略软件包及文件的冲突
–percent 以百分比的形式输出安装的进度。
–noscripts 不运行预安装和后安装脚本
–prefix 将软件包安装到由 指定的路径下
–ignorearch 不校验软件包的结构
–ignoreos 不检查软件包运行的操作系统
–nodeps 不检查依赖性关系
–ftpproxy 用 作为 FTP代理
–ftpport 指定FTP的端口号为
通用选项
-v 显示附加信息
-vv 显示调试信息
–root 让RPM将指定的路径做为”根目录”,这样预安装程序和后安装程序都会安装到这个目录下
–rcfile 设置rpmrc文件为
–dbpath 设置RPM 资料库存所在的路径为
四、查询
命令格式:
rpm -q ( or –query) options
参数:
pkg1 … pkgN :查询已安装的软件包
详细选项
-p (or “-”) 查询软件包的文件
-f 查询属于哪个软件包
-a 查询所有安装的软件包
–whatprovides 查询提供了 功能的软件包
-g 查询属于 组的软件包
–whatrequires 查询所有需要 功能的软件包
信息选项
显示软件包的全部标识
-i 显示软件包的概要信息
-l 显示软件包中的文件列表
-c 显示配置文件列表
-d 显示文档文件列表
-s 显示软件包中文件列表并显示每个文件的状态
–scripts 显示安装、卸载、校验脚本
–queryformat (or –qf) 以用户指定的方式显示查询信息
–dump 显示每个文件的所有已校验信息
–provides 显示软件包提供的功能
–requires (or -R) 显示软件包所需的功能
通用选项
-v 显示附加信息
-vv 显示调试信息
–root 让RPM将指定的路径做为”根目录”,这样预安装程序和后安装程序都会安装到这个目录下
–rcfile 设置rpmrc文件为
–dbpath 设置RPM 资料库存所在的路径为
五、校验已安装的软件包
命令格式:
rpm -V ( or –verify, or -y) options
参数
pkg1 … pkgN 将要校验的软件包名
软件包选项
-p Verify against package file
-f 校验所属的软件包
-a Verify 校验所有的软件包
-g 校验所有属于组 的软件包
详细选项
–noscripts 不运行校验脚本
–nodeps 不校验依赖性
–nofiles 不校验文件属性
通用选项
-v 显示附加信息
-vv 显示调试信息
–root 让RPM将指定的路径做为”根目录”,这样预安装程序和后安装程序都会安装到这个目录下
–rcfile 设置rpmrc文件为
–dbpath 设置RPM 资料库存所在的路径为
六、校验软件包中的文件
语法:
rpm -K ( or –checksig) options file1.rpm … fileN.rpm
参数:
file1.rpm … fileN.rpm 软件包的文件名
Checksig–详细选项
–nopgp 不校验PGP签名
通用选项
-v 显示附加信息
-vv 显示调试信息
–rcfile 设置rpmrc文件为
七、其它RPM选项
–rebuilddb 重建RPM资料库
–initdb 创建一个新的RPM资料库
–quiet 尽可能的减少输出
–help 显示帮助文件
–version 显示RPM的当前版本