N
netbui
Eroberer
Hallo, mir ist vor einiger Zeit mein RAID 5 abgeschmiert. Passiert ist das bei der Umstellung von SUSE auf Gentoo. Ich hatte unter SUSE die smartmontoos installiert, aber leider keine Warnung über den sich dramatisch verschlechternden Zustand meiner Festplatten erhalten.
Das RAID 5 Aray bestand aus 4 Samsung 160 GB IDE Festplatten, davon eine, /dev/hda1, als Sparedisk. Abgekackt ist mir das Raid genau bei der Umstellung von Suse auf Gentoo. Durch einen Fehler meines Promise SAT II TX4 Controlers wurde einmal Suse anstatt das neu installierte Gentoo gebootet. Leider habe ich erst nach der Eingabe des reboot Befehls gemerkt, dass das RAID dirty war und gerade am syncen... Beim nächsten versuch es zu starten war es defekt und das Beste: zwei der drei HDDs waren defekt.
Mittlerweile habe ich festgestellt, dass ALLE 4 Samsung 160 GB Festplatten einen Schlag haben. Leider ist mir das vorher unter SUSE nicht aufgefallen, obwohl ich die Smartmontools installiert hatte.
Die Lösung:
ich habe mir eine neue 320 GB HDD gekauft um erst mal ohne Datenverlust an der Wiederherstellung arbeiten zu können.
Bei der Suche nach eine Tool, um die Partitionen zu kopieren bin ich auf
gestoßen. Im Gegensatz zu dd und cp bricht ddrescue das kopieren nicht ab, wenn fehlerhafte Stellen auf dem Quellmedium vorhanden sind. Außerdem habe ich mit ddrescue eine Datentransferrate von über 20MB/s erreicht, mit dd nur um die 6 MB/s.
Ich habe also erstmal die beiden Platten mit:
auf meine Ersatzplatten kopiert.
Im GENTO Forum habe ich folgenden Artikel entdeckt:
http://forums.gentoo.org/viewtopic-t-477256-highlight-mdadm.html
Ich fasse mal die Wichtigsten Punkte zusammen:
- wenn ein neues Raid erstellt wird, werden die Daten auf den Festplatten NICHT gelöscht, sofern kein SYNC stattfindet.
- mit mdadm -E /dev/hdX erhält man eine Informationen über das Raid, unter anderem auch über die Position der Festplatten im Raid.
- mit z.B.
kann man ein neues Raid mit den alten Festplatten erstellen, die Daten gehen nicht verloren. Sehr wichtig ist, dass man die Festplatten in der korrekten Reihenfolge angibt. In meinem Fall also /dev/sda1 missing /dev/sdb1.
Die Parameter bedeuten:
In meinem Fall habe ich erst mal mit:
das auf meine Ersatzplatten kopierte Raid wieder zum Leben erweckt. Nach einem reiserfschk --rebuildt-tree waren ca. 80% der Daten wieder da. Puh! Kurz danach hat /dev/hdb1 den Geist ganz aufgegeben.....
Dann habe ich mit
das Raid auf mit den beiden verbliebenen alten Festplatten wieder zu Leben erweckt und auf md0 kopiert. Damit hatte ich nun um die 95% der Daten wieder, der Rest versteckt sich hoffentlich im lost&found Ordner.
Das Zeigt mal wieder wie wichtig ein Backup ist (die wirklich wichtigen Dinge sichere ich auf DVD-Ram)
Anhang: smart für drei der defekten Festplatten:
Das RAID 5 Aray bestand aus 4 Samsung 160 GB IDE Festplatten, davon eine, /dev/hda1, als Sparedisk. Abgekackt ist mir das Raid genau bei der Umstellung von Suse auf Gentoo. Durch einen Fehler meines Promise SAT II TX4 Controlers wurde einmal Suse anstatt das neu installierte Gentoo gebootet. Leider habe ich erst nach der Eingabe des reboot Befehls gemerkt, dass das RAID dirty war und gerade am syncen... Beim nächsten versuch es zu starten war es defekt und das Beste: zwei der drei HDDs waren defekt.
Mittlerweile habe ich festgestellt, dass ALLE 4 Samsung 160 GB Festplatten einen Schlag haben. Leider ist mir das vorher unter SUSE nicht aufgefallen, obwohl ich die Smartmontools installiert hatte.
Die Lösung:
ich habe mir eine neue 320 GB HDD gekauft um erst mal ohne Datenverlust an der Wiederherstellung arbeiten zu können.
Bei der Suche nach eine Tool, um die Partitionen zu kopieren bin ich auf
Code:
ddrescue
Ich habe also erstmal die beiden Platten mit:
Code:
ddrescue /dev/hdc1 /dev/sda1
ddrescue /dev/hdd1 /dev/sdb1
Im GENTO Forum habe ich folgenden Artikel entdeckt:
http://forums.gentoo.org/viewtopic-t-477256-highlight-mdadm.html
Ich fasse mal die Wichtigsten Punkte zusammen:
- wenn ein neues Raid erstellt wird, werden die Daten auf den Festplatten NICHT gelöscht, sofern kein SYNC stattfindet.
- mit mdadm -E /dev/hdX erhält man eine Informationen über das Raid, unter anderem auch über die Position der Festplatten im Raid.
Code:
/dev/sda1:
Magic : a92b4efc
Version : 00.90.00
UUID : blablablablablablablablablablablablablablablablablablablablabla
Creation Time : Thu Jul 27 02:51:06 2006
Raid Level : raid5
Device Size : 156288256 (149.05 GiB 160.04 GB)
Array Size : 312576512 (298.10 GiB 320.08 GB)
Raid Devices : 3
Total Devices : 2
Preferred Minor : 0
Update Time : Thu Jul 27 13:45:56 2006
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 1
Spare Devices : 0
Checksum : 3f9542a - correct
Events : 0.3309
Layout : left-symmetric
Chunk Size : 64K
Number Major Minor RaidDevice State
this 2 8 1 2 active sync /dev/sda1
0 0 8 17 0 active sync /dev/sdb1
1 1 0 0 1 faulty removed
2 2 8 1 2 active sync /dev/sda1
Code:
mdadm -C -l5 -n3 /dev/md0 /dev/sdb1 missing /dev/sda1
Die Parameter bedeuten:
Code:
-C: create, neues Raid anlegen,
-l: level, also Raid 5
-n: Anzahl der Festplatten
[B]missing[/B]: gibt an, welche Festplatte fehlt (ich hatte missing im Artikel im Gentoo Forum irgendwie x Mal überlesen, ich dachte das gehört zum Text...)
In meinem Fall habe ich erst mal mit:
Code:
mdadm -C -l5 -n3 /dev/md0 /dev/sdb1 missing /dev/sda1
Dann habe ich mit
Code:
mdadm -C -l5 -n3 /dev/md1 /dev/hdd1 /dev/hdc1 missing
Das Zeigt mal wieder wie wichtig ein Backup ist (die wirklich wichtigen Dinge sichere ich auf DVD-Ram)
Anhang: smart für drei der defekten Festplatten:
Code:
Status des Laufwerkes /dev/hdb
Ort IDE Gerät B
Festplattengröße 150 GB
Make und Model SAMSUNG SP1604N
Unterstützt SMART? Ja
SMART eingeschaltet? Ja
Gespeicherte Fehler 551 Fehler erfasst
Festplattentest durchgeführt? Ja
Offline data collection status Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status The previous self-test routine completed
without error or no self-test has ever
been run.
Total time to complete Offline data collection 4320 seconds.
Offline data collection capabilities SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
No Selective Self-test supported.
SMART capabilities Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability Error logging supported.
No General Purpose Logging support.
Short self-test routine recommended polling time 1 minutes.
Extended self-test routine recommended polling time 72 minutes.
Raw Read Error Rate 0
Spin Up Time 6528
Start Stop Count 648
Reallocated Sector Ct 0
Seek Error Rate 0
Seek Time Performance 0
Power On Half Minutes 1473h+18m
Spin Retry Count 0
Power Cycle Count 340
Temperature Celsius 25
Hardware ECC Recovered 409695170
Reallocated Event Count 0
Current Pending Sector 0
Offline Uncorrectable 0
Multi Zone Error Rate 0
Soft Read Error Rate 0
Code:
Status des Laufwerkes /dev/hdc
Ort IDE Gerät C
Festplattengröße 150 GB
Make und Model SAMSUNG SV1604N
Unterstützt SMART? Ja
SMART eingeschaltet? Ja
Gespeicherte Fehler 16386 Fehler erfasst
Festplattentest durchgeführt? Ja
Offline data collection status Offline data collection activity
was suspended by an interrupting command from host.
Auto Offline Data Collection: Disabled.
Self-test execution status The previous self-test routine completed
without error or no self-test has ever
been run.
Total time to complete Offline data collection 7200 seconds.
Offline data collection capabilities SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
No Selective Self-test supported.
SMART capabilities Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability Error logging supported.
No General Purpose Logging support.
Short self-test routine recommended polling time 1 minutes.
Extended self-test routine recommended polling time 120 minutes.
Raw Read Error Rate 1032
Start Stop Count 25982
Reallocated Sector Ct 4
Seek Error Rate 0
Seek Time Performance 12171
Power On Hours 239122 [B](239122/24= 9963 Tage / 365= 27 Jahre??)[/B]
Power Cycle Count 25497
Temperature Celsius 29
Current Pending Sector 0
Offline Uncorrectable 0
Multi Zone Error Rate 19
Soft Read Error Rate 0
Code:
Status des Laufwerkes /dev/hdd
Ort IDE Gerät D
Festplattengröße 150 GB
Make und Model SAMSUNG SP1614N
Unterstützt SMART? Ja
SMART eingeschaltet? Ja
Gespeicherte Fehler 396 Fehler erfasst
Festplattentest durchgeführt? Ja
Offline data collection status Offline data collection activity
was never started.
Auto Offline Data Collection: Disabled.
Self-test execution status The previous self-test routine completed
without error or no self-test has ever
been run.
Total time to complete Offline data collection 5760 seconds.
Offline data collection capabilities SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No Conveyance Self-test supported.
No Selective Self-test supported.
SMART capabilities Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability Error logging supported.
No General Purpose Logging support.
Short self-test routine recommended polling time 1 minutes.
Extended self-test routine recommended polling time 96 minutes.
Raw Read Error Rate 147
Spin Up Time 5632
Start Stop Count 554
Reallocated Sector Ct 0
Seek Error Rate 0
Seek Time Performance 0
Power On Half Minutes 1316h+37m
Spin Retry Count 1
Power Cycle Count 240
Temperature Celsius 35
Hardware ECC Recovered 236686477
Reallocated Event Count 0
Current Pending Sector 0
Offline Uncorrectable 0
Multi Zone Error Rate 0
Soft Read Error Rate 0