提供: すだちWiki
移動先: 案内検索

CentOS5.3でyumが無くなった

毎日サーバーから

WARNING: Ignoring deprecated option --log-verbose
/etc/cron.daily/yum.cron

とエラーメールが届くので確認したところ、yum が無くなっている。 これは、そのときの記録です。

まず依存関係のあるファイルをインストール。(今回は必要ありませんでしたが記録のために残す。)

wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/python-elementtree-1.2.6-5.i386.rpm
rpm -ivh python-elementtree-1.2.6-5.i386.rpm

wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/python-iniparse-0.2.3-4.el5.noarch.rpm
rpm -ivh python-iniparse-0.2.3-4.el5.noarch.rpm
 
wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/python-sqlite-1.1.7-1.2.1.i386.rpm
rpm -ivh python-sqlite-1.1.7-1.2.1.i386.rpm

wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/python-urlgrabber-3.1.0-5.el5.noarch.rpm
wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/m2crypto-0.16-6.el5.3.i386.rpm

rpm -ivh m2crypto-0.16-6.el5.3.i386.rpm
rpm -ivh python-urlgrabber-3.1.0-5.el5.noarch.rpm

wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/yum-metadata-parser-1.1.2-2.el5.i386.rpm
rpm -ivh yum-metadata-parser-1.1.2-2.el5.i386.rpm

続いてyum本体のインストール。

wget ftp://ftp.riken.jp/Linux/centos/5.3/os/i386/CentOS/yum-3.2.19-18.el5.centos.noarch.rpm
rpm -ivh yum-3.2.19-18.el5.centos.noarch.rpm

エラーが出てインストールできない。以下、強制インストール

rpm -i --nodeps yum-3.2.19-18.el5.centos.noarch.rpm ;パッケージの依存関係を無視してインストール

で完了。 早々  yum -y update 実行。以下のエラーが出る。

File "/usr/bin/yum", line 29, in ?
   yummain.user_main(sys.argv[1:], exit_code=True)
 File "/usr/share/yum-cli/yummain.py", line 229, in user_main
   errcode = main(args)
 File "/usr/share/yum-cli/yummain.py", line 145, in main
   (result, resultmsgs) = base.buildTransaction() 
 File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 647, in buildTransaction
   (rescode, restring) = self.resolveDeps()
 File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 704, in resolveDeps
   for po, dep in self._checkFileRequires():
 File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 939, in _checkFileRequires
   if not self.tsInfo.getOldProvides(filename) and not self.tsInfo.getNewProvides(filename):
 File "/usr/lib/python2.4/site-packages/yum/transactioninfo.py", line 414, in getNewProvides
   for pkg, hits in self.pkgSack.getProvides(name, flag, version).iteritems():
 File "/usr/lib/python2.4/site-packages/yum/packageSack.py", line 300, in getProvides
   return self._computeAggregateDictResult("getProvides", name, flags, version)
 File "/usr/lib/python2.4/site-packages/yum/packageSack.py", line 470, in _computeAggregateDictResult

データベースの再構築を行う。

$ sudo yum clean all
$ sudo rpm --rebuilddb

正常に動いてくれるようになったので完了。

続いてyum-cronインストール

# yum -y install yum-cron
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.riken.jp
 * updates: rsync.atworks.co.jp
 * addons: ftp.riken.jp
 * extras: ftp.riken.jp
Setting up Install Process
Parsing package install arguments
No package yum-cron available.
Nothing to do

エラーが出てインストール出来ない。サーバーにファイルが無いので旧いバージョンをインストールする。

wget ftp://ftp.riken.jp/Linux/centos/5.2/os/i386/CentOS/yum-downloadonly-1.1.10-9.el5.centos.noarch.rpm
wget ftp://ftp.riken.jp/Linux/centos/5.2/os/i386/CentOS/yum-cron-0.6-1.el5.centos.noarch.rpm
rpm -ivh yum-downloadonly-1.1.10-9.el5.centos.noarch.rpm
rpm -ivh yum-cron-0.6-1.el5.centos.noarch.rpm

これで無事完了。