web-dev-qa-db-ja.com

Yumパッケージへの更新/インストールを実行すると、次のエラーが発生します。これを克服するには、どのようなアクションを実行する必要がありますか?

Yumを更新/パッケージにインストールすると、次のエラーが発生します。これを克服するためにどのような行動を取る必要がありますか?

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 267, in user_main
    errcode = main(args)
  File "/usr/share/yum-cli/yummain.py", line 120, in main
    result, resultmsgs = base.doCommands()
  File "/usr/share/yum-cli/cli.py", line 432, in doCommands
    return self.yum_cli_commands[self.basecmd].doCommand(self,     self.basecmd, self.extcmds)
  File "/usr/share/yum-cli/yumcommands.py", line 226, in doCommand
    return base.updatePkgs(extcmds)
  File "/usr/share/yum-cli/cli.py", line 736, in updatePkgs
    if not self.update(pattern=arg):
  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 3687, in update
    obs_tups = self.up.obsoleted_dict.get(installed_pkg.pkgtup, [])
  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 878, in     <lambda>
    up = property(fget=lambda self: self._getUpdates(),
  File "/usr/lib/python2.7/site-packages/yum/__init__.py", line 702, in _getUpdates
    self._up = rpmUtils.updates.Updates(self.rpmdb.simplePkgList(), self.pkgSack.simplePkgList())
  File "/usr/lib/python2.7/site-packages/yum/rpmsack.py", line 489, in simplePkgList
    return self.pkglist
  File "/usr/lib/python2.7/site-packages/yum/rpmsack.py", line 232, in _get_pkglist
    csumpkgtups = self.preloadPackageChecksums(load_packages=False)
  File "/usr/lib/python2.7/site-packages/yum/rpmsack.py", line 966, in     preloadPackageChecksums
    rpmdbv = self.simpleVersion(main_only=True)[0]
  File "/usr/lib/python2.7/site-packages/yum/rpmsack.py", line 1149, in simpleVersion
    self._put_cached_simpleVersion_main(main)
  File "/usr/lib/python2.7/site-packages/yum/rpmsack.py", line 1098, in _put_cached_simpleVersion_main
    os.rename(rpmdbvfname + ".tmp", rpmdbvfname)
OSError: [Errno 5] Input/output error
3
ThinkingMonkey

あなたの状況は、 CentOSの質問 で概説されている状況に似ています。

したがって、ソリューションはおそらく同じです:pythonを再インストールしてからyumを再インストールし、次にyum clean all && yum makecacheを実行してからyum updateを実行します。

3
Nils

重要な部分は最後の行のようです:

OSError: [Errno 5] Input/output error

これは、基盤となるストレージメディア、つまりハードドライブとの間でデータの読み取りまたは書き込みが物理的に失敗したことを示します。

dmesgを実行すると、最後にさらに詳しい診断情報が見つかる場合があります。

この特定のエラーに遭遇するたびに、私はすぐにメディアを疑うようになります。ハードドライブである可能性が高いため、そのSMARTステータスを確認することをお勧めします。例:

smartctl -a /dev/sda

そして、不良セクタがないか確認してください。

badblocks /dev/sda

また、ドライブケーブルがしっかりと接続されていること、および電源装置が十分な電力を供給していることを確認してください。

3
Michael Hampton