Server möchte nicht vom "richtigen" RAID booten

s24!

Registered User
Guten Abend Community,

ich habe hier einen Debian Squeeze-Server, dessen Platten im RAID-1 (md0 swap, md1 ext4) mehr oder weniger zeitgleich kaputtgegangen sind - ein Rebuild funktionierte nicht mehr, zu viele Fehler auf der noch intakten Platte.

Ich habe daraufhin als "Notlösung", um die Kiste ohne Backupeinspielung und Downtime am Leben zu halten, ein md2 angelegt, die neue Platte aus dem md1 hinausgeworfen und ins md2 hinzugefügt. Dieses wurde mit zwei Devices angelegt und neben genannter neuer Platte mit einem "missing" als Platzhalter ausgestattet, um später die fehlende Platte aus md1 (nach deren Datenrettung und Tausch) ins RAID hängen zu können.
Bewusst hatte ich jetzt also zwei "degraded" RAID-Arrays.

=> Daten synchronisiert, ... - da hänge ich jetzt. Mir gelingt es einfach nicht, den Server vom richtigen Array zu booten.

In der fstab steht /dev/md2 für den Root-Mountpoint drin, in /boot/grub/grub.cfg wurde jedes "md1" durch "md2" ersetzt (natürlich auf beiden Platten, besser gesagt in beiden RAID-Verbunden).

Das md2 ist auch durchaus mountbar (--bind ftw - da laufen aktuell die eigentlichen Applikationen des Servers), und wirklich schlau werde ich aus dem syslog beim Booten nicht:

Code:
Aug 28 01:12:12 web3 kernel: [    5.688760] md: md2 stopped.
Aug 28 01:12:12 web3 kernel: [    5.706857] raid1: raid set md2 active with 1 out of 2 mirrors
Aug 28 01:12:12 web3 kernel: [    5.706927] md2: detected capacity change from 0 to 2966229941248
Aug 28 01:12:12 web3 kernel: [    5.707438]  md2: unknown partition table

cat /proc/mdstat sagt:

Code:
root@web3 ~ # cat /proc/mdstat 
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md127 : active (auto-read-only) raid1 sda1[2]
      33553336 blocks super 1.2 [2/1] [U_]
      
md2 : active raid1 sdb2[1]
      2896708927 blocks super 1.2 [2/1] [_U]
      
md1 : active raid1 sda2[2]
      2896708927 blocks super 1.2 [2/1] [U_]
      
md0 : active (auto-read-only) raid1 sdb1[3]
      33553336 blocks super 1.2 [2/1] [_U]
      
unused devices: <none>

Solange ich das md2 noch nicht gemountet habe, taucht es ebenfalls als "auto-read-only" auf.

Insgesamt verstehe ich hier das Serververhalten einfach nicht bzw. finde keinen Ansatz zu meinem Fehler.
Auch das Auftauchen des md127 ist mit schleierhaft.

Die Maschine scheint auch zu glauben, das Richtige zu tun:

Code:
root@web3 ~ # df -h
Filesystem            Size  Used Avail Use% Mounted on
[B]/dev/md2              2.7T  960G  1.7T  37% /[/B]
tmpfs                  16G     0   16G   0% /lib/init/rw
udev                   16G  148K   16G   1% /dev
tmpfs                  16G     0   16G   0% /dev/shm
/dev/md2              2.7T   14G  2.6T   1% /mnt/md2


Vielen Dank vorab für Hinweise dazu, was ich falsch mache! ;)


Grüße
 
Guten Abend,

anbei die Ausgabe:

Code:
root@web3 ~ # fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 3000.6 GB, 3000592982016 bytes
256 heads, 63 sectors/track, 363376 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1      266306  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 3000.6 GB, 3000592982016 bytes
256 heads, 63 sectors/track, 363376 cylinders
Units = cylinders of 16128 * 512 = 8257536 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1      266306  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

Disk /dev/md0: 34.4 GB, 34358616064 bytes
2 heads, 4 sectors/track, 8388334 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

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

Disk /dev/md1: 2966.2 GB, 2966229941248 bytes
2 heads, 4 sectors/track, 724177231 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

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

Disk /dev/md2: 2966.2 GB, 2966229941248 bytes
2 heads, 4 sectors/track, 724177231 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

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

Disk /dev/md127: 34.4 GB, 34358616064 bytes
2 heads, 4 sectors/track, 8388334 cylinders
Units = cylinders of 8 * 512 = 4096 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

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

Ich hatte das schonmal geprüft und konnte keinen Fehler finden. Ihr vielleicht?

Hier noch das, was parted mir verrät (auch da kann ich keinen Fehler finden):

Code:
root@web3 ~ # parted 
GNU Parted 2.3
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print 
Model: ATA ST3000DM001-9YN1 (scsi)
Disk /dev/sda: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 3      1049kB  2097kB  1049kB                     bios_grub
 1      2097kB  34.4GB  34.4GB                     raid
 2      34.4GB  3001GB  2966GB                     raid

(parted) select /dev/sdb                                                  
Using /dev/sdb
(parted) print                                                            
Model: ATA ST3000DM001-9YN1 (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 3      1049kB  2097kB  1049kB                     bios_grub
 1      2097kB  34.4GB  34.4GB                     raid
 2      34.4GB  3001GB  2966GB                     raid

(parted)


Viele Grüße
 
Was haltet ihr von der Idee, die Festplatte mit dem "falschen" RAID einmal aus der device.map zu nehmen und anschließend zu rebooten?
(Wobei ich mir da keine Besserung vorstellen kann...)
 
Code:
root@web3 ~ # cat /proc/mdstat 
Personalities : [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
md127 : active (auto-read-only) raid1 sda1[2]
      33553336 blocks super 1.2 [2/1] [U_]
      
md2 : active raid1 sdb2[1]
      2896708927 blocks super 1.2 [2/1] [_U]
      
md1 : active raid1 sda2[2]
      2896708927 blocks super 1.2 [2/1] [U_]
      
md0 : active (auto-read-only) raid1 sdb1[3]
      33553336 blocks super 1.2 [2/1] [_U]
[/QUOTE]

Bauchgefühl: du hast ein problem mit doppelt vergebenen UUIDs o.ä.
# mdadm --examine --scan

eventuell musst du sdb2 nochmal mit "mdadm --zero-superblock sdb2" zurücksetzen. (achtung, destruktiver befehl)

am Rande: raid0 für swap ist unnütz, der kernel verteilt automatisch "intelligent" die pages über die swapdevices, wenn mehrere vorhanden sin.
 
Back
Top