概要
環境: CentOS 6 系
放置していたサーバーの適当なパッケージを更新しようとしたら、いつまで経っても進捗せず。
とりあえず落ち着いて Ctrl+C
$ sudo yum update wget
[sudo] password for user:
読み込んだプラグイン:downloadonly, fastestmirror, security
^CTraceback (most recent call last):
File "/usr/bin/yum", line 29, in <module>
yummain.user_main(sys.argv[1:], exit_code=True)
File "/usr/share/yum-cli/yummain.py", line 298, in user_main
errcode = main(args)
File "/usr/share/yum-cli/yummain.py", line 115, in main
base.getOptionsConfig(args)
File "/usr/share/yum-cli/cli.py", line 229, in getOptionsConfig
self.conf
File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 911, in <lambd
a>
conf = property(fget=lambda self: self._getConfig(),
File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 335, in _getCo
nfig
startupconf.pluginconfpath,disabled_plugins,enabled_plugins)
File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 564, in doPlug
inSetup
plugin_types, confpath, disabled_plugins, enabled_plugins)
File "/usr/lib/python2.6/site-packages/yum/plugins.py", line 167, in __init_
_
self.run('config')
File "/usr/lib/python2.6/site-packages/yum/plugins.py", line 184, in run
func(conduitcls(self, self.base, conf, **kwargs))
File "/usr/lib/yum-plugins/downloadonly.py", line 27, in config_hook
default=False, help="don't update, just download")
File "/usr/lib64/python2.6/optparse.py", line 1020, in add_option
self._check_conflict(option)
File "/usr/lib64/python2.6/optparse.py", line 995, in _check_conflict
option)
optparse.OptionConflictError: option --downloadonly: conflicting option string
(s): --downloadonly
なんだか見慣れないオプションがある。 --downloadonly
?
downloadonly オプション
パッケージをインストールせずにダウンロードだけを行うには、yum の "downloadonly" プラグインまたは yumdownloader ユーティリティを使用する二つの方法があります。
まさにこれっぽい。
/etc/yum/pluginconf.d/downloadonly.conf
が設定ファイルなので、 enabled=0
にすればOK
$ cat /etc/yum/pluginconf.d/downloadonly.conf
[main]
enabled=0
再度実行
$ sudo yum update wget
[sudo] password for user:
読み込んだプラグイン:fastestmirror, security
...
downloadonly
外れてますね。よかった。
これ、あらかじめ yum-plugin-downloadonly
をインストールしないと使えない機能のようだ。
恐らく不必要なパッケージのインストールを防ぎたかったんだろうけど、例えば脆弱性対応等で yum update
が必要な場合もあるので、予め知っておきたかった(遠い目