У меня есть установка CentOS с sw RAID5, в которой хранятся мои данные. Что ж, сервер умер, поэтому я купил еще одну коробку, чтобы перенести на нее свои диски. Единственное, что я не могу восстановить массив RAID (даже не уверен, что он нуждается в перестройке, возможно, просто нужно создать отображение / dev / md0 ... но я даже не знаю, как определить, что мне нужно!)
Некоторые детали:
У меня приличный опыт работы со стандартными средствами Linux, но аппаратный уровень меня запускает по кругу. Я потратил некоторое время на поиск в Google и в других местах здесь, на SF, поэтому, пожалуйста, будьте любезны с моими вопросами новичков :).
У меня такой вопрос: как диагностировать проблему? Насколько мне известно, я использую неправильные блоки устройств, когда пытаюсь перестроить массив, но я не могу найти команду для отображения только устройств, имеющих какое-либо физическое подключение.
Есть ли какой-нибудь простой способ запустить mdadm, просканируя все мои физические диски и сказать: «Эй, диски 2,5,6,7 - это программный массив, хотите, чтобы я его смонтировал?»
Я просто взял диски из своей старой коробки и вставил их в новую. Они появляются в BIOS. Какие шаги мне нужно предпринять, чтобы запустить, запустить и смонтировать массив?
Заранее спасибо!
Если у вас нет резервных копий данных, будьте осторожны. Ничего из этого не представляет особой сложности, но, безусловно, стоит продвигаться медленно и обдуманно, если это единственная копия ваших данных. Вы можете легко выбросить свои данные, если сделаете неправильный поступок.
Теоретически mdadm --assemble --scan --auto-update-homehost
команда сделает то, что вы хотите. Он будет слепо пытаться выполнить автоматическую сборку и обновить любые обнаруженные массивы. Если у вас есть резервная копия массива и вы не против вести себя опасно, вы можете попробовать это.
Если вы хотите делать что-то «вручную», вам сначала нужно найти все устройства, на которых хранится массив. Вы можете посмотреть результат dmesg
найти устройства. Ищите записи вроде hdg: 488397168 sectors (250059 MB) ...
. Вы должны иметь возможность идентифицировать все устройства, подключенные к системе.
Использовать fdisk -l
команда для отображения разделов на диске. Вот пример вывода:
[root@srv02 ~]# fdisk -l
...
Disk /dev/hdg: 250.0 GB, 250059350016 bytes
255 heads, 63 sectors/track, 30401 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hdg1 1 30401 24961765 fd Linux raid autodetect
...
Я вырезал вывод, чтобы показать один образец устройства (диск емкостью 250 ГБ с одним разделом RAID программного обеспечения Linux на нем). Вы должны увидеть в списке таблицы разделов нескольких устройств.
Вы можете просмотреть суперблок на разделе с помощью mdadm --examine device
команда, например:
[root@srv02 ~]# mdadm --examine /dev/hdg1
/dev/hdg1:
Magic : a92b4efc
Version : 00.90.00
UUID : 3c8b281e:715ce6bb:39297707:3bc149b6
Creation Time : Mon Dec 17 17:28:35 2005
Raid Level : raid5
Used Dev Size : 243593472 (232.31 GiB 249.44 GB)
Array Size : 1217967360 (1161.54 GiB 1247.20 GB)
Raid Devices : 6
Total Devices : 6
Preferred Minor : 1
Update Time : Mon Mar 22 20:45:56 2010
State : clean
Active Devices : 6
Working Devices : 6
Failed Devices : 0
Spare Devices : 0
Checksum : 6d966f24 - correct
Events : 0.10988
Layout : left-symmetric
Chunk Size : 256K
Number Major Minor RaidDevice State
this 1 34 3 1 active sync /dev/hdg1
0 0 33 3 0 active sync /dev/hde1
1 1 34 3 1 active sync /dev/hdg1
2 2 56 3 2 active sync /dev/hdi1
3 3 57 3 3 active sync /dev/hdk1
4 4 88 3 4 active sync /dev/hdm1
5 5 89 3 5 active sync /dev/hdo1
Вы можете видеть, что устройства для всех составляющих томов массива записаны в суперблок. Ваша новая установка, вероятно, не назначает те же устройства томам, так что массив не собирается автоматически.
Изучите все разделы, которые вы ожидаете стать частью набора RAID, как указано выше. Все тома компонентов данного массива будут иметь одинаковый UUID. После того, как вы найдете все части, соберите массив заново, используя mdadm --assemble
команда, записывая новые устройства обратно в суперблок следующим образом (заменяя /dev/mdX
с устройством MD, в которое вы хотите собрать массив, и / dev / partition0 и т. д. с томами-членами массива):
mdadm --assemble --update=homehost /dev/mdX /dev/partition0 /dev/partition1 ... /dev/partition6
Это соберет массив и обновит суперблок с новым именем хоста и устройствами. После этого вы можете cat /proc/mdstat
чтобы увидеть состояние массива. Наконец, вы можете mdadm --detail --scan >> /etc/mdadm.conf
чтобы записать детали массива в файл /etc/mdadm.conf.