RPM(yum)常见问题

yum 下载 RPM 包

使用 yum 的 downloadonly 插件

RHEL5 安装插件:

~# yum install yum-downloadonly

RHEL6 安装插件:

~# yum install yum-plugin-downloadonly

使用 yum 命令下载 RPM 包:

~# yum install --downloadonly --downloaddir=<directory> <package>

使用 yumdownloader

先安装 yum-utils 软件包:

~# yum install yum-utils

使用 yumdownloader 命令下载 RPM 包:

~# yumdownloader --destdir=<directory> <package>

下载 src.rpm 包

~# yumdownloader --source nfs-utils

RPM 安装忽略文件

rpm 安装软件包可以使用 --excludepath 选项忽略文件:

~# rpm -i chromium.rpm --excludepath=/usr/share/applications/chromium.desktop

RPM checksum 报错

如果出现这种报错:Rpmdb checksum is invalid: pkg checksums,可以通过 rpm --rebuilddb 命令重建 RPM 数据库。

RPM 查询格式

例如只返回 RPM 包的版本:

~# rpm -q --qf '%{version}\n' mlnx-ofa_kernel-devel

yum 架构问题

如果内核为 64 位,应用层为 32 位(例如运行在 32 位容器中),运行 yum 命令可能仍然默认安装 64 位版本,此时可以修改 yum 配置指定架构:

~# echo i386 > /etc/yum/vars/basearch
~# echo i686 > /etc/yum/vars/arch