Исходные данные:

  • сервер на базе FreeBSD 8.2;
  • разделы жесткого диска:

ad0s1a    /           2Gb

ad0s1b    swap   2Gb

ad0s1d    / var   20Gb

ad0s1e    /tmp    4Gb

ad0s1a    /usr     30Gb

Этапы переноса:

  • полный backup физической системы;
  • создание виртуальной машины для переноса;
  • создание дисков, слайсов, разделов для восстановления из backup-а;
  • загрузка виртуальной машины для переноса, монтирование разделов для восстановления;
  • восстановление разделов из bakup-а;
  • настройка fstab;
  • запуск виртуальной машины;
  • торжество.

А теперь разберем все эти этапы подробнее.

Backup в FreeBsd можно делать несколькими способами, подробнее об этом написано здесь:http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/backup-basics.html

Воспользуемся командой dump, предварительно смонтировав целевую файловую систему для резервного копирования, например SMB:

#mount_smbfs -W domain //user@server/backup /mnt/backup

#dump -0uLa -f /mnt/dump/root.bak /

#dump -0uLa -f /mnt/dump/var.bak /var

#dump -0uLa -f /mnt/dump/usr.bak /usr

Раздел /tmp архивировать не обязательно.

Далее создаем и устанавливаем виртуальную машину FreeBSD под Hyper-v, либо можно воспользоваться live-cd дистрибутивом, например, Frenzy.

Создаем жесткие диски для конечной системы, учитывая одну тонкость, что под Hyper-v размер диска не должен превышать 30 Gb. Далее размечаем и монтируем диски подключив их к уже установленной виртуальной машине. Например, так:

ad1s1a    /mnt/root           2Gb

ad1s1b    swap   2Gb

ad1s1f    ./mnt/var   22Gb

ad3s1d    /mnt/usr     30Gb

Затем смонтировав файловую систему с резервными копиями разделов восстанавливаем новые разделы:

#mount_smbfs -W domain //user@server/backup /mnt/backup

#cd /mnt/root

#restore -vrf /mnt/backup/root.bak

#cd /mnt/var

#restore -vrf /mnt/backup/var.bak

#cd /mnt/usr

#restore -vrf /mnt/backup/usr.bak

Теперь можно установить загрузчик и скорректировав файл /mnt/root/etc/fstab в соответствии с нашими новыми разделами останавливаем виртуальную машину, подменяем ей диски и запускаем.

В случае если будет прыгать системное время рецепт здесь:http://www.kossoff.ru/2010/02/freebsd-calcru-runtime-went-backwards.html

 


Комментарии

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

обязательно