Я настроил свой настольный компьютер на использование программного raid 0 в Ubuntu при первой настройке. Поскольку оказывается, что восстановление с обновлением Ubuntu (которое всегда ломает вещи) с /dev /md0 сложнее, чем /dev /sda1, я думал попытаться отменить его. Есть ли способ сделать раздел-член raid0 разделом ext3, не копируя все заново и не перезаписывая grub, initrd и все такое?
1 ответ
Поскольку данные в RAID 0 распределяются по всем дискам, практически нет простого способа конвертировать любой из дисков в любую другую файловую систему. Конец истории.
Это может быть, если ваш RAID-массив имеет достаточно свободного места и вы используете разделы для массива, а не весь диск (то есть /dev/sda1
, а не /dev/sda
).
Возможно, вы сможете сначала сжать массив, создав простые файловые системы ext3 в конце дисков, если у вас будет более половины свободного массива. После того, как вы избавитесь от RAID 0, вам все равно придется копировать данные пару раз, чтобы получить полноразмерные разделы ext3 на дисках.
Итак, чтобы следовать совершенно непроверенной идее:
- загрузиться в систему восстановления (например, Ubuntu Live CD работает нормально)
активировать необходимые модули
modprobe md multipath raid0
(что-то еще ..?)активировать массив RAID
cp /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.backup
mdadm --examine --scan >> /etc/mdadm/mdadm.conf
mdadm -A --scan
проверить фс
e2fsck -f /dev/md0
сжать фс
resize2fs /dev/md0 30G
[оставляя достаточно места в зависимости от используемого дискового пространства, здесь <30G!])сжать массив RAID
mdadm --grow /dev/md0 --size=36700160
(размер в КиБ: 35 * 1024 ^ 2 [здесь тоже оставьте место!])увеличить фс до максимального размера
resize2fs /dev/md0
снова запустите fs check (чтобы быть уверенным)
e2fsck -f /dev/md0
Теперь у вас есть RAID 0 в начале дисков и свободное место в конце. Здесь вам может понадобиться использовать fdisk
для сжатия раздела RAID и создания новых разделов для ext3.
Тогда ты можешь
сделать нормальный фс в свободном дисковом пространстве
mke2fs ...
(как хочешь)скопировать данные из RAID в ext3
cp ...
удалить массив RAID
sudo umount /dev/md0
sudo mdadm --stop /dev/md0
(остановить массив)
sudo mdadm --zero-superblock /dev/sdx /dev/sdy ...
(очистить суперблоки каждого диска в массиве!)
sudo mdadm --remove /dev/md0
(удалить массив)сделать ext3 в начало одного из дисков
mke2fs ...
скопировать данные с одного из дисков
сделать один раздел на диск, сделать на нем ext3 fs
скопировать данные обратно на полный диск фс
повторите для всех оставшихся дисков (перебирая данные, пока на половинных дисках RAID-half ext3 не останется никаких данных)
Обратите внимание, что я не проверял эту процедуру, и вы должны сделать полную резервную копию ваших данных! (Как всегда при выполнении чрезмерных операций с диском.) Кроме того, операции с fdisk
обычно требуют перезагрузки, поэтому вы должны всегда внимательно следить за состоянием вашей системы.
В общем, я думаю, что гораздо проще просто сделать новую установку на ext3 и скопировать данные с RAID 0.