Home Publikationen HowTo(s) Einige Tipps mit defekten Festplatten oder Partitionen.
Einige Tipps mit defekten Festplatten oder Partitionen. Drucken
Samstag, den 24. Januar 2009 um 14:32 Uhr

In diesem HowTo werden einige Tipps zu defekten Festplatten oder Partitionen zusammengestellt.

Achtung: Verwendung auf eigener Gefahr Wink

Viele dieser Tipps müssen mit ausgehangenden Platten durchgeführt werden. Dazu eine Live CD (z.B. KNOPPIX oder openSUSE) zum Booten (im failsafe-Modus) verwenden und dort diese Befehle ausführen.

Festplattendiagnose - SMART-Werte auslesen

Dieses kann mit dem Kommando smartctl geschehen.

$ smartctl --all /dev/sda
...
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
...
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000b   100   100   016    Pre-fail  Always       -       0
...
SMART Error Log Version: 1
No Errors Logged
...
 

Dabei sollte das Testergebnis PASSED und keine Fehlermeldungen protokolliert sein.

Die SMART-Attribute haben folgende Bedeutung:

  • ID: Nummer des Attributs
  • Name des Attributs
  • Value: der normierter Wert aus der Firmware der Festplatte
  • Worst: der bislang schlechtester registrierter normierter Wert (höher = besser)
  • Thresh: das Minimum, ab dem Arlarm gemeldet wird
  • Type: Beschreibt, was das Erreichen eines Schwellwertes bedeutet.
    Pre-fail: Sofortiges Ableben der Festplatte wahrscheinlich.
    Old-age: Attribut beschreibt den Alterungsprozess der Festplatte.
  • Update: Wann wird das Attribut aktualisiert?
    Always: Laufend.
    Offline: Durch einen Offlinetest (Parameter -t offline).
  • Raw: Rohdaten

Wichtige Attribute:

  • 5 Reallocated_Sector_Ct
    196 Reallocated_Event_Count
    197 Current_Pending_Sector

    Wenn die Raw-Werte auf 0 sind, wurden beim Schreiben keine defekte Sektoren entdeckt.
  • 199 UDMA_CRC_Error_Count
    Wenn der Raw-Wert auf 0 ist, wurden keine Übertragungsfehler (Kabel) entdeckt.
  • 3 Spin_Up_Time
    10 Spin_Retry_Count

    Diese Messwerte zeigen Anlaufenprobleme der Festplatte.
  • 1 Raw_Read_Error_Rate
    7 Seek_Error_Rate
    195 Hardware_ECC_Recovered
    Diese Attribute beschreiben Lesefehler.

Mit folgendem Kommando führt eine Festplatte einen langem Selbsttest aus.

$ smartctl -t long /dev/sda

Medien-Check mit badblocks

Mit dem Kommando badblocks können fehlerhafte Blöcke auf Partitionen erkannt werden. Folgende Kommandos schreibt die defekten Blöcke in die Datei bad-blocks und übergibt sie fsck. Damit werden im Dateisystem die beschädigten Blöcke als unbenutzbar markiert.

$ badblocks /dev/sda3 > bad-blocks
$ fsck.ext3 -l bad-blocks /dev/sda3

Erstellen eines Images einer Festplatte

Ein komplettes Abbild einer Festplatte kann mit dem Kommando dd erstellt werden.

Folgendes Kommando kopiert das Abbild einer Festplatte auf eine andere Festplatte, die mindestens gleich groß ist.
$ dd if=/dev/sda of=/dev/sdb

Folgendes Kommando sichert eine Platte in eine Datei.

$ dd if=/dev/sda of=sda.img

In diesem Beispiel wird die Datei zusätzlich kompremiert.

$ dd if=/dev/sda | gzip > sda.ing.gz

Ist die Festplatte defekt, kann es bei Kopieren zu Lesefehlern kommen. Dann würde dd abbrechen. Das Kommando dd_rescue dagegen würde die unlesbaren Bereiche durch Nullen ersetzen. Dieses Abbild muss dann z.B. mit fsck repariert werden. Abschließen kann man dieses noch schreibgeschützt Mounten, um es zu testen.

$ dd_rescue /dev/sda3 sda3.img
$ fsck.ext3 -p sda3.img
$ mount -o loop,ro sda3.img /temp

Bootloader grub installieren

Durch eine defekte Festplatte wurde die geretteten Abbilder auf eine neue Festplatte aufgespielt. Nun muß nur noch der Bootloader installiert, genauer der MBR (Master Boot Record) geschrieben, werden.

Dazu wird der Rechner über eine Live CD geboote und die grub-Konsole aufgerufen. Als erste wird die Bootpartition gesucht.

$ grub
grub> find /boot/grub/stage1
 (hd0,2)

Die Bootpartition wurde unter (hd0,2) (erste Festplatte, dritte Partition) gefunden.

Nun wird folgenden Kommandos der MBR installiert.

grub> root (hd0,2)
 Filesystem type is ext2fs, partition type 0x83
 
grub> setup (hd0)
 Checking if "/boot/grub/stage1" exists... yes
 Checking if "/boot/grub/stage2" exists... yes
 Running "embed /boot/grub/e2fs_stage1_5 (hd0)"...  17 sectors are embedded.
succeeded
 Running "install /boot/grub/stage1 (hd0) (hd0)1+17 p (hd0,2)/boot/grub/stage2 /boot/grub/menu.lst"... succeeded
Done.
 
grub> quit

Ggf. muss vorher noch die Datei /boot/grub/menu.lst bearbeitet werden.

Sichern des Bootsektors

Mit folgendem Kommando wird der Bootsektor (Masterbootrecord) der Festplatte /dev/sda gesichert. In diesem Fall kommt der Bootloader grub zum Einsatz.

$ dd if=/dev/sda bs=512 count=1 of=grub.img

Dieses Abbild (Image) kann mit folgendem Kommando zurück gespielt werden:

$ dd if=grub.img bs=512 count=1 of=/dev/sda

 

Kommentar hinzufügen

Ihr Name:
Ihre E-Mail-Adresse:
Titel:
Kommentar:
 

Creative Commons LicenseDieses Werk ist unter der Creative Commons
Attribution-No Derivative Works 2.0
lizenziert.