FreeBSD - 再構築でSTABLEへ
- はじめに
- CVSupサーバからリポジトリを取得したFreeBSDの再構築について解説します。
ここではFreeBSD 4.7-RELEASEを4.7-STABLEへ上げる例を取り上げていますが、
他のバージョンの扱いについても基本作業は同じです。
- 用意するもの
- cvsup-16.1e.tgz
http://people.freebsd.org/~jdp/s1g/
- cvsupのインストール
% su
# pkg_add cvsup-16.1e.tgz
- supfileの作成
# vi /usr/share/examples/cvsup/my-supfile
/usr/share/example/cvsup/ディレクトリ内に各リポジトリのサンプルファイルがありますので
stable-supfileを参考にしながら取得したいリポジトリに合わせてsupfileを作成します。
4-STABLEリポジトリの取得は「tag=RELENG_4」と指定し、のCURRENTリポジトリの取得は「tag=.」とします。
*default host=cvsup.jp.freebsd.org
*default base=/usr
*default prefix=/usr
*default release=cvs tag=RELENG_4
*default delete use-rel-suffix
src-all
src-crypto
src-eBones
src-secure
src-sys-crypto
- リポジトリの取得
# cvsup /usr/share/examples/cvsup/my-supfile
- ユーザーランド&カーネルの再構築〜新カーネルのインストール
- 過去に再構築を行った場合は、その際に作成されたファイルを削除してから再構築します。
カーネルのインストールまでが完了したらシングルユーザモードへ移行します。
# chflags -R noschg /usr/obj/usr && rm -r /usr/obj/usr
# cd /usr/src
# make -j 6 buildworld && make buildkernel
# make installkernel
- シングルユーザーモードへの移行
# shutdown now
# fsck -p
# mount -u /
# mount -a -t ufs
# swapon -a
- ユーザーランドのインストール
- /etcファイルの差分修正
- 再起動
最後に再起動して「uname -r」でバージョンアップが確認出来たら終了です。
# shutdown -r now