遠く(広島)にハウジングしてあるCentOS4なサーバーを5にアップグレードしたいのですが、いちいち機材を送り返してもらうのも面倒なので、遠隔でできない事か、と思っていたのですが、
Yum Install CentOS-5 (Upgrade from CentOS 4.4 to CentOS 5)
という記事を見つけたので、これを元にやってみました。
まずは失敗してもいいように、手元のParallels上のCentOS4.6を5.2に変えてみます。
普段ほとんど起動していないので、CentOS4.6/kernel-2.6.9-55.0.9.plus.c4 なちょっと古い環境です。
流れとしてはこんな感じ。
- centos-release-5のインストール
- CentOS-Base.repoをリネーム
- kernelとnfs-utilsをリムーブ
- yumのキャッシュをクリア
- rpmをアップグレード
- reboot
実際の手順。
- centos-release-5のインストール
rpmコマンドでインストールします。
rpm -Uvh http://ftp.iij.ad.jp/pub/linux/centos/5.2/os/i386/CentOS/centos-release-5-2.el5.centos.i386.rpm http://ftp.iij.ad.jp/pub/linux/centos/5.2/os/i386/CentOS/centos-release-notes-5.2-2.i386.rpm
バージョンは随時上がっているので、もしNot Foundが返って来た場合は適宜入れ替えて下さい。
- CentOS-Base.repoをリネーム
centos-release-5をインストールすると、CentOS-Base.repo.rpmnewが生成されているので、入れ替えます。
cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.CentOS4
mv CentOS-Base.repo.rpmnew CentOS-Base.repo - kernelとnfs-utilsをリムーブ
自分の環境ではupgradeした時にconfrictを起こしていたので、それぞれ rpm -e します。
マルチCPU環境ではkernel-smpも消しましょう。
前述のURLの方の環境ではhalも削除していましたが、僕の環境では削除しなくても大丈夫でした。rpm -qa|grep kernelして出て来たkernelは全て削除します。
rpm -e –nodeps –justdb kernel-2.6.9-55.0.9.plus.c4 kernel-2.6.9-42.0.8.plus.c4 kernel-2.6.9-55.0.2.EL kernel-2.6.9-55.0.12.plus.c4 kernel-2.6.9-42.0.3.EL kernel-2.6.9-42.0.8.EL kernel-2.6.9-55.0.2.plus.c4 kernel-2.6.9-55.0.6.plus.c4 kernel-2.6.9-67.0.20.plus.c4 kernel-2.6.9-67.0.7.plus.c4 kernel-2.6.9-42.0.3.plus.c4 kernel-2.6.9-42.0.10.plus.c4 kernel-2.6.9-55.EL kernel-2.6.9-55.plus.c4 kernel-2.6.9-42.EL
rpm -e –nodeps –justdb nfs-utils - yum のキャッシュをクリア
yum clean all
- rpmをアップグレード
yum upgrade
環境にもよりますが30分程度掛かります。
- reboot
rebootの前に /etc/grub.conf を確認しておきます。2008/11/02時点での最新カーネルは 2.6-18-92.1.13.el5 です。
title CentOS (2.6.18-92.1.13.el5)
root (hd0,0)
kernel /vmlinuz-2.6.18-92.1.13.el5 ro root=/dev/VolGroup00/LogVol00
initrd /initrd-2.6.18-92.1.13.el5.img↑これが最初に来ていて、default=0だったら大丈夫。
これでrebootしてみます。
無事、CentOS5が起動しましたね。
OS自体は起動しましたが、パッケージによっては大きくバージョンアップしているものがありますので、設定を修正する必要がある場合もあります。。
その辺りはまた追々。


最近のコメント