[CentOS] 理由不明だがyumが失敗するときの対処方法

もともとは使えていたyumが、ちょっと使おうとしたらエラー。
なんだかよくわからないけれどもyum installとやろうとするとエラー。そして、インストールできないという状況になりました。そこで、試行錯誤した方法をまとめておきます。

ちなみに、私が遭遇したパターンは、yumのレポジトリのURLが古くなって404 not foundになっていたり、ネットワークが遅くてタイムアウトだったり、そういった問題に関係していたような気がしますが、実際のところ明確には何が悪かったのか、そして、どうして解決したのかがよくわかってません。

そういう意味で、このエントリはあくまで試行錯誤の結果です。

とりあえずclean

とりあえず、既存の一時設定などに問題がある可能性があるので、不要なデータを削除してまっさらにしてからyumをやり直してみるってのがまずあります。

メタデータだけcleanするなら以下。

# yum clean metadata
# yum update

全部ならallって指定もできるみたいです。

# yum clean all
# yum update

実際のところ、cleanというのが何をしているのか(何を削除しているのか)よくわかってないので、また別に機会にそこのところは調べたいと思います…

リポジトリのURLを変える

CentOSのリポジトリのmirrorlistのURLがよくないという話だったので、そこをコメントアウトして、baseurlのところに理研さんのURLを設定。これでタイムアウトとかそういう問題が解決するっぽいです。

# vi /etc/yum.repos.d/CentOS-Base.repo

(viで開く)

[base]
name=CentOS-6.4 - Base
#mirrorlist=http://mirrorlist.centos.org/?release=6.4&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/6.4/os/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/6.4/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=6.4&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/6.4/updates/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/6.4/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

[extras]
name=CentOS-6.4 - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=6.4&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/6.4/extras/$basearch/
baseurl=http://ftp.riken.jp/Linux/centos/6.4/os/$basearch/
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6

(:wqで保存して終了)

おしまい

運良く解決しましたが、次に問題が起こった時は、いよいよyumの仕組みについてしっかり勉強しないといけないかもしれないです。。笑

タイトルとURLをコピーしました