Oracle Linux 6.4サーバーをSpacewalkサーバーに登録されているOracle Linux 6.8に更新しました。ところで、アップデート後、yumコマンドはサーバー上で動作しません。
[root@j4server tmp]# yum update
Loaded plugins: aliases, changelog, kabi, presto, refresh-packagekit, rhnplugin, security, tmprepo, verify,
: versionlock
Traceback (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 <lambda>
conf = property(fget=lambda self: self._getConfig(),
File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 363, in _getConfig
self.plugins.run('init')
File "/usr/lib/python2.6/site-packages/yum/plugins.py", line 184, in run
func(conduitcls(self, self.base, conf, **kwargs))
File "/usr/share/yum-plugins/rhnplugin.py", line 115, in init_hook
login_info = up2dateAuth.getLoginInfo()
File "/usr/share/rhn/up2date_client/up2dateAuth.py", line 219, in getLoginInfo
login()
File "/usr/share/rhn/up2date_client/up2dateAuth.py", line 167, in login
if readCachedLogin():
File "/usr/share/rhn/up2date_client/up2dateAuth.py", line 133, in readCachedLogin
expireTime = float(li['X-RHN-Auth-Expiration'])
KeyError: 'X-RHN-Auth-Expiration'
この出力が発生します。 rhn-pluginを無効にしようとすると、yumコマンドが機能してspacewalkにパッケージを一覧表示しますが、推測したようにインストールが失敗します。
この状況についてどんな考えがありますか?助けてくれてありがとう!
答え1
解決策を見つけて、他の人が同じ状況に直面する場合に備えて、ここに投稿します。この失敗は、yum updateコマンドを使用してspacewalkを介してOracle Linuxサーバーを更新すると、yum updateがサーバーのspacewalkサポートrhnプラグインをULNサポートプラグインに置き換えるために発生します。
Oracle Linuxサーバーに「RHEL 6.8」ISOをインストールした後、「yum wipe up2date」および「yum wipe pirut」を使用してup2dateパッケージを消去しました。このisoをローカルリポジトリとして追加した後。 「yum install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin」を使用してrhnツールをインストールし、ローカルストレージファイルを削除しました。今、すべてがうまくいきます!
答え2
同じエラーが発生しますが、おそらく異なる理由が原因である可能性があります。 SpacewalkサーバーにOracle Linux 6.7を登録しましたが、spacewalkパッケージを最初に更新することを無視しました。多くの研究で問題があること以外は多くのことが見つかりませんでした。 (私はDNNDのソリューションを試しましたが、rhnはyumを取得しました。以下のコマンドの1つは彼のソリューションで動作します)
Pythonスクリプトには既知のバグがあります。 3つのインスタンスを編集して/usr/share/rhn/up2date_client/up2dateAuth.py
に:X-RHN-Auth-Expiration
変更しますX-RHN-Auth-Expire-Offset
。
DNNDなどのLinux ISOを使用するか、最新のリポジトリではrhnプラグインを無効にしてyumを使用します。
yum --disableplugin=rhnplugin -y install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin
答え3
ここに簡単な修正があります。rhnreg
Spacewalk / redhat衛星にクライアントを登録するために複数のサーバーで同時にコマンドを実行すると、この問題が発生することがわかりました。たとえば、4つのサーバーでこのコマンドを実行しましたが、1つだけが正常に登録されました。
私のサーバーの3つで上記のエラーが発生します。問題を解決するために私がしたことは次のとおりです。
現在のup2dateAuth.py
ファイルをバックアップしました。
cp /usr/share/rhn/up2date_client/up2dateAuth.py /usr/share/rhn/up2date_client/up2dateAuth.py_`date +%m_%d_%Y`
scp
Spacewalkサーバーに正常に登録された最初のサーバーでこれを実行しました。
scp /usr/share/rhn/up2date_client/up2dateAuth.py root@server2:/usr/share/rhn/up2date_client/
ls -lrth /usr/share/rhn/up2date_client/up2dateAuth.py*
走る
yum repolist
rhnreg_ks --sslCACert=/usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT --serverUrl=https://myspacewalkserver-corp.com/XMLRPC --activationkey=1-oraclelinux6-x86_64 --force
yum repolist (it work like a charm)
PS:rhnregコマンドを実行する前にcd /etc/yum.repos.d/を削除することを忘れないでください。それ以外の場合は別のエラーが発生します。
Oracle Linux Yum Serverリポジトリ構成ファイルからSpacewalkクライアント・リポジトリへのアクセスを無効にするか、/etc/yum.repos.d/spacewalk26-client.repoを削除します。