FreeBSD — Меняем HDD на SSD

Возникла ситуация — попался в руки новый SSD от Intel. Ну и конечно захотелось апнуть сервак 😉

Сразу возкикла проблема — SSD меньше чем HDD, соответственно добавить в массив и ресилвить как здесь не получится. Ну да и фиг с ним.

Начнём:

# camcontrol devlist
 <INTEL SSDSC2BW180A4 DC32>         at scbus1 target 0 lun 0 (pass0,ada0)
 <ST3250318AS CC38>                 at scbus2 target 0 lun 0 (pass1,ada1)

SSD определился как ada0.

Создаём разделы:

gpart create -s gpt ada0
gpart add -b 40 -s 512k -t freebsd-boot ada0
gpart add -s 2g -t freebsd-swap ada0
gpart add -t freebsd-zfs ada0
# gpart show
=> 34 488397101 diskid/DISK-9VM78BWT GPT (233G)
 34 6 - free - (3.0K)
 40 1024 1 freebsd-boot (512K)
 1064 984 - free - (492K)
 2048 4194304 2 freebsd-swap (2.0G)
 4196352 484200448 3 freebsd-zfs (231G)
 488396800 335 - free - (168K)

=> 40 351651808 ada0 GPT (168G)
 40 1024 1 freebsd-boot (512K)
 1064 4194304 2 freebsd-swap (2.0G)
 4195368 347456472 3 freebsd-zfs (166G)
 351651840 8 - free - (4.0K)

Создаём пул с именем ssd:

# zpool create -f ssd /dev/ada0p3

Смотрим:

# zfs list
NAME                 USED  AVAIL  REFER  MOUNTPOINT
ssd                  264K   160G    96K  /ssd
zroot               12,3G   211G    96K  /zroot
zroot/ROOT          4,80G   211G    96K  none
zroot/ROOT/default  4,80G   211G  4,80G  /
zroot/tmp           1,61M   211G  1,61M  /tmp
zroot/usr           7,36G   211G    96K  /usr
zroot/usr/home      5,11G   211G  5,11G  /usr/home
zroot/usr/ports     1,66G   211G  1,66G  /usr/ports
zroot/usr/src        608M   211G   608M  /usr/src
zroot/var           73,6M   211G    96K  /var
zroot/var/audit       96K   211G    96K  /var/audit
zroot/var/crash       96K   211G    96K  /var/crash
zroot/var/log       65,2M   211G  65,2M  /var/log
zroot/var/mail      7,96M   211G  7,96M  /var/mail
zroot/var/tmp        104K   211G   104K  /var/tmp

Делаем рекурсивный снапшот:

# zfs snapshot -r zroot@bkp1

и переносим его на пул ssd:

# zfs send -vR zroot@bkp1 | zfs receive -vFd ssd

Ждём-с окончания передачи, и монтируем новосозданный пул:

# mkdir /tmp/ssd
# mount -t zfs ssd/ROOT/default /tmp/ssd
#gpart bootcode -b /tmp/ssd/boot/pmbr -p /tmp/ssd/boot/gptzfsboot -i 1 ada0
partcode written to ada0p1
bootcode written to ada0
# zfs umount -a

Назначим bootfs и делаем экспорт:

# zpool set bootfs=ssd/ROOT/default ssd
# zpool export ssd

и перегружаемся, не забывая выдернуть старый винт:

shutdown -r now

 

 

Один комментарий

Оставьте ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *