CentOS5でyumが壊れた。。。

yumrpmで実験的に色々ライブラリ入れていたら、突然こんなメッセージが...(;3;)

[takakura@cent1 ~]$ sudo yum list
...
dag       :                                                    1/6611Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 94, in main
    result, resultmsgs = base.doCommands()
  File "/usr/share/yum-cli/cli.py", line 381, in doCommands
    return self.yum_cli_commands[self.basecmd].doCommand(self, self.basecmd, self.extcmds)
  File "/usr/share/yum-cli/yumcommands.py", line 150, in doCommand
    return base.updatePkgs(extcmds)
  File "/usr/share/yum-cli/cli.py", line 672, in updatePkgs
    self.doRepoSetup()
  File "/usr/share/yum-cli/cli.py", line 109, in doRepoSetup
    self.doSackSetup(thisrepo=thisrepo)
  File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 338, in doSackSetup
    self.repos.populateSack(which=repos)
  File "/usr/lib/python2.4/site-packages/yum/repos.py", line 200, in populateSack
    sack.populate(repo, with, callback, cacheonly)
  File "/usr/lib/python2.4/site-packages/yum/yumRepo.py", line 91, in populate
    dobj = repo.cacheHandler.getPrimary(xml, csum)
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 100, in getPrimary
    return self._getbase(location, checksum, 'primary')
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 93, in _getbase
    self.updateSqliteCache(db, parser, checksum, metadatatype)
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 368, in updateSqliteCache
    self.addPrimary(pkgId, package, cur)
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 257, in addPrimary
    pkgKey = self.insertHash('packages', PackageToDBAdapter(package), cur)
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 204, in insertHash
    values = hash.values()
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 459, in values
    out.append(self[k])
  File "/usr/lib/python2.4/site-packages/yum/sqlitecache.py", line 451, in __getitem__
    return self._pkg[self.NAME_MAPS.get(k, k)]
  File "/usr/lib/python2.4/site-packages/yum/mdparser.py", line 69, in __getitem__
    return self._p[k]
KeyError: 'epoch'

で、調べてみると一回エラーが出ているdagリポジトリを使用しなければOKっぽい。
disablerepoオプションで可能。

[takakura@cent1 ~]$ sudo yum --disablerepo=dag list

 
うまく再更新できたみたいなので、再度オプションを付けずに実行。

[takakura@cent1 ~]$ sudo yum list
Loading "fastestmirror" plugin
Loading "installonlyn" plugin
Setting up repositories
Loading mirror speeds from cached hostfile
...

ふぅ、無事復活。。。