システムアップデート - freebsd-update - 12.2 RELEASE → 12.3 RELEASE - 仮想環境で実験

 クラウディア
1. 概要
2. パッチをあてる
3. GENERIC boot を用意しておく
4. バージョンアップ
5. 再起動後

1. 概要

 「VirtualBox」上に、「FreeBSD 12.2 RELEASE」のマシンがありますので、これを「FreeBSD 12.3 RELEASE」にアップデートするところからやってみます。  ただし、アップデート前のマシンは、いくつかのサーバアプリケーションをインストールしたものです。

2. パッチをあてる

 仮想マシンの現在の状況を見てみます。

$ uname -a
FreeBSD ns.vm.sing.ne.jp 12.2-RELEASE FreeBSD 12.2-RELEASE r366954 GENERIC  amd64
 パッチがあたっていないので、パッチをあてるところから・・・。

freebsd-update fetch
 メッセージは長々と出力されるので割愛します。

Looking up update.FreeBSD.org mirrors... 2 mirrors found.
Fetching public key from update2.freebsd.org... done.
Fetching metadata signature for 12.2-RELEASE from update2.freebsd.org... done.
Fetching metadata index... done.
Fetching 2 metadata files... done.
Inspecting system... done.
Preparing to download files...

・・・	略	・・・

/usr/share/certs/trusted/Camerfirma_Chambers_of_Commerce_Root.pem
/usr/share/certs/trusted/Camerfirma_Global_Chambersign_Root.pem
/usr/share/certs/trusted/Certum_Root_CA.pem
 Spaceq で進めていきます。

・・・	略	・・・

/usr/share/zoneinfo/Israel

WARNING: FreeBSD 12.2-RELEASE is approaching its End-of-Life date.
It is strongly recommended that you upgrade to a newer
release within the next 1 week.
 これで終わります。  では、アップデート。

freebsd-update install
 メッセージは、これだけ

Installing updates...Scanning //usr/share/certs/blacklisted for certificates...
Scanning //usr/share/certs/trusted for certificates...
Scanning //usr/local/share/certs for certificates...
 done.
 再起動。

shutdown -r now
 更新を確認。

uname -a

FreeBSD ns.vm.sing.ne.jp 12.2-RELEASE-p12 FreeBSD 12.2-RELEASE-p12 GENERIC  amd64
 「FreeBSD 12.2-RELEASE」から「FreeBSD 11.2-RELEASE-p12」へ変わっています。

3. GENERIC boot を用意しておく

 もし、カーネルを変更しているのであれば、「reboot」時に必要になるので、「GENERIC boot」をあらかじめ用意しておきます。  今回、このマシンは、カーネルを変更していないので、このまま使えますが、変更しているのであれば、下記の手順を実行します。  「.iso」ファイルをダウンロードして、それをマウントするのが手っ取り早い。  カーネルさえあればいいので、「DVD」メディアでなく、「CD」メディアで十分。  ダウンロード。

mkdir -pv /tmp/disk
cd /tmp/disk
curl https://download.freebsd.org/ftp/releases/amd64/amd64/ISO-IMAGES/12.2/FreeBSD-12.2-RELEASE-amd64-disc1.iso --output FreeBSD-12.2-RELEASE-amd64-disc1.iso
 マウント。

cd /tmp/disk
mdconfig -a -t vnode -f FreeBSD-12.2-RELEASE-amd64-disc1.iso -u -0
mount -t cd9660 -o ro /dev/md0 /mnt
 「GENERIC boot」を抽出。

cd /mnt/usr/freebsd-dist/
tar -C/ -xvf kernel.txz boot/kernel/kernel
 アンマウント。

cd
umount /mnt
mdconfig -d -u 0

4. バージョンアップ

 バージョンアップ。

freebsd-update -r 12.3-RELEASE upgrade
 メッセージはなるべく省略して、入力が必要な個所のみ記述します。

 #
 # The following pool statement will give you a random set of NTP servers
Does this look reasonable (y/n)?
 これは、「/etc/ntp.conf」をカスタマイズしている箇所のようです。  y Enter

The following files are affected by updates. No changes have
been downloaded, however, because the files have been modified
locally:
/.cshrc
/root/.cshrc
(END)
 「.cshrc」が、変わっちゃってるのね。  q を連打して、進行します。  今回は、このまま、下記を表示して終わっちゃいました。

To install the downloaded upgrades, run "/usr/sbin/freebsd-update install".
 ってことで、インストール。

/usr/sbin/freebsd-update install

Installing updates...
Kernel updates have been installed.  Please reboot and run
"/usr/sbin/freebsd-update install" again to finish installing updates.
 再起動。

shutdown -r now

5. 再起動後

 再度。

/usr/sbin/freebsd-update install

Installing updates...Scanning //usr/share/certs/blacklisted for certificates...
Scanning //usr/share/certs/trusted for certificates...
Scanning //usr/local/share/certs for certificates...
 done.
 「FreeBSD 11.4 RELEASE」を「FreeBSD 12.2 RELEASE」へアップグレードしたときは、「ports」を更新しなおしたりして、大変でしたが、今回はリビジョンアップのためか、何もありませんでした。  もうええのかしら?  バージョンアップを確認します。

uname -a

FreeBSD ns.vm.sing.ne.jp 12.3-RELEASE-p1 FreeBSD 12.3-RELEASE-p1 GENERIC  amd64
 いけてるっぽいわ。
ハイスピードプランそれがだいじWi-Fiマイニングベース