FreeBSD 5.4R へのアップグレード
学校が感謝祭の影響ですっかり休暇モードに入ったため, このすきに自宅のサーバー (FreeBSD INSIDE) をしっかりメンテすることにした. このサーバーは, このMovable Typeを動かしたり, ファイルサーバー, 家計簿を管理するDBサーバーをやっていたりと大黒柱となっている.
普段はCD/DVDにISOイメージを焼き付けて, ゼロから再インストールしていたのであるが, そんなことをしなくても Linux で apt-install distupgrade に相当する(?)方法を試してみた.
手順としては
1) ソースの取得 (CVS)
2) システムを再構築
3) カーネルを再構築・インストール
4) 再起動
5) システムをインストール
6) 設定ファイルの更新
となる.
1. ソースの取得 (CVS)
CVSupでソースを取得するために, 設定ファイル cvsup-stable を /usr/src へコピーしなくてはならない.
# cp /usr/share/examples/cvsup/stable-supfile /usr/src
そして cvsup-stable ファイルを編集する (以下は編集する箇所のみ抜粋).
default host=cvsup1.FreeBSD.org ← CVSサーバーの選択 default base=/var/db default prefix=/usr default release=cvs tag=RELENG_5_4 src-all ports-all tag=. doc-all tag=.
CVSup についての詳細は "http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html (FreeBSD HandbookのA.5) に書かれている.
Primary Mirror は cvsup[1-16].FreeBSD.org, 日本のMirrorだとcvsup.jp.FreeBSD.org, cvsup[2-6].jp.FreeBSD.org が使えるようである.
いよいよ, ソースの取得を実行する.
# cd /usr/src # cvsup stable-supfile
2. システムを再構築
システムを再構築する.これには膨大な時間がかかる. このマシンはPentiumIII 1GHz + 512MBメモリという随分と古いスペックであるが(けど充分な性能), make buildworldには2時間程度は費す.
# cd /usr/src # make buildworld
3. カーネルを再構築・インストール
以下の手順で, GENERIC・カーネルが構築される.
# make buildkernel
そして, インストールする.
# make installkernel
5. システムをインストール
それでは, システムをインストールしてみる.
# make installworld
6. 設定ファイルの更新
mergemasterというコマンドがある.
これで設定ファイルを更新 (patchをあてる) してくれる.
# mergemaster
詳細: MERGEMASTER(8) href="http://www.freebsd.org/cgi/man.cgi?query=mergemaster&sektion=8