Ran*_*ndy 12 yum configuration
我正在使用一组本地 yum 存储库并尝试从这些存储库安装一组包。我注意到当命令行上的一个包不存在时,Yum 只是打印出它没有被找到,然后继续前进。
发生这种情况时,我可以让 Yum 退出吗?是否有其他一些 Yum 实用程序可以用来给它我的存储库和我的包并告诉我是否有问题?
yum --disablerepo=* --enablerepo=myrepo --nogpgcheck \
--installroot=/var/some/place/test install \
abasdfasfeafseasfeasef bash coreutils utils-linux
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
No package **abasdfasfeafseasfeasef** available.
No package **utils-linux** available.
<snip>
Complete!
Run Code Online (Sandbox Code Playgroud)
我正在从另一个脚本调用 Yum,但似乎没有办法判断我安装的软件包是否真的安装了。
小智 13
yum 的现代版本(yum-3.4.3-133.el7+, ticket)提供了两个应该有助于这个用例的选项:
skip_missing_names_on_install如果设置为 False,'yum install' 将在找不到任何提供的名称(包、组、rpm 文件)时失败。布尔值(1、0、真、假、是、否)。默认为真。
skip_missing_names_on_update如果设置为 False,'yum update' 将在找不到任何提供的名称(包、组、rpm 文件)时失败。如果提供的名称是可用但未安装的包,它也会失败。布尔值(1、0、真、假、是、否)。默认为真。
来源:手册页
用法:
yum --setopt=skip_missing_names_on_install=False <commands-here>
Jan*_*der -1
我不知道 yum,但你可以使用 询问是否安装了软件包rpm -q my_package ...
。如果缺少任何包,它将以失败状态退出。
$ rpm -q abasdfasfeafseasfeasef bash coreutils utils-linux
package abasdfasfeafseasfeasef is not installed
bash-4.1.2-9.el6_2.x86_64
coreutils-8.4-19.el6.x86_64
package utils-linux is not installed
$ echo $?
1
$ rpm -q bash
bash-4.1.2-9.el6_2.x86_64
$ echo $?
0
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4645 次 |
最近记录: |