zpool upgrade "don't forget to update boot code"
- Reply: David Christensen : "Re: zpool upgrade "don't forget to update boot code""
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 31 Jul 2022 09:23:33 UTC
freebsd-questions:
I previously installed FreeBSD onto an x86_64 computer:
FreeBSD-12.1-RELEASE-amd64-memstick.img
The computer has a single SSD for the OS disk. I used the FreeBSD
installer to partition the OS disk as follows:
Partitioning Auto (ZFS)
Pool Type/Disks stripe: 1 disk
ada0 <redacted>
Pool Name soho2_zroot
Force 4K Sectors YES
Encrypt Disks YES
Partition Scheme MBR (BIOS)
Swap Size 2g
Mirror Swap YES
Encrypt Swap YES
>>> Install Proceed with installation
Encryption passphrase *******
The disk was partitioned as follows:
# gpart show -p ada0
=> 63 117231345 ada0 MBR (56G)
63 1985 - free - (993K)
2048 29360128 ada0s1 freebsd [active] (14G)
# gpart show -p ada0s1
=> 0 29360128 ada0s1 BSD (14G)
0 4194304 ada0s1a freebsd-zfs (2.0G)
4194304 4194304 ada0s1b freebsd-swap (2.0G)
8388608 20971520 ada0s1d freebsd-zfs (10G)
I have upgraded several times since installation:
# freebsd-version ; uname -a
12.3-RELEASE-p5
FreeBSD f3.tracy.holgerdanske.com 12.3-RELEASE-p5 FreeBSD
12.3-RELEASE-p5 GENERIC amd64
At some point, 'zpool status' started providing "status" and "action"
notices for the boot and root pools:
# zpool status bootpool
pool: bootpool
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
the pool may no longer be accessible by software that does not support
the features. See zpool-features(7) for details.
scan: scrub repaired 0 in 0 days 00:00:02 with 0 errors on Sun Jul 31
00:57:17 2022
config:
NAME STATE READ WRITE CKSUM
bootpool ONLINE 0 0 0
ada0s1a ONLINE 0 0 0
# zpool status soho2_zroot
pool: soho2_zroot
state: ONLINE
status: Some supported features are not enabled on the pool. The pool can
still be used, but some features are unavailable.
action: Enable all features using 'zpool upgrade'. Once this is done,
the pool may no longer be accessible by software that does not support
the features. See zpool-features(7) for details.
scan: scrub repaired 0 in 0 days 00:00:42 with 0 errors on Sun Jul 31
00:58:09 2022
config:
NAME STATE READ WRITE CKSUM
soho2_zroot ONLINE 0 0 0
ada0s1d.eli ONLINE 0 0 0
Tonight, I did the upgrades:
# zpool upgrade bootpool
This system supports ZFS pool feature flags.
Enabled the following features on 'bootpool':
allocation_classes
# zpool status bootpool
pool: bootpool
state: ONLINE
scan: scrub repaired 0 in 0 days 00:00:02 with 0 errors on Sun Jul 31
00:57:17 2022
config:
NAME STATE READ WRITE CKSUM
bootpool ONLINE 0 0 0
ada0s1a ONLINE 0 0 0
errors: No known data errors
# zpool upgrade soho2_zroot
This system supports ZFS pool feature flags.
Enabled the following features on 'soho2_zroot':
allocation_classes
If you boot from pool 'soho2_zroot', don't forget to update boot code.
Assuming you use GPT partitioning and da0 is your boot disk
the following command will do it:
gpart bootcode -b /boot/pmbr -p /boot/gptzfsboot -i 1 da0
# zpool status soho2_zroot
pool: soho2_zroot
state: ONLINE
scan: scrub repaired 0 in 0 days 00:00:42 with 0 errors on Sun Jul 31
00:58:09 2022
config:
NAME STATE READ WRITE CKSUM
soho2_zroot ONLINE 0 0 0
ada0s1d.eli ONLINE 0 0 0
errors: No known data errors
The above message "Assuming you use GPT partitioning and da0 is your
boot disk ..." does not seem to apply to my case. Nor do the FreeBSD
Manual or Wiki:
https://docs.freebsd.org/en/books/handbook/boot/
http://freebsdwiki.net/index.php/ZFS,_booting_from
Do I need to update boot code? Which stage(s)? Which file(s)? Which
destinations? What commands?
David