Восстановление суперблока MDADM

После цикла включения и выключения питания я нашел свой Массив RAID 5, больше не работающий. Я попробовал различные методы для повторной сборки массива, но ничто не работало до сих пор. Я полагаю, что должен воссоздать суперблоки и UUID так или иначе, но отказывался нестись во что-то относительно не, теряют набор данных. Спасибо за чтение.

cat /etc/mdadm/mdadm.conf:

DEVICE partitions
ARRAY /dev/md0 level=raid5 num-devices=4 metadata=0.90 UUID=fd522a0f:2de72d76:f2afdfe9:5e3c9df1
MAILADDR root

Который нормален. Это должно иметь диски на 4x2000 ГБ (sda, sdc, sde, sdd).

cat /proc/mdstat:

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md0 : inactive sdd[1](S)
  1953514496 blocks

unused devices: <none>

Это - проблема. Это только показывает один диск в массиве, и это также неактивно. Массив должен иметь sda, sdc, и sde там также. Когда я делаю a mdadm --examine /dev/sdd все выглядит хорошо. На других дисках исследуют, говорит что никакой суперблок RAID относительно/dev/sdX.

mdadm --examine --scan:

ARRAY /dev/md0 level=raid5 num-devices=4 metadata=0.90 UUID=fd522a0f:2de72d76:f2afdfe9:5e3c9df1

Никакая справка там.

mdadm --assemble --scan -v:

mdadm: looking for devices for /dev/md0
mdadm: no RAID superblock on /dev/sde
mdadm: /dev/sde has wrong uuid.
mdadm: cannot open device /dev/sdd: Device or resource busy
mdadm: /dev/sdd has wrong uuid.
mdadm: no RAID superblock on /dev/sdc
mdadm: /dev/sdc has wrong uuid.
mdadm: cannot open device /dev/sdb5: Device or resource busy
mdadm: /dev/sdb5 has wrong uuid.
mdadm: no RAID superblock on /dev/sdb2
mdadm: /dev/sdb2 has wrong uuid.
mdadm: cannot open device /dev/sdb1: Device or resource busy
mdadm: /dev/sdb1 has wrong uuid.
mdadm: cannot open device /dev/sdb: Device or resource busy
mdadm: /dev/sdb has wrong uuid.
mdadm: no RAID superblock on /dev/sda
mdadm: /dev/sda has wrong uuid.

От этого похоже, что у меня нет UUID и никаких Суперблоков для sda, sdc, и sde.

sudo fdisk -l

Disk /dev/sda: 2000.4 GB, 2000397852160 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907027055 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sda doesn't contain a valid partition table

Disk /dev/sdb: 250.1 GB, 250058268160 bytes
255 heads, 63 sectors/track, 30401 cylinders, total 488395055 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x353cf669

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1              63   476327249   238163593+  83  Linux
/dev/sdb2       476327250   488392064     6032407+   5  Extended
/dev/sdb5       476327313   488392064     6032376   82  Linux swap / Solaris

Disk /dev/sdc: 2000.4 GB, 2000397852160 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907027055 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdc doesn't contain a valid partition table

Disk /dev/sdd: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdd doesn't contain a valid partition table

Disk /dev/sde: 2000.4 GB, 2000397852160 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907027055 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sde doesn't contain a valid partition table

Таким образом от этого похоже, что ни один из моих дисков RAID не имеет таблицу разделов или UUID. Самой близкой вещью, которую я нашел к своей проблеме, был этот поток, который предложил работать mdadm --create /dev/md0 -v -l 5 -n 4 /dev/sda /dev/sdc /dev/sde /dev/sdd и проверка допустимую файловую систему с fsck -fn /dev/md0. Однако первая команда выложена mdadm: no raid-devices specified. Я повторил команду с помощью sda1, sdc1, и т.д., но затем я получаю это:

mdadm: layout defaults to left-symmetric
mdadm: chunk size defaults to 512K
mdadm: layout defaults to left-symmetric
mdadm: layout defaults to left-symmetric
mdadm: super1.x cannot open /dev/sda1: No such file or directory
mdadm: ddf: Cannot open /dev/sda1: No such file or directory
mdadm: Cannot open /dev/sda1: No such file or directory
mdadm: device /dev/sda1 not suitable for any style of array

Если я делаю создавание и оставляю sda1 как "недостающую" переменную в команде затем, это просто говорит то же самое для sdc1.

Я уверен, что делаю это более сложным, чем это должно быть. Может кто-то с опытом помогать мне? Спасибо за внимание заранее.

*отредактируйте*, Когда я буду работать dumpe2fs /dev/sda я добираюсь:

dumpe2fs 1.41.14 (22-Dec-2010)
Filesystem volume name:   <none>
Last mounted on:          <not available>
Filesystem UUID:          bbe6fb91-d37c-414a-8c2b-c76a30b9b5c5
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype     needs_recovery sparse_super large_file
Filesystem flags:         signed_directory_hash 
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              366288896
Block count:              1465135872
Reserved block count:     73256793
Free blocks:              568552005
Free inodes:              366066972
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      674
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         8192
Inode blocks per group:   512
Filesystem created:       Wed Oct 28 12:23:09 2009
Last mount time:          Tue Oct 18 13:59:36 2011
Last write time:          Tue Oct 18 13:59:36 2011
Mount count:              17
Maximum mount count:      26
Last checked:             Fri Oct 14 17:04:16 2011
Check interval:           15552000 (6 months)
Next check after:         Wed Apr 11 17:04:16 2012
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:           256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory hash:   half_md4
Directory Hash Seed:      17e784d8-012e-4a29-9bbd-c312de282588
Journal backup:           inode blocks
Journal superblock magic number invalid!

Таким образом, материал все еще там. Все еще исследование...

6
задан 14 August 2012 в 19:18

3 ответа

Ура! Какой маринад. давай посмотрим, сможем ли мы тебя разобрать. Начнем с обзора ваших дисков и таблиц разделов:

sda - no partition table
sdb - sdb1 [Linux] sdb2 [Linux extended] sdb5 [swap]
sdc - no partition table
sdd - no partition table
sde - no partition table
  1. Ни один из них не помечен fd Linux raid autodetect , который является значением по умолчанию
  2. Вы не используете разделы для организации дискового пространства [0 ]
  3. Похоже, у вас весь диск отформатирован для ext2 / 3 и используется весь disk как часть raidset

Последний момент, я думаю, вы были отменены. Скрипты инициализации, вероятно, думали, что вам нужно выполнить fsck, работоспособность проверила тома и стерла суперблок MD в процессе. dumpe2fs не должен возвращать ничего для томов, являющихся частью набора RAID .

Возьмем, к примеру, мой RAID:

root@mark21:/tmp/etc/udev# fdisk -l /dev/sda

Disk /dev/sda: 640.1 GB, 640135028736 bytes
255 heads, 63 sectors/track, 77825 cylinders, total 1250263728 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0000ffc4

Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048  1240233983   620115968   fd  Linux raid autodetect

root@mark21:/tmp/etc/udev# dumpe2fs /dev/sda1
dumpe2fs 1.41.14 (22-Dec-2010)
dumpe2fs: Bad magic number in super-block while trying to open /dev/sda
Couldn't find valid filesystem superblock.

То, что вы вообще смогли воссоздать набор RAID, очень удачно, но это не меняет фундаментальных недостатков вашего развертывания. Это повторится снова .

Я бы порекомендовал следующее:

  1. Сделайте резервную копию всего в этом наборе рейдов
  2. Уничтожьте массив и сотрите суперблок md с каждого устройства (man mdadm)
  3. Обнулите эти диски: dd if = / dev / zero of = / dev / sdX bs = 1M count = 100
  4. Создайте разделы на sda, sdc, sdd и sdf, которые охватывают 99% диска [0 ]
  5. Пометьте эти разделы как type fd linux-raid wiki
  6. никогда не форматируйте эти разделы с какой-либо файловой системой
  7. Создайте новый RAID 5: mdadm --create / dev / md0 -v -f -l 5 -n 4 / dev / sda1 / dev / sdc1 / dev / sdd1 / dev / sde1
  8. Обновить новый UUID в /etc/mdadm.conf
  9. Жить долго и счастливо

I из вашего описания предположите, что sdb - это ваш системный диск, и это нормально. Только убедитесь, что вы случайно не добавили это в свой набор рейдов. После этого вы должны быть на правильном пути и никогда больше не столкнетесь с этой проблемой.

[0] Однажды я столкнулся с очень неприятной ошибкой на дисках SATA, на которых было много плохих блоков. После использования инструмента поставщика для восстановления диска. Мой когда-то идентичный набор дисков стал уникальным, у неисправного диска теперь было на несколько блоков меньше, чем до начала низкоуровневого форматирования, что, конечно же, разрушило мою таблицу разделов и помешало этому диску снова присоединиться к набору MD RAID.

Hard на дисках обычно есть «свободный список» резервных блоков, используемых только на всякий случай. Моя теория состоит в том, что этот список должен быть исчерпан, и, поскольку это не был корпоративный диск, вместо того, чтобы отказать и дать мне возможность отправить его для восстановления данных, он решил усечь мои данные и изменить размер всего disk in.

Поэтому я больше никогда не использую весь диск при создании набора RAID, а вместо этого использую 95–99% доступного свободного пространства при создании раздела, который обычно занимает весь диск. Это также дает вам дополнительную гибкость при замене отказавших элементов. Например, не все диски объемом 250 ГБ имеют одинаковое количество свободных блоков, поэтому, если вы занижете максимальное значение с приемлемым запасом, вы можете использовать диск практически любой марки для замены отказавшего элемента.

4
ответ дан 14 August 2012 в 19:18

У меня была такая же проблема и раньше, и я не документировал ее (и был некоторое время назад).

Я вспоминаю что-то об использовании e2fsck -b /dev/sdX и при попытке резервного копирования секторов суперблока

вы также можете взглянуть на TestDisk

1
ответ дан 14 August 2012 в 19:18

Прошло некоторое время с момента вашего сообщения, но я напишу следующее:

«mdadm: не удается открыть устройство / dev / sdb1: Устройство или ресурс занят»

это хорошо для проверки

cat / proc / mdstat

Я полагаю, ваш диск подключен к какому-то raid ex. / dev / md126

Если да, остановите рейд

mdadm --stop / dev / md125

, а затем попробуйте собрать ваш рейд / dev / md0

mdadm --assemble --verbose --update сводки / dev / md0 / dev / sda3 / dev / sdb3 / dev / sdc3 / dev / sdd3

НО: Более важный вопрос:

НЕ ИСПОЛЬЗУЙТЕ RAID 5 С ДИСКОМ БОЛЬШЕ 1,5 ТБ !!!

Частота невосстановимых битовых ошибок

Это скорость, с которой диск не сможет восстановить данные после применения циклического резервирования коды проверки (CRC) и несколько попыток. Скорость UBE (неустранимая битовая ошибка) обычно указывается как 1 бит из 10 ^ 15 для дисков корпоративного класса (SCSI, FC, SAS) и 1 бит из 10 ^ 14 для дисков настольного класса (IDE / ATA / PATA, SATA). . (так что каждые ~ 1,7 ТБ)

Таким образом, если один из ваших дисков выйдет из строя, есть ~ 55% шанс, что он НЕ будет восстанавливать (для UBE 10 ^ -14) Удачи ...

подробнее здесь: http://www.raidtips.com/raid5-ure.aspx

0
ответ дан 14 August 2012 в 19:18

Другие вопросы по тегам:

Похожие вопросы: