Перенос Ubuntu с обычного диска на MD RAID

Несколько раз добавлял зеркало gmirror для единственного диска во FreeBSD. Даже данные не надо мигрировать - все достаточно просто и документировано.

А вот в Ubuntu 9.10 как то не заладилось, убил практически целый день. Из толковых инструкций, что удалось найти, понравилась вот эта. Многа букав! Инструкция в готовом виде, к сожалению, не подошла.

Основные моменты:

  • Я подключал два диска (основной с системой и чистый для зеркала) одновременно и грузился в Rescue Mode с CD.
  • Создавая массив, я указывал sdXY от чистого диска.
  • Данные копировались командой cd target; dump -0 -f - /dev/source| restore rf - (по привычке, но надо поставить пакет dump).
  • Во все конфигурационные файлы вписывалось /dev/mdX вместо /dev/sdXY.
  • Swap я тоже размещаю на зеркале.

В общем то, загрузившись в режим восстановления, создать массивы на чистом диске и скопирнуть туда данные относительно несложно. Далее нужно поправить /etc/fstab, /etc/mdadm/mdadm.conf, запустить grub и просетапиться в MBR.

Как всегда сложности начинаются при попытке загрузиться с этого диска. Меня все время загружало в grub>.

Находясь в grub> можно загрузить систему такими командами:

kernel /boot/vmli<tab-autocomplete> root=/dev/md0
initrd /boot/init<tab-autocomplete>
boot

Механизм работы grub на 9.10+ для меня до сих пор является загадкой. Совершенно не представляю откуда оно берет настройки, в частности имя загрузочного устройства (md0 vs sdb1).

Попав в шелл решил проблему таким способом.

apt-get purge grub-common grub-pc
apt-get install grub-common grub-pc

Оно само раздуплилось какой диск является корнем и правильно прописало его в /boot/grub/grub.cfg (который генерируется автоматически).

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

Так же в процессе экспериментов (по-моему в Rescue Mode) запускалась команда

apt-get install mdadm
update-initramfs -u

Без них, скорее всего, в initramfs не были бы добавлены модули поддержки MD RAID. Мрак, но заработало.

Leave a comment

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Subscribe without commenting