Dormestmass: Админ — это состояние души

FreeBSD: Перенос рабочей системы

Сегодня в моей жизни свершилось радостное событие. Наконец-то выклянчил себе новехонький системный блок для своего десктопа. И сразу столкнулся с проблемой переноса ОС со старого компутера на новую железку.

Вообщем-то вариантов приглянулось два. В обеих случаях, если аппаратное обеспечение новой системы не аналогично текущему, то весьма желательно предварительно собрать ядро с поддержкой нового железа. Также после переноса скорее всего придется подкорявить файлы конфигурации.

Итак, первый вариант — прицепить винчестер с нового компа к старому системнику и зазеркалить винчестер.

Дело, в общем-то, нехитрое. Прицепив новый жесткий диск нужно предварительно его разбить. Сама процедура разбивки хорошо описана в хэндбуке.

После того, как на новом винчестере созданы слайсы, создадим временное поддерево в файловой системе и монтируем их туда (в данном случае новый hdd у нас /dev/ad1):

oldhost# mkdir /newhdd
oldhost# mkdir /newhdd/root
oldhost# mkdir /newhdd/usr
oldhost# mkdir /newhdd/var
oldhost# mount /dev/ad1s1a /newhdd/root
oldhost# mount /dev/ad1s1f /newhdd/usr
oldhost# mount /dev/ad1s1d /newhdd/var

Далее осуществляем непосредственный перенос данных:

oldhost# rdump -0f - / (cd /newhdd/root && rrestore -uyrf - )
oldhost# rm /newhdd/root/restoresymtable
oldhost# rdump -0f - /usr (cd /newhdd/usr && rrestore -uyrf - )
oldhost# rm /newhdd/usr/restoresymtable
oldhost# rdump -0f - /var (cd /newhdd/var && rrestore -uyrf - )
oldhost# rm /newhdd/var/restoresymtable

Выключаем систему, цепляем новый винчестер в новый системный блок (или просто отключаем старый, в зависимости от наших целей), и наслаждаемся жизнью.

Второй вариант немного сложнее и продолжительнее по времени. Но в ряде случаев, как-раз он и будет предпочтительным. Например, мы имеем опломбированный системный блок или хотим перенести систему на SCSI-диск, а в старом системнике нет контроллера.

В данном случае нам понадобится предустановленная система на новой железке. Заводим на ней пользователя и поднимаем sshd.
Далее выполняем дамп файловых систем по сети. Предварительно на новом хосте нужно создать файлы, в которые будет писаться дамп.

srn@newhost >> touch root.dump usr.dump var.dump
oldhost# setenv RSH /usr/bin/ssh
oldhost# rdump -0uLB 104857600 -f srn@newhost.domain.com:/home/srn/root.dump /
oldhost# rdump -0uLB 104857600 -f srn@newhost.domain.com:/home/srn/usr.dump /usr
oldhost# rdump -0uLB 104857600 -f srn@newhost.domain.com:/home/srn/var.dump /var

Маленькое замечание. Ключ -B служит для указания размера ленты на удаленном хосте (в килобайтах). В нашем случае необходимо указать размер, заведомо больший, чем файл дампа.

Далее восстанавливаем систему из созданных файлов.

newhost# cd / ; rrestore -uyrf /home/srn/root.dump ; rm /restoresymtable
newhost# cd /usr ; rrestore -uyrf /home/srn/usr.dump ; rm /restoresymtable
newhost# cd /var ; rrestore -uyrf /home/srn/var.dump ; rm /restoresymtable

Если нужно, то корректируем файлы конфигурации системы и перезагружаемся.

Популярность: 4%

P.S.

типы солнечных коллекторов
автономное отопление - демонстрация квартиры

Вы можете следить за обсуждением с помощью RSS 2.0 ленты.