🙆♀️
おうちサーバーを NetBSD 10.0 にアップデートした
3 月に 10.0 リリースアナウンスされたのに (Announcing NetBSD 10.0 (Mar 28, 2024)) 今更やりました。すいません。
古き人類なのでソースコードをビルドしてアップデートしました。バイナリでもアップデートできるようですがやったことないです。
アーキテクチャは amd64 です。
ソースコードをダウンロードする
安定版を使います。 current じゃないです。
手順はこちら 32.3.1. Downloading sources for a NetBSD release
昔作業したファイルを削除しておきましょう。ビルド時にエラーが発生して時間を無駄にします。
$ rm -rf /usr/obj
$ rm -rf /usr/tools
ソースコードを取得します。 ftp です。 ftp って知ってます?
$ sudo ftp -i ftp://ftp.NetBSD.org/pub/NetBSD/NetBSD-10.0/source/sets/
mget *.tgz
exit
展開します。
$ for f in *.tgz; do tar xzf $f; done
移動させます。慣例として /usr/src を使います。
$ mv usr/src /usr/
ソースコードをビルドする
手順はこちら Chapter 35. Updating an existing system from sources - 35.1. Manual build and update procedure
ユーザーランドをビルドしてカーネルをビルドします。 カーネルの設定をコピーしてますが、 GENERIC からとくに変更してないです。
$ cd /usr/src
$ ./build.sh -O ../obj -T ../tools -U distribution
$ cp sys/arch/amd64/conf/GENERIC sys/arch/amd64/conf/MYKERNEL
$ ./build.sh -O ../obj -T ../tools -U kernel=MYKERNEL
$ mv /usr/obj/sys/arch/amd64/compile/MYKERNEL/netbsd /
$ shutdown -r now
再起動したらユーザーランドをインストールします。
$ cd /usr/src
$ ./build.sh -O ../obj -T ../tools -U install=/
設定ファイル (/etc です) をインストールします。コンフリクトしたらその都度対処します。
$ /usr/sbin/postinstall -s /usr/src check
$ /usr/sbin/postinstall -s /usr/src fix
$ /usr/sbin/etcupdate -s /usr/src
再起動します。
$ shutdown -r now
以上です。お疲れ様でした。
% uname -rsm
NetBSD 10.0 amd64
Discussion