
мой массив raid6 исчез при перезагрузке после того, как я его увеличил. Я считаю, что проблема была в увеличении в 2 раза с полным диском, а не разделом. Было высказано предположение, что возможная другая причина, по которой диски не были правильно распознаны, заключается в том, что я не обнулил суперблоки перед чтением в новый массив. Это может быть комбинация того и другого? Вот выданные команды (извлечены из истории, отформатированы для получения соответствующих букв дисков):
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sd[b-c]1
#Сделайте полную резервную копию ROC raid 10 на этих дисках, после копирования большинства файлов на другие диски, проверьте, работает ли она после перезагрузки.
mdadm --create /dev/md1 --level=6 --raid-devices=4 /dev/sd[d-g]1
#Время прошло до синхронизации дисков, а затем rsync-данные из md0, перезагрузка прошла нормально.
mdadm -S /dev/md0
mdadm /dev/md0 -r /dev/sd[b-c]
#ОБРАТИТЕ ВНИМАНИЕ НА ОТСУТСТВУЮЩИЙ НОМЕР РАЗДЕЛА.
mdadm /dev/md1 --add /dev/sdb
mdadm /dev/md1 --add /dev/sdc
mdadm -list
mdadm --detail /dev/md1
mdadm --grow --raid-devices=6 --backup-file=/media/FastRaid/md1_grow.bak /dev/md1
После перезагрузки raid6 исчез и был заменен двумя массивами raid0, одним активным (sdb/sdc) и одним неактивным (sdd-sdg). Вот что я получаю при изучении суперблоков:
/dev/sdb1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x0
Array UUID : 501c08da:5069a3d8:b2982a5d:ab56c37c
Name : tim-server:0 (local to host tim-server)
Creation Time : Tue Dec 13 22:01:10 2022
Raid Level : raid0
Raid Devices : 2
Avail Dev Size : 7813770895 (3725.90 GiB 4000.65 GB)
Data Offset : 264192 sectors
Super Offset : 8 sectors
Unused Space : before=264112 sectors, after=0 sectors
State : clean
Device UUID : e8db27d6:0dbd1ac5:4456c304:0b43f09c
Update Time : Tue Dec 13 22:01:10 2022
Bad Block Log : 512 entries available at offset 8 sectors
Checksum : dfd187c0 - correct
Events : 0
Chunk Size : 512K
Device Role : Active device 0
Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdc1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x0
Array UUID : 501c08da:5069a3d8:b2982a5d:ab56c37c
Name : tim-server:0 (local to host tim-server)
Creation Time : Tue Dec 13 22:01:10 2022
Raid Level : raid0
Raid Devices : 2
Avail Dev Size : 7813770895 (3725.90 GiB 4000.65 GB)
Data Offset : 264192 sectors
Super Offset : 8 sectors
Unused Space : before=264112 sectors, after=0 sectors
State : clean
Device UUID : 3ce84b05:607f8565:456e7f83:88b83052
Update Time : Tue Dec 13 22:01:10 2022
Bad Block Log : 512 entries available at offset 8 sectors
Checksum : e35ce3e5 - correct
Events : 0
Chunk Size : 512K
Device Role : Active device 1
Array State : AA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdd1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x1
Array UUID : 929a14c9:adaf502a:53658e03:90a19fce
Name : tim-server:0 (local to host tim-server)
Creation Time : Wed Dec 14 11:18:57 2022
Raid Level : raid6
Raid Devices : 6
Avail Dev Size : 7813770895 (3725.90 GiB 4000.65 GB)
Array Size : 15627540480 (14903.58 GiB 16002.60 GB)
Used Dev Size : 7813770240 (3725.90 GiB 4000.65 GB)
Data Offset : 264192 sectors
Super Offset : 8 sectors
Unused Space : before=264112 sectors, after=655 sectors
State : clean
Device UUID : eaf10189:940aeaf8:947efe82:5d0e4aea
Internal Bitmap : 8 sectors from superblock
Update Time : Sun Dec 18 06:31:11 2022
Bad Block Log : 512 entries available at offset 24 sectors
Checksum : e38a1bd9 - correct
Events : 26630
Layout : left-symmetric
Chunk Size : 512K
Device Role : Active device 1
Array State : AAAAAA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sde1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x1
Array UUID : 929a14c9:adaf502a:53658e03:90a19fce
Name : tim-server:0 (local to host tim-server)
Creation Time : Wed Dec 14 11:18:57 2022
Raid Level : raid6
Raid Devices : 6
Avail Dev Size : 7813770895 (3725.90 GiB 4000.65 GB)
Array Size : 15627540480 (14903.58 GiB 16002.60 GB)
Used Dev Size : 7813770240 (3725.90 GiB 4000.65 GB)
Data Offset : 264192 sectors
Super Offset : 8 sectors
Unused Space : before=264112 sectors, after=655 sectors
State : clean
Device UUID : 5c34a9c7:bcc3f190:d1719a9c:8aa2b722
Internal Bitmap : 8 sectors from superblock
Update Time : Sun Dec 18 06:31:11 2022
Bad Block Log : 512 entries available at offset 24 sectors
Checksum : c429edf - correct
Events : 26630
Layout : left-symmetric
Chunk Size : 512K
Device Role : Active device 3
Array State : AAAAAA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdf1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x1
Array UUID : 929a14c9:adaf502a:53658e03:90a19fce
Name : tim-server:0 (local to host tim-server)
Creation Time : Wed Dec 14 11:18:57 2022
Raid Level : raid6
Raid Devices : 6
Avail Dev Size : 7813770895 (3725.90 GiB 4000.65 GB)
Array Size : 15627540480 (14903.58 GiB 16002.60 GB)
Used Dev Size : 7813770240 (3725.90 GiB 4000.65 GB)
Data Offset : 264192 sectors
Super Offset : 8 sectors
Unused Space : before=264112 sectors, after=655 sectors
State : clean
Device UUID : 12d1e3a8:b8749f59:654bcca4:4f4750df
Internal Bitmap : 8 sectors from superblock
Update Time : Sun Dec 18 06:31:11 2022
Bad Block Log : 512 entries available at offset 24 sectors
Checksum : 7af56ae7 - correct
Events : 26630
Layout : left-symmetric
Chunk Size : 512K
Device Role : Active device 0
Array State : AAAAAA ('A' == active, '.' == missing, 'R' == replacing)
/dev/sdg1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x1
Array UUID : 929a14c9:adaf502a:53658e03:90a19fce
Name : tim-server:0 (local to host tim-server)
Creation Time : Wed Dec 14 11:18:57 2022
Raid Level : raid6
Raid Devices : 6
Avail Dev Size : 7813770895 (3725.90 GiB 4000.65 GB)
Array Size : 15627540480 (14903.58 GiB 16002.60 GB)
Used Dev Size : 7813770240 (3725.90 GiB 4000.65 GB)
Data Offset : 264192 sectors
Super Offset : 8 sectors
Unused Space : before=264112 sectors, after=655 sectors
State : clean
Device UUID : 72085967:835efe92:cb268a64:4d192b52
Internal Bitmap : 8 sectors from superblock
Update Time : Sun Dec 18 06:31:11 2022
Bad Block Log : 512 entries available at offset 24 sectors
Checksum : a5623977 - correct
Events : 26630
Layout : left-symmetric
Chunk Size : 512K
Device Role : Active device 2
Array State : AAAAAA ('A' == active, '.' == missing, 'R' == replacing)
Я в какой-то момент деактивировал md0, поэтому я пересоздал его с помощью mdadm -A -o /dev/md0 /dev/sdb1 /dev/sdc1
. Вот что /proc/mdstat
сейчас:
cat /proc/mdstat
Personalities : [raid0] [linear] [multipath] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active (read-only) raid0 sdb1[0] sdc1[1]
7813770240 blocks super 1.2 512k chunks
md1 : inactive sdf1[0](S) sde1[3](S) sdd1[1](S) sdg1[2](S)
15627541790 blocks super 1.2
unused devices: <none>
Если я попытаюсь, то mount /dev/md0 /media/tmp_md_raid
получу: mount: /media/tmp_md_raid: wrong fs type, bad option, bad superblock on /dev/md126, missing codepage or helper program, or other error.
. Если я попытаюсь, то mdadm -A -o /dev/md1 /dev/sdf1 /dev/sde1 /dev/sdd1 /dev/sdg1
получу:
mdadm: /dev/sdf1 is busy - skipping
mdadm: /dev/sde1 is busy - skipping
mdadm: /dev/sdd1 is busy - skipping
mdadm: /dev/sdg1 is busy - skipping
Все smartctl говорят, что все диски в порядке. Я не уверен, что мне следует сначала попробовать mdadm --assemble --force или mdadm --create --assume-clean. Мне следует попробовать 2-й с -o set, чтобы посмотреть, смогу ли я пересоздать массив и просмотреть данные, не уничтожив восстановление? Спасибо за любой совет.
решение1
Похоже, у вас массив из 6 устройств (AAAAAA), но доступны только 4 компонента устройств ( /dev/sd[defg]1
). Расчет емкости подтверждает это: для создания массива RAID6 объемом 16 ТБ нужно 6 дисков по 4 ТБ.
Поскольку это RAID6 и все 4 доступных устройства, похоже, синхронизированы, его можно запустить, но только в так называемом режимеполностью деградировалрежим. В этом режиме для чтения любого блока необходимо прочитать полосу со всех дисков (что требует интенсивного ввода-вывода) и выполнить реконструкцию (используются оба синдрома четности, что требует интенсивного использования процессора при вычислениях поля Галуа), а для записи блока необходимо прочитать всю полосу, вычислить новые синдромы четности и записать данные как минимум на три устройства (что в целом требует еще более интенсивного ввода-вывода).
У Linux нет другого пути, кроме как вернуться к этому, если массив работал, и какое-то устройство вышло из строя в середине использования, в этом и заключается весь смысл RAID-массива. Как вы могли догадаться, производительность в этом состоянии очень плохая, а риск потери данных очень высок, поэтому вам не следует запускать массив в этом состоянии в течение длительных промежутков времени. В идеале вы предоставляете горячий резерв в дополнение к рабочим устройствам, чтобы он мог начать восстановление немедленно, как только обнаружит отказ любого компонента.
Но во время загрузки он не знает, отсутствуют ли какие-то устройства навсегда или они просто пока недоступны из-за ступенчатой раскрутки или других задержек инициализации. Ранняя активация массива выведет из синхронизации поздние устройства и заставит выполнить длительную повторную синхронизацию, во время которой массив будет испытывать наихудшие характеристики производительности, как описано выше. Это мотивирует ждать поздних устройств. Linux не будет активировать частично доступный массив автоматически по умолчанию, даже если есть достаточно устройств, чтобы запустить его хотя бы в каком-то деградированном режиме.
Но вы, администратор, можетесилаэто сделать так. Для этого,соберите массив заново с помощью--force
:
mdadm --stop /dev/md1
mdadm --force --assemble /dev/md1 /dev/sd[defg]1
Точнее, он не будет автоматически собирать массив, если доступных устройств меньше, чем записано в суперблоках текущих устройств (в вашем случае записано, что все устройства были доступны в прошлый раз); когда вы удаляете устройство должным образом с помощью последовательности mdadm -f
/ mdadm -r
или при принудительной сборке, он записывает это, и массив затем будет автоматически собран втакой жедеградировавшее состояние автоматически.
Если этот массив не содержит ценных данных, лучше пересоздать его. Инициализация чувствуетБыстреечем добавление устройств и страдание от реконструкции.