前回の記事で、CentOS 5.0 について書いたが、CentOS 4.4 からアップグレードしたので、それについてのメモ。
(1) yum を使ってアップグレード (ただし失敗)
まず、yum を使ってアップグレードを試みたが、カーネルの依存関係の問題で conflict を起こし、どうしても解消できなかった。
※参考:「
Fedora Core 5 -> Fedora Core 6 アップグレード」
以下、yum で試してうまくいかなかった作業状況について書いておく。
まず、現在の CentOS 4.4 のパッケージを最新のものにする。
# yum update次に、OS のアップグレードを行う。
アップグレード用の RPM パッケージは、たとえば以下の URL からインストールできる。
# rpm -Uvh \
http://mirror.centos.org/centos/5.0/os/i386/CentOS/centos-release-5-0.0.el5.centos.2.i386.rpm \
http://mirror.centos.org/centos/5.0/os/i386/CentOS/centos-release-notes-5.0.0-2.i386.rpmこれで、yum が 5.0 のレポジトリを見に行くようになる。
そして、yum のキャッシュをクリアし、アップグレードする。
# yum clean all
# yum upgradeupgrade を実行すると、大量のパッケージをダウンロードしインストールが開始する。
Fedora Core の時と同様、エラーが表示されて終了する。たとえば、
Error: Missing Dependency: libnewt.so.0.51 is needed by package crypto-utils
Error: Missing Dependency: libdb.so.2 is needed by package gnome-libs
Error: Missing Dependency: libnewt.so.0.51 is needed by package newt-perl
Error: Missing Dependency: libttf.so.2 is needed by package VFlib2
Error: Missing Dependency: libdb.so.2(GLIBC_2.0) is needed by package gnome-libs
Error: Unable to satisfy dependencies
Error: Package gnome-libs needs libdb.so.2, this is not available.
Error: Package VFlib2 needs libttf.so.2, this is not available.
Error: Package initscripts needs kernel < 2.6.12, this is not available.
Error: Package autofs needs kernel < 2.6.17, this is not available.
Error: Package kudzu needs kernel < 2.6.13, this is not available.
Error: Package hal needs kernel < 2.6.17, this is not available.
Error: Package gnome-libs needs libdb.so.2(GLIBC_2.0), this is not available.
Error: Package newt-perl needs libnewt.so.0.51, this is not available.
Error: Package lksctp-tools needs kernel < 2.6.10, this is not available.
Error: Package crypto-utils needs libnewt.so.0.51, this is not available.など。
yum に -t オプションをつけて実行してみたが現象は変わらないので、エラーの原因となっているパッケージを削除してみる。
※このとき、依存関係をたどってよけいなパッケージを削除されないように、--nodeps オプションをつける。
# rpm -ev --nodeps gnome-libs VFlib2 initscripts autofs kudzu hal newt-perl lksctp-tools crypto-utilsそして、あらためてアップグレードする。
# yum upgradeそれでもしつこく、
Error: initscripts conflicts with kernel < 2.6.12
Error: hal conflicts with kernel < 2.6.17
Error: kudzu conflicts with kernel < 2.6.13
Error: lksctp-tools conflicts with kernel < 2.6.10というエラーが出る。
いずれも削除してあるパッケージだが、きっと依存関係から復活してきて悪さをしているのだと思う。
すでに削除してあるので yum erase はできないので、インストールしてから yum erase する。(もっといい方法はないのか?)
# rpm -ivh \
http://mirror.centos.org/centos/4.4/os/i386/CentOS/RPMS/initscripts-7.93.25.EL-1.centos4.i386.rpm \
http://mirror.centos.org/centos/4.4/os/i386/CentOS/RPMS/hal-0.4.2-4.EL4.i386.rpm \
http://mirror.centos.org/centos/4.4/os/i386/CentOS/RPMS/kudzu-1.1.95.15-1.i386.rpm \ http://mirror.centos.org/centos/4.4/os/i386/CentOS/RPMS/lksctp-tools-1.0.2-6.4E.1.i386.rpmyum erase initscripts hal kudzu lksctp-tools
こうすると、やはり yum などすべて削除しようとする。。。
kernel のみアップグレードしようとしても無理。
以上、いろいろ試みたがうまくいかないのであきらめた。
【2008年10月16日追加】
yum でのアップグレードにまんまと成功している人がいました。
『yumを使ってCentOS 4.7から5.2にアップグレードしてみた』
http://www.greedy.jp/blog/nowhereman/200809/16/170317(2) CD-ROM からアップグレード
そこで、CD-ROM からアップグレードインストールする。
やりかたは簡単で、CD-ROM の ISO イメージをダウンロードするなどしてインストール CD を入手し、そこからリブートするとインストールが開始する。
途中、新規インストールするかアップグレードするかを選択できる。
OS のアップグレードは問題なく完了したので、パッケージをアップデートする。
# yum updateすると、
Error: Missing Dependency: php = 4.3.9-3.22.4 is needed by package php-pearというエラーが出てしまう。そこで、php-pear を削除
# yum erase php-pearあらためてアップデートする。
# yum updateこれで完了。
(3) おまけ
この記事にトラックバックをつけてくださっている「PC/NETのetcetra/2007-08-25」は、CentOS 4 から 5 へのアップグレードの総まとめになっています。
ぜひ、そちらをご覧ください。
posted by K/I at 16:12
| 東京 ☀
|
Comment(0)
|
TrackBack(2)
|
日記
|

|