Я делал так:
Устанавливаешь mdadm. При установке отвечаешь "да" на вопрос о том, разрешать ли грузиться с неполного массива. Если не спросит - делаешь
dpkg-reconfigure -plow mdadm
после установки. Если попросит поставить postfix - в конфигурации указывай local delivery only.
Ставишь второй диск.
Диск должен быть больше текущего, либо на текущем должно быть место, которым можно пожертвовать при переносе (swap-раздел например), чтобы можно было разместить суперблоки рейдов. Примерно 128K дополнительного места на каждый раздел. Если ни того ни другого нет, придётся заморочиться с resize2fs.
Размечаешь его под рейд (размеры разделов должны быть БОЛЬШЕ разделов на текущем диске, чтобы суперблоки влезли), типы разделов указываешь fd (Linux raid autodetect).
Создаёшь на нём рейд(ы) mirror (второй диск указываешь как missing).
mdadm --create /dev/md<#> --raid-devices=2 --level=mirror /dev/<раздел> missing
Делаешь
mdadm --detail --scan
Из этого тебе нужны только имена и UUID массива.
Примерно такой финт ушами должен прокатить:
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
nano /etc/mdadm/mdadm.conf
В конце будет две строчки. Из них оставляешь только
ARRAY /dev/<whatever> UUID=<whatever>
Всё остальное УДАЛЯЕШЬ. Во-первых, мусор (в суперблоках эта инфа уже есть), во-вторых, будет мешать автодетекту при загрузке.
Пересобираешь initrd.
update-initramfs -vu | tee /var/log/update-initramfs=$(date +%F-%H%M).log
Ремонтируешь систему в RO.
mount /dev/<раздел> -o remount,ro
Копируешь раздел(ы) на рейд(ы).
dd if=/dev/<раздел> of=/dev/md<#> bs=$(( 4096 * 1024 )) iflag=direct oflag=direct
(Это надолго, да.)
Ставишь загрузчик на рейд.
Пока ещё ничего не случилось. Перезагружаешь систему. Лучше сразу войти в рекавери консоль.
Должны появиться разделы рейда. Смотришь, какие разделы какие.
blkid
Внимательно смотришь на UUID'ы mdX разделов, они должен совпасть с теми, с которых ты копировал информацию. По идее.
Не помешает прогнать e2fschk по mdX девайсам, поскольку система была переведена в RO "на ходу", и некоторые записи журналов могут быть повреждены.
Выключаешь систему, отключаешь старый диск,
подключаешь вместо него тот, что с рейдом. Включаешь систему. Всё должно загрузиться в нормальном режиме.
После того, как убедишься, что система нормально работает, можно подключать старый диск, сносить с него существующую разметку, копировать разметку диска с рейдом, и добавлять диски в соответствующие массивы.
mdadm /dev/md<#> --add /dev/<раздел>
Синхронизация рейда начнётся автоматически.
После синхронизации не забудь повторно установить загрузчик (см. выше), это нужно для того, чтобы загрузочные записи добавились одинаково для всех элементов массива.