понедельник, 27 июня 2011 г.

перенос сервера на др. железку dump/restore

1 Снимаем дамп с рабочего сервера:
#!/bin/sh
echo ''
DATE=`date +%Y.%m.%d`
 echo 'root backup - begin'
/sbin/dump -0 -L -f - /  >  /mnt/stor/dump/root.${DATE}.img
 echo 'root is ok'
/bin/sleep 4
/sbin/dump -0 -L -f - /usr  >  /mnt/stor/dump/usr.${DATE}.img
 echo 'usr is ok'
/bin/sleep 4
/sbin/dump -0 -L -f - /var  >  /mnt/stor/dump/var.${DATE}.img
 echo 'var is ok'
2 С установочного диска freebsd разбиваем диск на нужные разделы и прописываем загрузочную запись на новом железе.
3 Загружаемся на новом железе с live cd(FreeSBIE). Поднимаем сеть.
4 Монтируем папку со снятыми дампами на FreeSBIE сервер.
5 Форматируем созданные в п2 разделы. И разворачиваем на них дампы:
FreeSBIE# newfs /dev/ad2s1a
/dev/ad2s1a: 5120.0MB (10485760 sectors) block size 16384, fragment size 2048
        using 28 cylinder groups of 183.77MB, 11761 blks, 23552 inodes.
super-block backups (for fsck -b #) at:
 160, 376512, 752864, 1129216, 1505568, 1881920, 2258272, 2634624, 3010976, 3387328, 3763680, 4140032, 4516384, 4892736,
 5269088, 5645440, 6021792, 6398144, 6774496, 7150848, 7527200, 7903552, 8279904, 8656256, 9032608, 9408960, 9785312, 10161664
FreeSBIE# mount /dev/ad2s1a  /home/user/root_srv/
FreeSBIE# restore -rf /home/user/dump/root.2011.06.24.img
warning: ./.snap: File exists
expected next file 47105, got 15
6 Правим /etc/fstab и /ets/rc.conf 
7 Бутаемся

2 комментария:

Тема комментирует...

сейчас буду тебя ругать

/sbin/dump -0 -L -f - / > /mnt/stor/dump/root.${DATE}.img
echo 'root is ok'

тут ошибка, потому что ok ты получишь в любом случае, даже если по какой то причине dump не отработает

более разумное решение

/sbin/dump -0 -L -f - / > /mnt/stor/dump/root.${DATE}.img && echo ok || echo Error

ну и второе что, лить все таки лучше куда нить подальше, не всегда есть +50% свободного места, например

dump -0 -L -f - / |ssh user@remote_server "cat - > /dumpdir/root.${DATE}.img"

angel комментирует...

Ладна, ладна, ты прав, дорогой :).
Спасибо за комент ;)