差分
このページの2つのバージョン間の差分を表示します。
blog:2013:2013-11-25 [2013-11-26 19:38] Decomo |
blog:2013:2013-11-25 [2015-01-06 11:51] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ====== FreeBSD 9.2-RELEASEへのfreebsd-updateに失敗してmake buildworldする羽目になった ====== | ||
- | < | ||
- | |||
- | ===== 経緯 ===== | ||
- | - 家鯖(9.0-RELEASE)で88SE9230なSATAカードとZFSのLZ4圧縮を使いたい!! | ||
- | - 9.2-RELEASEに更新しようず。 | ||
- | - 2度目のfreebsd-update installの途中で間違ってsshの接続を切る。 | ||
- | - とりあえず動いてはいるけど、何か気持ち悪い。freebsd-update installしても「更新は何もない。まずはfetchせよ」とでる。 | ||
- | - freebsd-update rollbackってコマンドがあるぞ→詳しく調べもせずに実行。 | ||
- | - FreeBSDがブートしなくなる。 | ||
- | - シングルユーザーモードで何とか起動。 | ||
- | - freebsd-update -r 9.0-RELEASE upgradeでダウングレードを試してみる。 | ||
- | - cannot open files/.gz: No such file or directory.とか出る。どうみても怪しい。 | ||
- | - ソースから9.2-RELEASEを作れば一番確実?と思い立ちカーネル再構築することに。(←いまここ) | ||
- | |||
- | ===== 手順 ===== | ||
- | |||
- | ==== ソースツリーの更新 ==== | ||
- | svnupを使う。 | ||
- | |||
- | 昔はCVSupやcsupだったが既に非推奨となっており、9.2-RELEASEのソースは最早正しく取得できない。 | ||
- | |||
- | < | ||
- | cd / | ||
- | make install | ||
- | </ | ||
- | |||
- | == 設定ファイルを編集 == | ||
- | <code |h / | ||
- | host=svn0.us-west.freebsd.org | ||
- | branch=base/ | ||
- | </ | ||
- | |||
- | == ソース取得 == | ||
- | 結構時間がかかるのでそのつもりで。 | ||
- | < | ||
- | svnup release -v 2 | ||
- | </ | ||
- | |||
- | ==== ビルド ==== | ||
- | FreeBSDハンドブックを熟読の事。 | ||
- | < | ||
- | cd /usr/src | ||
- | make -j6 buildworld | ||
- | make -j6 buildkernel | ||
- | </ | ||
- | Xeon E3-1260L(2.40GHz)を論理3コア割り当て、2.5インチHDD(750GB/ | ||
- | |||
- | ==== カーネルのインストール ==== | ||
- | < | ||
- | make installkernel | ||
- | </ | ||
- | |||
- | ==== ユーザーランドのインストール ==== | ||
- | |||
- | シングルユーザーモードで再起動する。 | ||
- | |||
- | ルートを読み書き可能状態でマウントしなおす。 | ||
- | < | ||
- | zfs set readonly=off zroot | ||
- | zfs mount -a | ||
- | </ | ||
- | |||
- | BIOSの時計がローカルタイムの場合は時間を調整。 | ||
- | < | ||
- | adjkerntz -i | ||
- | </ | ||
- | |||
- | == 設定ファイルの更新 == | ||
- | |||
- | 念のためバックアップ | ||
- | < | ||
- | cp -Rp /etc /etc.old | ||
- | </ | ||
- | |||
- | マージ | ||
- | < | ||
- | mergemaster -p | ||
- | </ | ||
- | < | ||
- | <!-- | ||
- | *** Displaying differences between ./etc/group and installed version: | ||
- | |||
- | --- / | ||
- | +++ ./etc/group 2013-11-26 15: | ||
- | @@ -1,12 +1,12 @@ | ||
- | -# $FreeBSD: release/ | ||
- | +# $FreeBSD: releng/ | ||
- | # | ||
- | -wheel: | ||
- | +wheel: | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | -mail: | ||
- | +mail:*:6: | ||
- | | ||
- | | ||
- | | ||
- | @@ -30,24 +30,3 @@ | ||
- | | ||
- | | ||
- | | ||
- | -Decomo: | ||
- | -messagebus: | ||
- | -avahi: | ||
- | -avahi-autoipd: | ||
- | -cyrus: | ||
- | -polkit: | ||
- | -haldaemon: | ||
- | -mic: | ||
- | -dovecot: | ||
- | -dovenull: | ||
- | -maildrop: | ||
- | -postfix: | ||
- | -fetchmail: | ||
- | -courier: | ||
- | -test_user: | ||
- | -qmail: | ||
- | -qnofiles: | ||
- | -vchkpw: | ||
- | -yoshimi: | ||
- | -mysql: | ||
- | -redmine: | ||
- | |||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | |||
- | Default is to leave the temporary file to deal with by hand | ||
- | |||
- | How should I deal with this? [Leave it for later] | ||
- | |||
- | / | ||
- | |||
- | |||
- | *** Displaying differences between ./ | ||
- | |||
- | --- / | ||
- | +++ ./ | ||
- | @@ -1,4 +1,4 @@ | ||
- | -# $FreeBSD: release/ | ||
- | +# $FreeBSD: releng/ | ||
- | | ||
- | | ||
- | | ||
- | @@ -30,25 +30,4 @@ | ||
- | | ||
- | | ||
- | | ||
- | -hint.scbus.0.at=" | ||
- | -hint.ada.0.at=" | ||
- | -hint.scbus.1.at=" | ||
- | -hint.ada.1.at=" | ||
- | -hint.scbus.2.at=" | ||
- | -hint.ada.2.at=" | ||
- | -hint.scbus.3.at=" | ||
- | -hint.ada.4.at=" | ||
- | -hint.scbus.5.at=" | ||
- | -hint.ada.6.at=" | ||
- | -hint.scbus.7.at=" | ||
- | -hint.ada.7.at=" | ||
- | -hint.scbus.8.at=" | ||
- | -hint.ada.9.at=" | ||
- | -hint.scbus.10.at=" | ||
- | -hint.ada.10.at=" | ||
- | -hint.scbus.11.at=" | ||
- | -hint.ada.12.at=" | ||
- | -hint.scbus.13.at=" | ||
- | -hint.ada.14.at=" | ||
- | -hint.scbus.15.at=" | ||
- | -hint.ada.15.at=" | ||
- | \ No newline at end of file | ||
- | +hint.wbwd.0.at=" | ||
- | |||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | |||
- | Default is to leave the temporary file to deal with by hand | ||
- | |||
- | How should I deal with this? [Leave it for later] m | ||
- | |||
- | # $FreeBSD: release/ | ||
- | %2 | ||
- | hint.scbus.0.at=" | ||
- | hint.ada.0.at=" | ||
- | hint.scbus.1.at=" | ||
- | hint.ada.1.at=" | ||
- | hint.scbus.2.at=" | ||
- | hint.ada.2.at=" | ||
- | hint.scbus.3.at=" | ||
- | hint.ada.4.at=" | ||
- | hint.scbus.5.at=" | ||
- | hint.ada.6.at=" | ||
- | hint.scbus.7.at=" | ||
- | hint.ada.7.at=" | ||
- | hint.scbus.8.at=" | ||
- | hint.ada.9.at=" | ||
- | hint.scbus.10.at=" | ||
- | hint.ada.10.at=" | ||
- | hint.scbus.11.at=" | ||
- | hint.ada.12.at=" | ||
- | hint.scbus.13.at=" | ||
- | hint.ada.14.at=" | ||
- | hint.scbus.15.at=" | ||
- | hint.ada.15.at=" | ||
- | |||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | Default is to leave the temporary file to deal with by hand | ||
- | |||
- | *** How should I deal with the merged file? [Leave it for later] r | ||
- | # $FreeBSD: release/ | ||
- | %2 | ||
- | hint.scbus.0.at=" | ||
- | hint.ada.0.at=" | ||
- | hint.scbus.1.at=" | ||
- | hint.ada.1.at=" | ||
- | hint.scbus.2.at=" | ||
- | hint.ada.2.at=" | ||
- | hint.scbus.3.at=" | ||
- | hint.ada.4.at=" | ||
- | hint.scbus.5.at=" | ||
- | hint.ada.6.at=" | ||
- | hint.scbus.7.at=" | ||
- | hint.ada.7.at=" | ||
- | hint.scbus.8.at=" | ||
- | hint.ada.9.at=" | ||
- | hint.scbus.10.at=" | ||
- | hint.ada.10.at=" | ||
- | hint.scbus.11.at=" | ||
- | hint.ada.12.at=" | ||
- | hint.scbus.13.at=" | ||
- | hint.ada.14.at=" | ||
- | hint.scbus.15.at=" | ||
- | hint.ada.15.at=" | ||
- | ed: Edit then use both versions, each decorated with a header. | ||
- | eb: Edit then use both versions. | ||
- | el or e1: Edit then use the left version. | ||
- | er or e2: Edit then use the right version. | ||
- | e: Discard both versions then edit a new one. | ||
- | l or 1: Use the left version. | ||
- | r or 2: Use the right version. | ||
- | s: Silently include common lines. | ||
- | v: | ||
- | q: Quit. | ||
- | %eb | ||
- | |||
- | hint.scbus.0.at=" | ||
- | hint.ada.0.at=" | ||
- | hint.scbus.1.at=" | ||
- | hint.ada.1.at=" | ||
- | hint.scbus.2.at=" | ||
- | hint.ada.2.at=" | ||
- | hint.scbus.3.at=" | ||
- | hint.ada.4.at=" | ||
- | hint.scbus.5.at=" | ||
- | hint.ada.6.at=" | ||
- | hint.scbus.7.at=" | ||
- | hint.ada.7.at=" | ||
- | hint.scbus.8.at=" | ||
- | hint.ada.9.at=" | ||
- | hint.scbus.10.at=" | ||
- | hint.ada.10.at=" | ||
- | hint.scbus.11.at=" | ||
- | hint.ada.12.at=" | ||
- | hint.scbus.13.at=" | ||
- | hint.ada.14.at=" | ||
- | hint.scbus.15.at=" | ||
- | hint.ada.15.at=" | ||
- | hint.wbwd.0.at=" | ||
- | |||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | ~ | ||
- | :q | ||
- | |||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | Default is to leave the temporary file to deal with by hand | ||
- | |||
- | *** How should I deal with the merged file? [Leave it for later] v | ||
- | # $FreeBSD: releng/ | ||
- | hint.fdc.0.at=" | ||
- | hint.fdc.0.port=" | ||
- | hint.fdc.0.irq=" | ||
- | hint.fdc.0.drq=" | ||
- | hint.fd.0.at=" | ||
- | hint.fd.0.drive=" | ||
- | hint.fd.1.at=" | ||
- | hint.fd.1.drive=" | ||
- | hint.atkbdc.0.at=" | ||
- | hint.atkbdc.0.port=" | ||
- | hint.atkbd.0.at=" | ||
- | hint.atkbd.0.irq=" | ||
- | hint.psm.0.at=" | ||
- | hint.psm.0.irq=" | ||
- | hint.sc.0.at=" | ||
- | hint.sc.0.flags=" | ||
- | hint.uart.0.at=" | ||
- | hint.uart.0.port=" | ||
- | hint.uart.0.flags=" | ||
- | hint.uart.0.irq=" | ||
- | hint.uart.1.at=" | ||
- | hint.uart.1.port=" | ||
- | hint.uart.1.irq=" | ||
- | hint.ppc.0.at=" | ||
- | hint.ppc.0.irq=" | ||
- | hint.atrtc.0.at=" | ||
- | hint.atrtc.0.port=" | ||
- | hint.atrtc.0.irq=" | ||
- | hint.attimer.0.at=" | ||
- | hint.attimer.0.port=" | ||
- | hint.attimer.0.irq=" | ||
- | hint.scbus.0.at=" | ||
- | hint.ada.0.at=" | ||
- | hint.scbus.1.at=" | ||
- | hint.ada.1.at=" | ||
- | hint.scbus.2.at=" | ||
- | hint.ada.2.at=" | ||
- | hint.scbus.3.at=" | ||
- | hint.ada.4.at=" | ||
- | hint.scbus.5.at=" | ||
- | hint.ada.6.at=" | ||
- | hint.scbus.7.at=" | ||
- | hint.ada.7.at=" | ||
- | hint.scbus.8.at=" | ||
- | hint.ada.9.at=" | ||
- | hint.scbus.10.at=" | ||
- | hint.ada.10.at=" | ||
- | hint.scbus.11.at=" | ||
- | hint.ada.12.at=" | ||
- | hint.scbus.13.at=" | ||
- | hint.ada.14.at=" | ||
- | hint.scbus.15.at=" | ||
- | hint.ada.15.at=" | ||
- | hint.wbwd.0.at=" | ||
- | |||
- | |||
- | Use ' | ||
- | Use ' | ||
- | Use ' | ||
- | Default is to leave the temporary file to deal with by hand | ||
- | |||
- | *** How should I deal with the merged file? [Leave it for later] i | ||
- | |||
- | *** Merged version of ./ | ||
- | --> | ||
- | </ | ||
- | |||
- | インストール | ||
- | </ | ||
- | cd /usr/src | ||
- | make installworld | ||
- | mergemaster -UPi | ||
- | </ | ||
- | |||
- | </ | ||
- | make delete-old | ||
- | reboot | ||
- | make delete-old-libs | ||
- | </ | ||
- | |||
- | http:// | ||
- | http:// | ||
- | http:// | ||
- | http:// |