Nachdem ja wie vorher beschrieben, ich ein paar Probleme mit einem Raid System hatte, ging es darum die Daten von den Platten auszulesen. Da das normalerweise ja kein Problem ist haben wir den Schwierigkeitsgrad mal erhöht:
Aufgabe ist nun sämtliche Daten vom Raid zu kratzen. Die Spieler dürfen jedoch den dazugehörigen Raid-Controller nicht benutzen und es steht ihnen auch nur ein Mainboard mit noch einem SATA Anschluss zur verfügung. Weitere Hilfsmittel sind eine leere 160GB Platte und eine weitere Platte mit insgesamt 100GB freiem Speicherplatz.
Beim vorherigen Wettkampf waren die Spielbedingungen noch relativ einfach: Es ging um die Wiederherstellung eines Raid-0 Stripesets mit zwei Platten. Ein einfacher dd-Aufruf mit bs=64k count=1 und passendem skip-Paramter führte zum Sieg.
Dieses Jahr hingegen ging es um ein Raid-5 Array mit Hot-Spare. dd hilft hier nicht mehr weiter.
Zum Glück hatte ich Zugriff auf ein Tool namens Raid Reconstructor von Runtime Software. Eigentlich ein ziemlich cooles Programm, da es die Raid-Platten analysieren kann und die einzelnen Platten dann in der richtigen Reihenfolge zu einem kompletten Image zusammensetzt.
Nervig ist jedoch, dass man erst einmal das System rausbekommen muss mit dem der Raid-Controller die Daten auf die Platte schreibt.
Für einen LSI Logic Megaraid SATA150-6 gelten folgende Einstellungen für ein Raid-5
- Start sector of the Raid: 0
- Block Size: 128 sectors (64 KB) (Default Block Size)
- Parity Rotation: Backward (dyn. disk)
Damit sollte ein anschliessender XOR-Check keine Fehler mehr zeigen.