Исходные данные:
1. Система 9.2-RELEASE. Обновляюсь на 10 Stable. Все работает на удаленной площадке. Моя задача: обновить мир и не поломать загрузку системы.
2. Загрузка происходит с zfs:
Код: Выделить всё
# cat /boot/loader.conf | grep zfs
zfs_load="YES"
vfs.root.mountfrom="zfs:tank/root"
vfs.zfs.prefetch_disable=0
vfs.zfs.txg.write_limit_override=1073741824
vfs.zfs_scrub_limit=8
#vfs.zfs.arc="512M"
vfs.zfs.arc_max="6144M"
#vfs.zfs.vdev.cache.size="10M"
vfs.zfs.arc_min="1024M"
vfs.zfs.txg.timeout="1"
vfs.zfs.write_limit_override="0"
vfs.zfs.zil_disable="0"
Код: Выделить всё
# zfs list
NAME USED AVAIL REFER MOUNTPOINT
tank 1.01T 785G 31K none
tank/root 1.01T 785G 735G /
tank/root/tmp 1.41G 785G 1.41G /tmp
tank/root/var 298G 785G 298G /var
Код: Выделить всё
# zpool status
pool: tank
state: ONLINE
scan: resilvered 103G in 2h48m with 0 errors on Mon Jul 21 03:13:47 2014
config:
NAME STATE READ WRITE CKSUM
tank ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
gpt/disk0 ONLINE 0 0 0
gpt/disk1 ONLINE 0 0 0
make buildworld
make buildkernel KERNCONF=CUSTOM
make installkernel KERNCONF=CUSTOM
4. Сейчас система загружена и еще не перегружалась. В /usr/src/updating вижу:
Код: Выделить всё
1.) recompile and reinstall the ZFS boot loader and boot block
(this is part of "make buildworld" and "make installworld")
Код: Выделить всё
2.) update the ZFS boot block on your boot drive
The following example updates the ZFS boot block on the first
partition (freebsd-boot) of a GPT partitioned drive ad0:
"gpart bootcode -p /boot/gptzfsboot -i 1 ad0"
Код: Выделить всё
# gpart show
=> 34 3907029101 ada0 GPT (1.8T)
34 128 1 freebsd-boot (64k)
162 25165824 2 freebsd-swap (12G)
25165986 3881863149 3 freebsd-zfs (1.8T)
=> 34 3907029101 ada1 GPT (1.8T)
34 128 1 freebsd-boot (64k)
162 25165824 2 freebsd-swap (12G)
25165986 3881863149 3 freebsd-zfs (1.8T)