Scientific Linuxは基本的にメジャーバージョンのEOLまでアップデートが来るのでマイナーバージョンの更新は必要ないのですが、どうしてもやりたい場合に参考になるかもしれないメモです。
方法はいくつかあるのですが、アップグレードを最短時間で済ませるため、ISOイメージを使ってアップグレードする方法を用います。具体的な手順は以下。
【手順】SL5という名前のScientific Linux 5.5の仮想マシンを同5.6に更新
1.VMをシャットダウン
2.SL5のクローンを作成(VMの名前はSL5-56)
- 失敗した時のためにバックアップをとる(重要!)
3.SL5-56のVMに下記設定をする
- Boot Options = 起動デバイスをCD-ROMに変更
- CDROM =Scientific Linux 5.6のisoイメージに接続
4.SL5-56のVMを起動、アップグレードするを選んで続行
5.インストールが終わったら[再起動]ボタンを押す
- 途中で「ブートできない」というエラーが出るので強制シャットダウン
6.SL5-56のVMに下記設定をする
- Boot Options = 起動デバイスをハードディスクに変更
- CDROM =Scientific Linux 5.6のisoイメージを切断
7.SL5-56のVMを起動
- 初回正常に起動しない場合がありますので、起動しないなら強制シャットダウンをしてサイド起動し直し
8.SL5-56のVMが起動したらIPを設定し直す。
- クローン元のマシンのIPが、以下のファイルに設定が残っているのでそれを元にIPを再設定した後、bakファイルを削除。
/etc/sysconfig/network-scripts/ifcfg-eth0.bak
/etc/sysconfig/networking/devices/ifcfg-eth0.bak
9.networkサービスを再起動
# service network restart
sl...repo.rpmnew = 新しいほう
sl...repo =前のバージョン
なので、古いものを捨ててrpmnewの方をリネームするか、古いほうのパスレポジトリのURLを変更する(例 55->56)。変更したらdiffをとって、間違いがないことを確認。
11.パッケージキャッシュのクリアと更新
最後にパッケージのアップデートを行います。
アップデート前にパッケージのキャッシュをクリアします。
こんな感じです。今回はScientific Linux 5のマイナーバージョンアップグレードについて書きましたが、Scientific Linux 6のマイナーバージョンアップグレードも同様の手順で可能です。
長々と書いて、何が言いたいのかと言うと...仮想化するとラクですよってことですね。