古いfedoraでyum update/installができない時の対処法

タイトル通りなんですが、
いやそもそもそんな古いfedora使うなって話なのですが、
(実際上記問題を検索するとそういう意見が見られます)

サポートが切れているfedoraでyum updateやyum installをしようとするとできないことがあります。
その対処法をまとめました。

まずレポジトリファイルをhttpに直してみます。
/etc/yum.repo.d/
にある
fedora.repo
fedora-update.repo
fedora-update-tenting.repo
を編集し、
「https」となっている部分を全て「http」に直します(sを消します)。

yum repolistとしてみましょう。直りましたでしょうか?


もしこれでも途中で
http://<url><長い英数文字列>-primary.sqlite.bz2
のダウンロードで「ミラーがありません」などと言われた場合、
さらに以下を実行します。
端的に言うと、yumのキャッシュファイルの場所に、ダウンロードが失敗しているファイルを直接置いてあげるだけです。

ダウンロードでエラーとなっているurlをコピペして別のブラウザなどから直接ダウンロードします。
それを以下yumのキャッシュディレクトリに置きます。
ここで(A)=i386 または x86_64、(B)=fedoraのバージョン番号
/var/cache/yum/(A)/(B)/fedora/
(例えば、fedora16の64bit版なら /var/cache/yum/x86_64/16/fedora/ )

再度yum repolistとしてみましょう。
まだ「ミラーがないよ」エラーになりますね。
fedoraの方には件数が出ますが、fedora-updateはまだ0件です。
同様にダウンロードでエラーとなっているurlをコピペして別のブラウザなどから直接ダウンロードします。
今度はそれを以下yumのキャッシュディレクトリに置きます。
/var/cache/yum/(A)/(B)/update/

これでyum repolistとすると問題なくできると思います。

もっと綺麗な対処方法はあるかもですが、
とりあえずこれで回避できます。

Comments