Fedora Core 4でしばらく間をあけてyumを使ってupdateしようとしたら、エラーが出て更新できない状況になったので対処法を書いておきます。
よくあるパターンとして。
1)yum自体が古い(まずyumだけupdateする)
2)更新先のURLが古い
3)configがおかしい
とかありますが、今回はなんか謎だったのでいろいろ試しました。
------error message------
Traceback (most recent call last):
File "/usr/bin/yum", line 27, in ?
yummain.main(sys.argv[1:])
File "/usr/share/yum-cli/yummain.py", line 170, in main
base.doTransaction()
File "/usr/share/yum-cli/cli.py", line 651, in doTransaction
problems = self.downloadPkgs(downloadpkgs)
File "__init__.py", line 605, in downloadPkgs
File "repos.py", line 619, in get
File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 414, in urlgrab
return self._mirror_try(func, url, kw)
File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 392, in _mirror_try
mirrorchoice = self._get_mirror(gr)
File "/usr/lib/python2.4/site-packages/urlgrabber/mirror.py", line 290, in _get_mirror
return gr.mirrors[gr._next]
IndexError: list index out of range
------error message------
【対応1】まず、yumだけupdateしてみた。
# yum update yum
アップデートは正常に終わるも、まだエラーが出る。
【対応2】yum.pidとかyumのプロセスが残っているんじゃないの?という情報があり、試してみた。
1)psコマンドでyumのプロセスが上がっていないか確認。あがっていればkillコマンドで該当プロセスを落とす。
# ps -ef | grep yum
2)/var/run/yum.pid ファイルを削除。
# rm /var/run/yum.pid
まだ、エラーが出る。
【対応3】環境変数LANGをCにするとイイぞ!という情報があったので試してみた。
http://okwave.jp/kotaeru.php3?q=1554369
http://bbs.fedora.jp/read.php?FID=2&TID=695
# export LANG=C
まだ、エラーが出る。
【対応4】pythonのアップデート
吐き出されているエラーがpythonのプログラムでindex範囲外のindex番号を指定しているというエラーらしいので、pythonをアップデートしてみた。
が。。。pythonは最新バージョンだった(T-T
【対応5】yumの設定をダウンロード
http://fedorafaq.yanbaru.dyndns.org/#yumconf
# cd /etc
# rm -f yum.conf
# wget http://www.fedorafaq.org/samples/yum.conf
【対応6】yumのリポジトリを消去
yumのリポジトリをいったんキレイにして試してみた。
# yum clean all
まだ、エラーが出る。
が、ちょっと変わった。
------error message------
Error Downloading Packages:
gtk2 - 2.6.10-2.fc4.4.i386: failure: gtk2-2.6.10-2.fc4.4.i386.rpm from updates-released: [Errno 256] No more mirrors to try.
tetex-fonts - 3.0-6.FC4.i386: failure: tetex-fonts-3.0-6.FC4.i386.rpm from updates-released: [Errno 256] No more mirrors to try.
------error message------
rpmが見つからない、というので、wgetで直接/var/cache/yum/updates-released/packages/へ配置した。
【対応7】rpmのDBのリビルド
rpmのDBをリビルドしてみた。
# rpm --rebuilddb
【対応8】再度yum update
全パッケージを取得していたので、正常に完了した。
【結論】
まず下記2点を確認
・yumのパッケージが古くないか?
・yumのconfigは正しいか?
yumのパッケージを検索するサイトの一覧はFedoraCore公式サイトのミラーリストにあります。
検索するサイトを変更する方法は@ITのLinux Tips 国内のミラーサイトでFedora Extrasを使うには に載っているので参考にしてください。
そしてyum、rpmまわりをクリーンに。
・yum clean all
・rpm --rebuilddb
パッケージをダウンロードできない場合は直接wgetで持ってこよう。
パッケージさえあればrpmコマンドでもupdateできるし。
結局アップデートさえできればyumじゃなくてaptでもいいんです(゚∀゚)
2005年11月19日
この記事へのコメント
コメントを書く
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/9535977
この記事へのトラックバック
[ハックス][linux]yumを実行するとエラーになってしまう件
Excerpt: fedora 7を自宅サーバ兼クライアントとして使っています。 トリガーはわからないのですが、突然yumを実行すると下記のエラーが出るようになりました。 エラーの内容 [root@localhost...
Weblog: システムとは何か?
Tracked: 2007-11-19 22:46
負けても勝ち組w
Excerpt: てぃん★てぃんシゴきまくってもらって5諭吉くれるってどんだけww パチ屋行く前の軍資金集めの定番になってしまったw
Weblog: ドンパッチ
Tracked: 2008-02-16 17:28
http://blog.seesaa.jp/tb/9535977
この記事へのトラックバック
[ハックス][linux]yumを実行するとエラーになってしまう件
Excerpt: fedora 7を自宅サーバ兼クライアントとして使っています。 トリガーはわからないのですが、突然yumを実行すると下記のエラーが出るようになりました。 エラーの内容 [root@localhost...
Weblog: システムとは何か?
Tracked: 2007-11-19 22:46
負けても勝ち組w
Excerpt: てぃん★てぃんシゴきまくってもらって5諭吉くれるってどんだけww パチ屋行く前の軍資金集めの定番になってしまったw
Weblog: ドンパッチ
Tracked: 2008-02-16 17:28


