思考実験とD.I.Y.

D.I.Y and Gedankenexperiment

【FreeBSD】”13.4->13.5”に”buildworld”でマイナーアップデート[3]:「(2)13.4実機上で13.5をbuildworld」

前回、実機上のFreeBSD13.4(無印)に”fetch update”の上、”buildworld”でパッチが当たったFreeBSD13.4を構築しました。

今回は、FreeBSD13.4な実機上で”buildworld”を行い、FreeBSD13.5(無印)マイナーアップデートを行おうとおもいます。*1

  • 小生の健忘禄、兼作業記録になっていますことをお詫び申し上げます🙇‍♂️

1. FreeBSD13.5のソースを準備

FreeBSD13.5のソースのオリジナルは、FreeBSD13.5の向けフォルダにtarボールとして、保存してあります。

まずは、メインファイルサーバー上で、FreeBSD13.5のソースをFreeBSD13.4向けのフォルダに展開しておきます。

root@mainsv13.5:# cd /FreeBSD13.4/usr ; /usrディレクトリに移動。
root@mainsv13.5# mkdir src_13.5 ; FreeBSD13.5用のソースディレクトリを作成。
root@mainsv13.5# cd src_13.5 ;  ;FreeBSD13.5用のソースディレクトリに移動。
root@mainsv13.5# tar -xvf ../../13.5-RELEASE-amd64/src.tar ; FreeBSD13.5用のソースを展開。

2. FreeBSD13.5をbuildworld

(1)13.5-RELEASE-amd64を”buildworld”

この作業、CPU性能によりますが、かなり時間がかかります。

root@replsv13.4:# cd /usr/src_13.5 ; ;FreeBSD13.5用のソースディレクトリに移動。
root@replsv13.4:# make buildworld ; buildworldの実行。

 

 

  • ちなみに、今回は、”Intel Core i7-2600 CPU 3.40GHz”な実機で実施しましたが、buildworld完了まで約13時間程、かかりました。
(2)カーネルのビルドとインストールと再起動
root@replsv13.4:# make kernel  ; FreeBSD13.5の”GENERICカーネル”の作成とインストール。

 

 

root@replsv13.4:# shutdown -r now  ; FreeBSD13.5の”GENERICカーネル”を有効にするためにリブート。
(3)システムのインストール

この段階では、”GENERICカーネル”がFreeBSD13.5になっているだけなので、システム全体をインストールします。

root@replsv13.5:# cd /usr/src_13.5 ; /src_13.5ディレクトリに移動。
root@replsv13.5:# make installworld  ; システム全体をインストール。

 

(4)mergemaster の実行
root@replsv13.5:# mergemaster -Ui ; 各種設定をマージします。

 

色々、聞かれるますがすべて「エンター」で進めます。

(5)説定の確認

今回の実機にはネットワークインターフェースカード(NIC)として"GENERICなカーネル”では動作しないRealtekのDual 2.5GbEなカードを装着しています。

”mergemaster”によって、/boot/defaults/loader.confデフォルト設定に戻されているため、RealtekのDual 2.5GbEなNICの設定が無効になっています。

このため、このまま再起動するとネットワークが使えなくななるため、/boot/defaults/loader.confの修正が必要です[*2*3]。

まずは、今回は、このような時のために、バックアップサーバーに動的にバックアップしていたFreeBSD13.4FreeBSD13.5loader.confの差分を比較しておきます。

root@replsv13.5:# pushd /share/Backups/System.setting/replsv/ada0a/FreeBSD-13.4-RELEASE ; FreeBSD-13.4のシステム設定バックアップフォルダに移動
root@replsv13.5:# diff ./boot/load.conf /boot/loader/conf  ; load.conf の新旧を比較。

 

かなりの差異があるので、FreeBSD13.4loader.confをそのままFreeBSD13.5/bootコピーするのは危険です😅。

(6)説定の修正

当該機の新しい/boot/defaults/load.confFreeBSD13.4で設定していた内容をloader.confの専用設定部分を追記します。

root@replsv13.5:# vi /boot/defaults/loader.conf ;

 

(7)再起動
root@replsv13.5::# shutdown -r now ; 構築したシステムを有効化するために再起動。

 3. buildworldの結果確認

root@replsv13.5:#  uname -a ;
root@replsv13.5:#  uname -srm ;
root@replsv13.5:#   freebsd-version -kur ;

 

FreeBSD13.5にマイナーアップデートした実機の情報を確認します。

最初からFreeBSD13.5のmainsv13.5の情報と差がないかを確認しておきます。

これで、FreeBSD13.4からは卒業できましたので、マイナーバージョンナンバーの違いによる混乱は避けることが出来ます😀。

ブログランキング・にほんブログ村へにほんブログ村 IT技術ブログへ

出典・引用・備考

*1:この投稿の内容は、特定の機種並びに特定の環境での確認結果になります。同等機種や異なる環境での動作他を保証するものではありませんので、ご留意いただけます様お願いいたします。

*2:

*3: