> Это работает только на старом железе.Это работает и на старом железе, и на новом железе: вынул SSD из старой системы, подключил в новую - всё завелось без дополнительных манипуляций. В UEFI BIOS указал с какого носителя загружаться и всё.
> У меня так асусовская плата на ам1 сокете валялась года полтора, потому
> что у фри тогда не было UEFI загрузчика, а я не
> хотел в MBR диски форматировать.
У меня давно все загрузочные носители в GPT-разметке. Незагрузочные используются "как есть", без таблиц разделов.
# Размечаем системный загрузочный носитель в GPT
% gpart create -s gpt ada4
# Делаем носитель загрузочным
% gpart bootcode -b /boot/pmbr ada4
# Создаём загрузочный раздел
% gpart add -b 40 -s 1024 -t freebsd-boot ada4
# Записываем загрузчик из системы-донора
% gpart bootcode -p /boot/gptzfsboot -i 1 ada4
% gpart show ada4
=> 34 125045357 ada4 GPT (59G)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 125044327 - free - (59G)
# Создаём системный раздел
% gpart add -s 125040000 -t freebsd-zfs -l systempool ada4
% gpart show ada4
=> 34 125045357 ada4 GPT (59G)
34 6 - free - (3.0k)
40 1024 1 freebsd-boot (512k)
1064 125040000 2 freebsd-zfs (59G)
125041064 4327 - free - (2.1M)
# Задаём использование блоков 4k в Z-пуле системного раздела, уменьшая износ флэша
% gnop create -S 4096 ada4p2
% zpool create -O utf8only=on -o failmode=panic freebsd ada4p2.nop
% zpool export freebsd
% gnop destroy ada4p2.nop
% zpool import freebsd
# Системный пул готов
% zpool status freebsd
pool: freebsd
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
freebsd ONLINE 0 0 0
gptid/f8ed44f6-6c7f-12e1-aac2-001511d54937 ONLINE 0 0 0
errors: No known data errors
% zdb freebsd | grep ashift
ashift: 12
ashift: 12
# Задаём базовые параметры пула
% zfs set compress=lz4 freebsd
% zfs set atime=off freebsd
# Населяем системный пул системными файлами
...