YUM 与 RPM 常用命令使用指南
YUM 基于 RPM,用于在线管理软件包,能自动解决依赖问题,方便日常使用;RPM 则用于本地软件包管理,需手动处理依赖,适用于特殊场景。使用rpm
命令安装/升级软件包时,-h
选项可显示安装进度。
一、YUM / RPM 包查询常用命令
功能 | YUM 命令 | RP 命令 | 说明 |
---|---|---|---|
查询已安装软件包 | yum list installed (所有包) yum list installed <package> |
rpm -qa |
yum list installed 信息更全; rpm -qa 仅列包名 |
查询软件包详情 | yum info <package> |
rpm -qi <package> rpm -qpi <package.rpm> (未安装包) |
查指定包详情,后者可查未安装RPM包信息 |
搜索可用软件包 | yum search <keyword> |
`rpm -qa | grep <keyword> rpm -qp --querytags <keyword>` |
查找命令所属软件包 | yum provides $(which <command>) |
rpm -qf $(which <command>) |
查找含指定命令的软件包 |
查找提供指定文件的软件包 | yum provides <file> |
rpm -q --whatprovides <file> |
查找提供指定文件的软件包 |
列出软件包安装文件列表 | - | rpm -ql <package> rpm -qlp <package.rpm> (未安装包) |
列出指定包安装文件列表,后者针对未安装包 |
查询软件包依赖关系 | yum deplist <package> |
rpm -qR <package> rpm -qpR <package.rpm> (未安装包) |
查指定包依赖关系,后者针对未安装包 |
二、YUM / RPM 包管理常用命令
功能 | YUM 命令 | RP 命令 | 说明 |
---|---|---|---|
安装软件包 | yum install <package> yum localinstall <package.rpm> |
rpm -ivh <package.rpm> |
yum 自动处理依赖; rpm 需手动处理依赖, yum localinstall 本地装包并解决依赖 |
升级软件包 | yum update <package> yum update (所有包) |
rpm -Uvh <package.rpm> |
yum 自动处理依赖, rpm 需手动处理依赖, yum update 不指定包名更新所有包 |
删除软件包 | yum remove <package> yum autoremove <package> |
rpm -e <package> |
yum 自动处理依赖调整, rpm 需手动处理依赖调整, yum autoremove 删除无用依赖 |
三、YUM 其他常用命令
功能 | YUM 命令 | 说明 |
---|---|---|
添加软件仓库 | yum-config-manager --add-repo <repository_url> |
需安装yum - utils 包,用于添加、启用、禁用软件仓库 |
启用软件仓库 | yum-config-manager --enable <repository_name> |
- |
禁用软件仓库 | yum-config-manager --disable <repository_name> |
- |
查看历史事务 | yum history |
查看 YUM 历史事务记录,可对事务进行详细查看、撤销、重做等操作,撤销和重做有风险需谨慎 |
查看事务详情 | yum history info <transaction_id> |
- |
撤销事务 | yum history undo <transaction_id> |
- |
重做事务 | yum history redo <transaction_id> |
- |
回滚到特定版本 | yum downgrade <package>-<version> |
- |
安装YUM插件 | yum install yum-plugin-<plugin_name> |
安装插件扩展功能,如yum-plugin-fastestmirror |
清理缓存 | yum clean all |
清理 YUM 缓存,释放磁盘空间 |
列出软件仓库 | yum repolist |
列出 YUM 配置的软件仓库 |
仅下载软件包 | yum download <package> |
仅下载软件包到当前目录,不安装 |
列出可更新的软件包 | yum check-update |
列出可以更新的软件包 |
自动处理依赖关系 | yum install/update/remove <package> |
YUM 自动处理软件包依赖关系,避免手动解决依赖问题 |
组管理 | yum groupinstall/groupremove/grouplist <group_name> |
安装、删除或列出软件包组,方便批量管理软件包 |
四、RPM 其他常用命令
功能 | RP命令 | 说明 |
---|---|---|
查询文件所属软件包 | rpm -qf <file> |
查询指定文件属于哪个软件包 |
查询软件包文件列表 | rpm -ql <package> rpm -qlp <package.rpm> (未安装包) |
列出指定包安装文件列表,后者针对未安装包 |
查询软件包依赖关系 | rpm -qR <package> rpm -qpR <package.rpm> (未安装包) |
查指定包依赖关系,后者针对未安装包 |
查询软件包脚本 | rpm -q --scripts <package> |
查询指定包的安装、升级和删除脚本 |
查询软件包配置文件 | rpm -qc <package> |
列出指定包的配置文件 |
查询软件包文档文件 | rpm -qd <package> |
列出指定包的文档文件 |
查询软件包验证信息 | rpm -qV <package> |
验证指定包的文件完整性和权限 |
查询软件包签名信息 | rpm -q --qf '%{SIGPGP:pgpsig}' <package> |
查询指定包的签名信息 |
查询软件包文件属性等 | rpm -q --fileattrs <package> rpm -q --filesize <package> |
查询文件属性、大小、类型、权限等多种属性 |
查询已安装证书 | rpm -qa gpg - pubkey* |
列出所有已安装的 GPG 公钥包 |
安装证书 | rpm --import <证书文件> |
安装 GPG 公钥。其中<证书文件> 可以是包含公钥的 ASCII 文件,也可以是从密钥服务器导出的文件 |
查询证书信息 | rpm -qi gpg - pubkey - <keyvalue> |
查询指定 GPG 公钥包的详细信息 |
卸载证书 | rpm -e gpg - pubkey - <keyvalue> |
卸载指定 GPG 公钥包 |
五、文件搜索
功能 | 命令 | 说明 |
---|---|---|
按名称搜索文件 | find / -name <filename> |
在整个文件系统搜指定名称文件或目录,查找速度相对较慢,但能实时反映文件系统变化 |
快速查找文件 | locate <filename> |
使用locate 命令快速定位文件,它使用的是系统数据库中的文件信息,搜索速度快。 但需注意,因为系统数据库不是实时更新的,要确保搜索结果的准确性,需先运行updatedb 命令更新数据库。若未及时更新,可能无法搜索到最新创建或修改的文件。 |