YUM 基于 RPM,在线管理软件包,自动解决依赖,方便日常使用;RPM 用于本地软件包管理,需手动处理依赖,适用于特殊场景。使用 rpm 命令安装 / 升级软件包时,-h 选项显示安装进度。
一、YUM / RPM 包查询常用命令
功能 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | YUM 命令 | RPM 命令 | 说明 |
---|---|---|---|
查询已安装软件包 | yum list installed yum list installed | rpm -qa | rpm -qa 仅列包名; yum list installed 信息更全,可查指定包是否安装 |
查询软件包详情 | yum info | rpm -qi rpm -qpi <package.rpm>(未安装包) | 查指定包详情,后者可查未安装 RPM 包信息 |
搜索可用软件包 | yum search | rpm -qa grep rpm -qp --querytags | yum search 搜含关键字包; rpm -qa grep 有差别,rpm -qp --querytags 查包标签 |
查找命令所属软件包 | yum provides $(which ) | rpm -qf $(which ) | 查找含指定命令的软件包 |
查找提供指定文件的软件包 | yum provides | rpm -q --whatprovides | 查找提供指定文件的软件包 |
列出软件包安装文件列表 | - | rpm -ql rpm -qlp <package.rpm>(未安装包) | 列出指定包安装文件列表,后者针对未安装包 |
查询软件包依赖关系 | yum deplist | rpm -qR rpm -qpR <package.rpm>(未安装包) | 查指定包依赖关系,后者针对未安装包 |
二、YUM / RPM 包管理常用命令
功能 | YUM 命令 | RPM 命令 | 说明 |
---|---|---|---|
安装软件包 | yum install yum localinstall <package.rpm> | rpm -ivh <package.rpm> | yum 自动处理依赖; rpm 需手动处理依赖, yum localinstall 本地装包并解决依赖 |
升级软件包 | yum update yum update(所有包) | rpm -Uvh <package.rpm> | yum 自动处理依赖, rpm 需手动处理, yum update 不指定包名更新所有包 |
删除软件包 | yum remove yum autoremove | rpm -e | 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 - | - |
安装 YUM 插件 | yum install yum-plugin-<plugin_name> | 安装插件扩展功能,如 yum-plugin-fastestmirror |
清理缓存 | yum clean all | 清理 YUM 缓存,释放磁盘空间 |
列出软件仓库 | yum repolist | 列出 YUM 配置的软件仓库 |
仅下载软件包 | yum download | 仅下载软件包到当前目录,不安装 |
列出可更新的软件包 | yum check-update | 列出可以更新的软件包 |
自动处理依赖关系 | yum install/update/remove | YUM 自动处理软件包依赖关系,避免手动解决依赖问题 |
组管理 | yum groupinstall/groupremove/grouplist <group_name> | 安装、删除或列出软件包组,方便批量管理软件包 |
四、RPM 其他常用命令
功能 ~~~~~~~~~~~~~~~~~~~~~~~~~~ | RPM 命令 | 说明 |
---|---|---|
查询文件所属软件包 | rpm -qf | 查询指定文件属于哪个软件包 |
查询软件包文件列表 | rpm -ql rpm -qlp <package.rpm>(未安装包) | 列出指定包安装文件列表,后者针对未安装包 |
查询软件包依赖关系 | rpm -qR rpm -qpR <package.rpm>(未安装包) | 查指定包依赖关系,后者针对未安装包 |
查询软件包脚本 | rpm -q --scripts | 查询指定包的安装、升级和删除脚本 |
查询软件包配置文件 | rpm -qc | 列出指定包的配置文件 |
查询软件包文档文件 | rpm -qd | 列出指定包的文档文件 |
查询软件包验证信息 | rpm -qV | 验证指定包的文件完整性和权限 |
查询软件包签名信息 | rpm -q --qf | 查询指定包的签名信息,此处疑似命令有误,一般查询签名是 rpm -q --qf ‘%{SIGPGP:pgpsig}’ ,可补充说明正确命令用法 |
查询软件包文件属性等 | rpm -q --fileattrs rpm -q --filesize …(多种属性查询) | 查询文件属性、大小、类型、权限等多种属性 |
五、文件搜索
功能 | 命令 | 说明 |
---|---|---|
按名称搜索文件 | find /-name | 在整个文件系统搜指定名称文件或目录,查找速度相对较慢,但能实时反映文件系统变化 |
快速查找文件 | locate | 使用 locate 命令快速定位文件,它使用的是系统数据库中的文件信息,搜索速度快。 但需注意,要确保搜索结果的准确性,需要先运行 updatedb 命令更新数据库。因为系统数据库不是实时更新的,若未及时更新,可能无法搜索到最新创建或修改的文件。 |