yum 包管理器关于退出代码的奇怪行为:
Posted
技术标签:
【中文标题】yum 包管理器关于退出代码的奇怪行为:【英文标题】:Weird Behavior from yum package manager regarding exit codes: 【发布时间】:2016-10-12 15:55:36 【问题描述】:我使用 yum 作为包管理器,因为我在 Centos 上。我正在使用内核头文件和开发包,并注意到一些我无法通过谷歌搜索找到信息的特殊行为:
目前我为当前内核安装了头文件和开发包,但是每当我执行 yum 命令在本地安装这些(我有 RPM)时,我会得到不同的行为:
(注意:我正在致力于自动化安装,所以我知道在我当前的环境中这样做是没有价值的。我只是在寻找对这种不一致的一些理解)
[root@host mydir]# rpm -qa | grep kernel
kernel-headers-2.6.32-573.7.1.el6.x86_64
kernel-2.6.32-504.el6.x86_64
kernel-2.6.32-573.7.1.el6.x86_64
kernel-devel-2.6.32-573.7.1.el6.x86_64
libreport-plugin-kerneloops-2.0.9-25.el6.centos.x86_64
kernel-2.6.32-573.3.1.el6.x86_64
kernel-firmware-2.6.32-573.22.1.el6.noarch
abrt-addon-kerneloops-2.0.8-34.el6.centos.x86_64
dracut-kernel-004-388.el6.noarch
安装了有问题的两个包(kernel-2.6.32-573.7.1.el6.x86_64
的开发和标头
[root@host mydir]# ver=`uname -r`
尝试安装标头:
[root@host mydir]# yum install kernel-header-$ver
Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile
Nopackage kernel-header-2.6.32-573.7.1.el6.x86_64 available.
Error: Nothing to do
[root@host mydir]# echo $?
1
退出时出现错误,但是当我对开发包尝试相同的操作时...
[root@host mydir]# yum install kernel-devel-$ver
Loaded plugins: fastestmirror, security
Setting up Install Process
Loading mirror speeds from cached hostfile
Nothing to do
[root@host mydir]# echo $?
0
【问题讨论】:
【参考方案1】:简单:yum 没有可用的旧软件包。唯一可用的“内核头包”是最新的 CentOS 6.8 更新 = kernel-headers-2.6.32-642.1.1.el6
除此之外,内核头文件 ( /usr/include/* ) 并不一定要遵循内核版本:它们用于构建应用程序。必须匹配的两个包是 kernel、kernel-devel。
更新http://mirror.centos.org/centos/6.8/updates/
发布http://mirror.centos.org/centos/6.8/os/
【讨论】:
以上是关于yum 包管理器关于退出代码的奇怪行为:的主要内容,如果未能解决你的问题,请参考以下文章