!!! OpenBSD のアップグレード (7.0 ARM64 on rpi 版) {{category OpenBSD,nolink}}BeagleBone Black に入れた [OpenBSD|https://www.openbsd.org/] [7.0 (Released Oct 14, 2021)|https://www.openbsd.org/70.html] から [7.1 (Released Apr 21, 2022)|https://www.openbsd.org/71.html] にアップグレードした際のメモ書き。 お決まりなのだけど、重要なサーバや物理サーバでリモート接続している場合は、最初に同一のローカルシステムで試すことを推奨。 まっ、そんな環境ないので、必要なファイルをバックアップした上で、えぃやぁかな。アップグレードでなきゃ、インストールし直しするつもりなので。 OpenBSD 6.6 からは、[sysupgrade(8)|https://man.openbsd.org/sysupgrade] でアップグレードができる。 このアップグレードは一つ次のリリースへのみがサポートされる。 諸注意や詳細は、 [OpenBSD Upgrade Guide: 7.0 to 7.1|https://www.openbsd.org/faq/upgrade71.html] を参照。 [sysupgrade(8)|https://man.openbsd.org/sysupgrade] を使用した ''無人アップグレード'' 以外に、 各アーキテクチャ用のRAMディスクカーネル '''bsd.rd''' を取得して、このカーネルが起動したら '''(U)pgrade''' を選択して、プロンプトの指示に従って行う ''インタラクティブ アップグレード'' 、 完全に手動でファイルを更新する ''マニュアル アップグレード'' がある。 * Install [[7.0|OpenBSD/Install/70-arm64]], Upgrade [[to 7.1|OpenBSD/Upgrade/71-arm64]] !!!アップグレード !!アップグレードする前に !ダウンロードミラーサイトの設定 '''/etc/installurl''' に記載されたURLのサーバから取得される。インストール時に ftp や http を使用していれば、その時の設定が記載されている。 rpi# cat /etc/installurl https://cdn.openbsd.org/pub/OpenBSD ※7.0 インストール時 www.ftp.ne.jp を使ったが、7.1 がミラーされていないので cdn.openbsd.org を使用する。 !ディスク空き容量 sysupgrade(8) がダウンロードしたファイルを置く '''/home/_sysupgrade''' および、インストール先となる '''/usr''' の空き容量を確認する。足りないと失敗する。 '''/usr''' には、1.1G 必要とのこと。'''/home/_sysupgrade''' は、インストールセットの 500MB かな…。 rpi# df -h Filesystem Size Used Avail Capacity Mounted on /dev/sd0a 26.9G 1.1G 24.5G 4% / 横着して、1パーティションで構成してた… !!アップグレード rpi# uname -a OpenBSD rpi.intranet 7.0 GENERIC.MP#7 arm64 sysupgrade コマンド自体は、SSH上でも可能。ただし、アップグレードが完了して立ち上がるまではつなげないので、様子を確認できない。 X 関連を除くため、自動で再起動しないように '''-n''' を指定して、X 関連の インストール セット を除外してから、再起動する。 rpi# sysupgrade -n Fetching from https://cdn.openbsd.org/pub/OpenBSD/7.1/arm64/ SHA256.sig 100% |*************************************| 1544 00:00 Signature Verified INSTALL.arm64 100% |************************************| 38774 00:00 base71.tgz 100% |*************************************| 248 MB 01:08 bsd 100% |*************************************| 14381 KB 00:05 bsd.mp 100% |*************************************| 14452 KB 00:05 bsd.rd 100% |*************************************| 17203 KB 00:04 comp71.tgz 100% |*************************************| 69240 KB 00:29 game71.tgz 100% |*************************************| 2714 KB 00:02 man71.tgz 100% |*************************************| 7601 KB 00:02 xbase71.tgz 100% |*************************************| 49893 KB 00:21 xfont71.tgz 100% |*************************************| 22965 KB 00:11 xserv71.tgz 100% |*************************************| 13376 KB 00:06 xshare71.tgz 100% |*************************************| 4545 KB 00:01 Verifying sets. Fetching updated firmware. bwfm-firmware-20200316.1.2p2->20200316.1.3p3: ok Will upgrade on next reboot rpi# 再起動したらアップグレードがされるところまで来たら、不用な X 関連の インストールセットを外して、再起動する。 rpi# ls -lA /home/_sysupgrade total 943760 -rw-r--r-- 1 root wheel 38774 Apr 12 13:04 INSTALL.arm64 -rw-r--r-- 1 root wheel 1392 May 1 13:19 SHA256 -rw-r--r-- 1 root wheel 261089831 Apr 12 12:46 base71.tgz -rw-r--r-- 1 root wheel 14726621 Apr 12 12:43 bsd -rw-r--r-- 1 root wheel 14798860 Apr 12 12:43 bsd.mp -rw-r--r-- 1 root wheel 17616348 Apr 12 13:04 bsd.rd -rw-r--r-- 1 root wheel 70902503 Apr 12 12:46 comp71.tgz -rw-r--r-- 1 root wheel 2780043 Apr 12 12:47 game71.tgz -rw-r--r-- 1 root wheel 7784157 Apr 12 12:47 man71.tgz -rw-r--r-- 1 root wheel 51090594 Apr 12 14:04 xbase71.tgz -rw-r--r-- 1 root wheel 23516357 Apr 12 14:04 xfont71.tgz -rw-r--r-- 1 root wheel 13697961 Apr 12 14:04 xserv71.tgz -rw-r--r-- 1 root wheel 4654401 Apr 12 14:04 xshare71.tgz rpi# rm /home/_sysupgrade/x* rpi# ls -lA /home/_sysupgrade total 761904 -rw-r--r-- 1 root wheel 38774 Apr 12 13:04 INSTALL.arm64 -rw-r--r-- 1 root wheel 1392 May 1 13:19 SHA256 -rw-r--r-- 1 root wheel 261089831 Apr 12 12:46 base71.tgz -rw-r--r-- 1 root wheel 14726621 Apr 12 12:43 bsd -rw-r--r-- 1 root wheel 14798860 Apr 12 12:43 bsd.mp -rw-r--r-- 1 root wheel 17616348 Apr 12 13:04 bsd.rd -rw-r--r-- 1 root wheel 70902503 Apr 12 12:46 comp71.tgz -rw-r--r-- 1 root wheel 2780043 Apr 12 12:47 game71.tgz -rw-r--r-- 1 root wheel 7784157 Apr 12 12:47 man71.tgz rpi# rpi# reboot ----  :≪前略≫ syncing disks... done rebooting...  :≪中略≫ UEFI firmware (version UEFI Firmware v1.33 built at 17:06:11 on Mar 7 2022)  :≪中略≫ disks: sd0* >> OpenBSD/arm64 BOOTAA64 1.6 upgrade detected: switching to /bsd.upgrade boot>  :≪中略≫ OpenBSD 7.1 (RAMDISK) #1522: Mon Apr 11 22:03:55 MDT 2022 deraadt@arm64.openbsd.org:/usr/src/sys/arch/arm64/compile/RAMDISK  :≪中略≫ Welcome to the OpenBSD/arm64 7.1 installation program. Performing non-interactive upgrade... Terminal type? [vt220] vt220 Available disks are: sd0. Which disk is the root disk? ('?' for details) [sd0] sd0 Checking root filesystem (fsck -fp /dev/sd0a)... OK. Mounting root filesystem (mount -o ro /dev/sd0a /mnt)... OK. Force checking of clean non-root filesystems? [no] no /dev/sd0a (caa4d5488fbc8d93.a) on /mnt type ffs (rw, local, noatime, wxallowed) Let's upgrade the sets! Location of sets? (disk http nfs or 'done') [http] disk Is the disk partition already mounted? [yes] yes Pathname to the sets? (or 'done') [7.1/arm64] /home/_sysupgrade/ Select sets by entering a set name, a file name pattern or 'all'. De-select sets by prepending a '-', e.g.: '-game*'. Selected sets are labelled '[X]'. [X] bsd [X] bsd.rd [X] comp71.tgz [X] game71.tgz [X] bsd.mp [X] base71.tgz [X] man71.tgz Set name(s)? (or 'abort' or 'done') [done] done Directory does not contain SHA256.sig. Continue without verification? [no] yes Installing bsd 100% |**************************| 14381 KB 00:02 Installing bsd.mp 100% |**************************| 14452 KB 00:01 Installing bsd.rd 100% |**************************| 17203 KB 00:02 Installing base71.tgz 100% |**************************| 248 MB 01:29 Installing comp71.tgz 100% |**************************| 69240 KB 01:06 Installing man71.tgz 100% |**************************| 7601 KB 00:24 Installing game71.tgz 100% |**************************| 2714 KB 00:03 Location of sets? (disk http nfs or 'done') [done] done Making all device nodes... done. fw_update: added none; updated none; kept bwfm Multiprocessor machine; using bsd.mp instead of bsd. Relinking to create unique kernel... done. CONGRATULATIONS! Your OpenBSD upgrade has been successfully completed! syncing disks... done rebooting...  :≪中略≫ disks: sd0* >> OpenBSD/arm64 BOOTAA64 1.8 boot>  :≪中略≫ OpenBSD 7.1 (GENERIC.MP) #1623: Mon Apr 11 21:43:05 MDT 2022 deraadt@arm64.openbsd.org:/usr/src/sys/arch/arm64/compile/GENERIC.MP  :≪中略≫ root on sd0a (caa4d5488fbc8d93.a) swap on sd0b dump on sd0b bwfm0: failed loadfirmware of file brcmfmac43455-sdio.openbsd,acpi.txt Automatic boot in progress: starting file system checks. /dev/sd0a (caa4d5488fbc8d93.a): file system is clean; not checking pf enabled starting network reordering libraries: done. starting early daemons: syslogd pflogd ntpd. starting RPC daemons:. savecore: no core dump checking quotas: done. clearing /tmp kern.securelevel: 0 -> 1 creating runtime link editor directory cache. preserving editor files. running rc.sysmerge ===> Updating /etc/changelist ===> Updating /etc/fbtab ===> Updating /etc/login.conf ===> Updating /etc/newsyslog.conf ===> Updating /etc/syslog.conf starting network daemons: sshd smtpd sndiod. running rc.firsttime fw_update: added none; updated none; kept bwfm Checking for available binary patches... syspatch: Error retrieving https://cdn.openbsd.org/pub/OpenBSD/syspatch/7.1/arm64/SHA256.sig: 404 Not Found starting local daemons: cron. Sun May 1 13:33:25 JST 2022 OpenBSD/arm64 (rpi.intranet) (console) login: !!アップグレード後 rpi# uname -a OpenBSD rpi.intranet 7.1 GENERIC.MP#1623 arm64