Переход FreeBSD на SSD
В силу сразу ряда причин нам потребовался переход с HDD на SSD.
Задача формулировалась как перенос системы на новый диск с минимальным простоем.
После подключения нового диска прежде всего создаем таблицу разделов.
На старом диске использовалась GPT и решено было так это и оставить
# gpart create -s gpt da1
da1 created
Создаем загрузочный раздел (с меткой gpboot)
# gpart add -t freebsd-boot -l gptboot -s 512K da1
da1p1 added
Пишем в загрузочный раздел загрузчик
# gpart bootcode -b /boot/pmbr -p /boot/gptboot -i 1 da1
bootcode written to da1
Создаем основной раздел. В моем случае он был только один. Точный размер выясняется командой
gpart show -l da0
# gpart add -t freebsd-ufs -l gptroot -s 480246784 da1
da1p2 added
От размещения свопа на SSD было решено пока воздержаться.
По итогу картина получилась следующая:
# gpart show da1
=> 34 500044733 da1 GPT (238G)
34 1024 1 freebsd-boot (512K)
1058 480246784 2 freebsd-ufs (229G)
480247842 19796925 - free - (9.4G)
Далее включаем TRIM и применяем стандартную оптимизацию для SSD,
направленную на снижение количества записей
tunefs -t enable /dev/da1p2
tunefs: issue TRIM to the disk remains unchanged as enabled
tunefs -n disable /dev/da1p2
tunefs: soft updates cleared
tunefs -j disable /dev/da1p2
tunefs: soft updates remains unchanged as disabled
Вместо того, чтобы копировать пустые сотни гигабайт на основном разделе,
решено было копировать файлы.
Для подобного переноса также можно использовать dump/retore