Вот небольшая справка о текущей ситуации. У меня есть DELL Precision T7600, за обслуживание которого я отвечаю, который только что потерял жесткий диск, к счастью, на нем был только каталог / home, и теперь он восстановлен. Теперь мне было поручено создать RAID 1 диска с ОС, чтобы время простоя было минимальным.
Я читал о клонировании жесткого диска в вики Arch-Linux, но не мог осмыслить этот процесс. Возможно, я делаю это слишком сложным, и это простой dd if=/dev/sdc of=/dev/md126
командование, но я просто хочу убедиться, прежде чем я займусь этим в одиночку.
В настоящее время я жду, когда массив повторно синхронизируется с чистыми новыми дисками (см. Мой другой вопрос если тебе интересно). Полагаю, это необходимо. Что было бы, если бы я решил dd
в массив прямо сейчас? Будет ли просто рушиться? И пока я жду, id dd
ing в массив из файла устройства даже возможно или рекомендуется? Я не уверен, что здесь лучше всего.
Спасибо за ваше время и вклад!
ОБНОВЛЕНИЕ 1
Я попытался dd
ing на устройство / dev / md0, но оно было немного меньше оригинала, поэтому я получил ошибку от dd
о невозможности скопировать на /dev/md0
. Кроме того, я попытался загрузиться с этого массива, но наткнулся на error: file '/grub/i386-pc/normal.mod' not found.
и был помещен в grub rescue>
, с которыми я не знаю, что делать. Итак, я попытался смонтировать массив, чтобы сделать grub-install
на нем, но потерпел неудачу, поскольку mount
сказал мне: unknown filesystem type 'linux_raid_member'
ОБНОВЛЕНИЕ 2
Я отказался от массива RAID1 и выполнил следующую команду, чтобы клонировать свой диск с ОС на два пустых диска:
sudo pv /dev/sdc | tee >(dd of=/dev/sda) >(dd of=/dev/sdb) | dd of=/dev/null
Это успешно клонировало мой диск с ОС, без ошибок grub, таких как первая попытка. Grub загрузился, но не загрузил ОС, и я был брошен в аварийный режим dracut. Я вышел из этого, выполнив следующие команды со своего LiveUSB sfdisk -d /dev/sdc | sfdisk /dev/sda
и то же самое для sdb
.
На этот раз Fedora загрузилась, но я был брошен в аварийный режим, что вызвано, по крайней мере, в моем случае, поскольку я уже имел дело с этим раньше, отсутствием /etc/fstab
записи. Поэтому я обрезал fstab, чтобы монтировать только /
раздел.
Теперь я постараюсь создать массив RAID, прекрасно зная, что это уничтожит таблицу разделов, поэтому сначала я сделаю резервную копию, и, надеюсь, после запуска:
sudo mdadm --create --verbose /dev/md0 --level=mirror --raid-devices=2 /dev/sda /dev/sdb
с моего Live USB-накопителя у меня будет массив RAID1. Или это может закончиться тем, что я уничтожу таблицу разделов и мне придется перезагрузить ее снова. Или мне, возможно, придется переиздать dd
команду и подождите еще 20 часов, посмотрим :)!
Не хватает некоторой информации, например, какова структура разделов и насколько заполнен SDC? Предполагая, что где-то достаточно свободного места:
Во-первых, самый простой способ - создать разделы / dev / sda1 и / dev / sdb1, которые будут содержать каталог / boot вне массива raid. Как только они будут созданы, вы можете скопировать содержимое каталога active / boot в новые разделы / boot. Предполагая, что у вас есть место для сохранения sdc: есть пакет fsarchiever, который сделает это за вас. Вот как это сделать:
Первый шаг - сохранить вашу текущую систему:
fsarchiever savefs filename1.fsa / dev / sdc1
повторить это для всех разделов
Во-вторых, создайте структуру разделов на sda и sdb. sda1 и sdb1 - это раздел / boot. Затем создайте раздел LVM с оставшимся дисковым пространством на sda2 и sdb2. Это можно сделать с помощью gparted.
В-третьих, можно восстановить сохраненные разделы sdc:
fsarchiever restfs filename.fsa1 id = 0, dest = / dev / md0 / partition_id1
повторить для других разделов.
В-четвертых, затем создайте / mnt / root на текущем запущенном sdc и смонтируйте новый корневой раздел LVM.
Поскольку каталог / boot теперь находится в / dev / sda1 и / dev / sdb1, вам придется удалить эту информацию из нового раздела / root и создать запись в новом / etc / fstab для монтирования раздела / dev / sda1 на / корень / boot. Теперь все остальные разделы, а также / dev / proc / и / sys необходимо смонтировать в / mnt / root / .. (см. Руководство по chroot). Теперь вы можете выполнить chroot в / mnt / root. Вы можете проверить среду и выполнить grub2-mkconfig, grub2-install / dev /. как только это будет установлено, вы можете загрузиться с новой парой устройств sda-sdb