Linux 之 RPM [Red - Hat Package Manager]【包管理】
命令符
-i
(install):安装软件包。--test
:测试安装,并不实际安装,只是检查依赖关系等是否满足安装条件。--nodeps
:忽略依赖关系进行安装。不过这种方式可能导致软件因缺少依赖而无法正常运行,使用时需谨慎。--force
:强制安装,即使软件包已经安装,或者存在一些冲突,也会进行安装操作。-U
(upgrade):升级软件包,如果软件包没有安装,则进行安装。-F
(freshen):更新软件包,如果软件包没有安装,则不会安装。-e
(erase):卸载指定的软件包。-q
(query):执行查询操作。-qa
:查询所有已安装的软件包(a 表示 all)。-qf
:查询指定文件属于哪个已安装的软件包(f 表示 file)。-qi
:查询指定已安装软件包的详细信息(i 表示 information)。-ql
:查询指定已安装软件包所安装的文件列表(l 表示 list)。-qc
:查询指定已安装软件包的配置文件列表(c 表示 config files)。-qd
:查询指定已安装软件包的文档文件列表(d 表示 documentation files)。
-V
(verify):验证软件包,检查软件包中的文件是否被修改(如文件的大小、权限、MD5 校验和等是否发生变化)。-v
(verbose):显示详细的操作信息。-h
(hash):在安装或升级过程中,以哈希符号(#)显示安装进度。
示例
软件包安装
rpm -ivh package.rpm
i
:表示安装(install)。v
:显示详细信息(verbose)。h
:以哈希符号(#)显示安装进度。
软件包升级
rpm -Uvh package.rpm
:升级软件包,如果软件包没有安装,则进行安装;U
(upgrade)表示升级。rpm -Fvh package.rpm
:更新软件包,如果软件包没有安装,则不会安装;F
(freshen)表示刷新。
软件包卸载
rpm -e package_name
:卸载指定的软件包,e
(erase)表示擦除(卸载)。
查询软件包信息
rpm -qa
:查询所有已安装的软件包(query all)。rpm -qi package_name
:查询指定已安装软件包的详细信息(query information),包括软件包的描述、版本、发布号、大小等。rpm -ql package_name
:查询指定已安装软件包所安装的文件列表(query list)。rpm -qc package_name
:查询指定已安装软件包的配置文件列表(query config files)。rpm -qd package_name
:查询指定已安装软件包的文档文件列表(query documentation files)。rpm -qf file_path
:查询指定文件属于哪个已安装的软件包(query file)。
验证软件包
rpm -V package_name
:验证软件包,检查软件包中的文件与最初安装时是否有变化,包括文件的大小、权限、MD5 校验和等信息。如果没有输出,则表示软件包未被修改;如果有输出,则会显示修改的信息。