
Ich habe eine Debian-Jessie-Box, bei der das RAID-Volume mit dem Betriebssystem verloren gegangen ist. Ich habe also Live USB gebootet, um zu versuchen, den angeschlossenen, SAS-gesteuerten externen Laufwerksschacht mit meinem Daten-RAID6 wiederherzustellen. Dabei werden 3 der 4 angezeigt, und zwar:
>: cat /proc/mdstat
Personalities :
md0 : inactive sda1[0](S) sdc1[2](S) sdb1[1](S)
11718349824 blocks super 1.2
unused devices: <none>
und wieder:
>: mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Raid Level : raid0
Total Devices : 3
Persistence : Superblock is persistent
State : inactive
Name : backup1:0
UUID : a7946015:259ae101:1fed525f:5766e9d5
Events : 381
Number Major Minor RaidDevice
- 8 1 - /dev/sda1
- 8 17 - /dev/sdb1
- 8 33 - /dev/sdc1
Es denkt also, es sei ein seltsames RAID0? Gibt es eine Möglichkeit, ihm zu sagen, es wieder als RAID6 zu verwenden, aber keine Daten zu löschen und keine Laufwerke als Ersatzlaufwerke zu markieren? Ich denke an so etwas wie:
mdadm --stop /dev/md0
mdadm --create /dev/md0 --level=6 --raid-devices=4 --chunk=64 --name=backup1:0 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 --assume-clean
obwohl /dev/sdd1 nicht angezeigt wird. Es sieht fast so aus, als müsste ich mit einigen Flags neu zusammensetzen, um das erneute Schreiben von Daten zu vermeiden, oder jede Festplatte manuell aus md0 entfernen/hinzufügen (aber Sie benötigen mehrere Festplatten für RAID6, also wie machen Sie das?). fdisk für /dev/sdd zeigt:
Disk /dev/sdd: 3.7 TiB, 3999999721472 bytes, 7812499456 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
Disklabel type: gpt
Disk identifier: 27419FEB-5830-4C44-9DC9-00828D0F115A
Device Start End Sectors Size Type
/dev/sdd1 2048 7812497407 7812495360 3.7T Linux RAID
Es gibt dort also wie erwartet eine RAID-Partition. Bei genauerer Betrachtung wird jedoch Folgendes angezeigt:
mdadm --examine /dev/sdd1
mdadm: No md superblock detected on /dev/sdd1.
im Gegensatz zu anderen Laufwerken:
mdadm --examine /dev/sdc1
/dev/sdc1:
Magic : a92b4efc
Version : 1.2
Feature Map : 0x1
Array UUID : a7946015:259ae101:1fed525f:5766e9d5
Name : backup1:0
Creation Time : Tue Jul 19 17:34:55 2016
Raid Level : raid6
Raid Devices : 4
Avail Dev Size : 7812233216 (3725.16 GiB 3999.86 GB)
Array Size : 7812233216 (7450.33 GiB 7999.73 GB)
Data Offset : 262144 sectors
Super Offset : 8 sectors
Unused Space : before=262056 sectors, after=0 sectors
State : active
Device UUID : 4d1d775e:eef629d4:03f15e09:f1762443
Internal Bitmap : 8 sectors from superblock
Update Time : Tue Jul 19 18:17:36 2016
Bad Block Log : 512 entries available at offset 72 sectors
Checksum : 8365777c - correct
Events : 381
Layout : left-symmetric
Chunk Size : 512K
Device Role : Active device 2
Array State : AAAA ('A' == active, '.' == missing, 'R' == replacing)
Ich vermute, dass beim Neuaufbau /dev/sdd1 repariert werden könnte? Gehe ich das richtig an? Ich möchte grundsätzlich keine Daten überschreiben.
Antwort1
Okay, ich habe /dev/md0 gestoppt und es dann als raid6 erstellt, wie:
mdadm --stop /dev/md0
mdadm: stopped /dev/md0
root@debian:/home/user >: cat /proc/mdstat
Personalities :
unused devices: <none>
root@debian:/home/user >: mdadm --create /dev/md0 --level=6 --raid-devices=4 --chunk=64 --name=backup1:0 /dev/sda1 /dev/sdb1 /dev/sdc1 /dev/sdd1 --assume-clean
mdadm: /dev/sda1 appears to be part of a raid array:
level=raid6 devices=4 ctime=Tue Jul 19 17:34:55 2016
mdadm: /dev/sdb1 appears to be part of a raid array:
level=raid6 devices=4 ctime=Tue Jul 19 17:34:55 2016
mdadm: /dev/sdc1 appears to be part of a raid array:
level=raid6 devices=4 ctime=Tue Jul 19 17:34:55 2016
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
root@debian:/home/user >: cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sdd1[3] sdc1[2] sdb1[1] sda1[0]
7812233216 blocks super 1.2 level 6, 64k chunk, algorithm 2 [4/4] [UUUU]
bitmap: 30/30 pages [120KB], 65536KB chunk
unused devices: <none>
Hier sind weitere Einzelheiten zum neu zusammengestellten RAID:
mdadm -D /dev/md0
/dev/md0:
Version : 1.2
Creation Time : Thu Mar 1 22:04:57 2018
Raid Level : raid6
Array Size : 7812233216 (7450.33 GiB 7999.73 GB)
Used Dev Size : 3906116608 (3725.16 GiB 3999.86 GB)
Raid Devices : 4
Total Devices : 4
Persistence : Superblock is persistent
Intent Bitmap : Internal
Update Time : Thu Mar 1 22:04:57 2018
State : clean
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 64K
Name : backup1:0
UUID : c3ef766b:2fe9581a:5a906461:d52ee71e
Events : 0
Number Major Minor RaidDevice State
0 8 1 0 active sync /dev/sda1
1 8 17 1 active sync /dev/sdb1
2 8 33 2 active sync /dev/sdc1
3 8 49 3 active sync /dev/sdd1
Ich schätze, es hat funktioniert! Wenn ich es jetzt mounten will, heißt es
root@debian:/home/user >: mount /dev/md0 raid6
mount: unknown filesystem type 'LVM2_member'
Jetzt muss ich also herausfinden, wie ich LVM-Sachen neu aufbaue, aber das ist ein anderes Thema. Ich hoffe, das hilft jemand anderem, der so etwas durchmacht.