# Erweiterte FAT-Reparatur

### From CGSecurity

Wenn der FAT-Bootsektor beschädigt ist, kann auf die Daten nicht zugegriffen werden. Windows fragt: `Das Laufwerk ist nicht formatiert, möchten Sie es jetzt formatieren?` Linux mount zeigt: `wrong fs type, bad option, bad superblock` an.

TestDisk lässt dich den Bootsektor von FAT-Partitionen manipulieren. Im Menü Advanced wähle die Partition aus, die du modifizieren möchtest und wähle Boot.

    TestDisk 6.2-WIP, Data Recovery Utility, November 2005
    Christophe GRENIER <grenier@cgsecurity.org>
    http://www.cgsecurity.org

    Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63

         Partition                  Start        End    Size in sectors
     1 * FAT32                    0   1  1  1010 254 63   16241652 [NO NAME]
     2 P Linux                 1011   0  1  1023 254 63     208845 [/boot]
     3 E extended LBA          1024   0  1 14592 254 63  217985985
     5 L Linux RAID            1024   1  1  3573 254 63   40965687 [md0]
       X extended              3574   0  1  4210 254 63   10233405
     6 L Linux RAID            3574   1  1  4210 254 63   10233342 [md1]
       X extended              4211   0  1 14592 254 63  166786830
     7 L Linux                 4211   1  1 14592 254 63  166786767

    [  Type  ]  [  Boot  ]  [  Quit  ]
                                  Boot sector recovery

## Reparieren eines FAT-Bootsektors

### Wiederherstellung des FAT32-Bootsektors

TestDisk kann den Backup-Bootsektor (backup boot sector) verwenden, um einen korrupten FAT32-Bootsektor zu reparieren. Der primäre Bootsektor ist Sektor Null des Dateisystems, der Backup-FAT32-Bootsektor, befindet sich in Sektor 6. Wenn der Bootsektor und Backupbootsektor abweichen (FAT32), kann der Backupbootsektor über den Bootsektor kopiert/überschrieben werden (Backup BS) oder umgekehrt (Org. BS). Dump kann verwendet werden, um den Sektorinhalt sowohl als Hexadezimal und auch in ASCII anzuzeigen.

### Stelle einen gültigen FAT-Bootsektor wieder her

Wenn kein Backup-Bootsektor vorhanden ist (FAT12, FAT16) oder der FAT32-Bootsektor auch korrupt ist, TestDisk kann den Bootsektor wiederherstellen, wähle RebuildBS im Menü.

    TestDisk 6.2-WIP, Data Recovery Utility, November 2005
    Christophe GRENIER <grenier@cgsecurity.org>
    http://www.cgsecurity.org

    Disk /dev/sda - 120 GB / 111 GiB - CHS 14593 255 63
         Partition                  Start        End    Size in sectors
     1 * FAT32                    0   1  1  1010 254 63   16241652 [NO NAME]
    Boot sector
    OK
    Backup boot sector
    OK
    Sectors are identical.

    [  Quit  ]  [Rebuild BS][  Dump  ]  [Repair FAT]

                                Return to Advanced menu

### Technische Information über eine FAT-Bootsektor-Wiederherstellung

Um den Fat-Bootsektor wiederzustellen, geht TestDisk davon aus

- Dateisystemgröße ist gleich zur Partitionsgröße
- Fragmentation ist gering

Die Schritte sind

- wähle, welche Typen FAT, mit der Dateisystemgröße kompatibel sind
- identifiziere die Sektoren wo die zwei FAT beginnen (Nummer des reservierten Sektors, FAT-Länge) und den FAT-Typ (FAT12/16/32)
- Wenn nur ein FAT gefunden wird:

Wenn FAT12 oder FAT16 gefunden wird, gehe davon aus, dass es nur einen reservierten Sektor gibt. Wenn es die zweite FAT (FAT=FileAllocationTable -> Dateizuordnungstabelle) ist, erschließe daraus die FAT-Länge. Wenn am Anfang von FAT32, die erste FAT bei Sektor 32 oder 33 gefunden wird, erschließe daraus die Anzahl der reservierten Sektoren.

- Wenn zwei oder mehr FAT-Sektoranfänge gefunden worden sind:

gehe davon aus, dass die ersten zwei, die zwei FAT-Kopien sind. Erschließe daraus die Anzahl der reservierten Sektoren und die FAT-Länge.

- Wenn die Nummer des reservierten Sektors oder die FAT-Länge nicht gefunden worden ist,

verwende inode von den `.`-Verzeichniseinträgen um die Clustergröße zu erhalten und schließe daraus wo der erste Cluster beginnt. Von der Anzahl der Cluster, erschließe ob es eine FAT12, FAT16 oder FAT32 ist. Wenn es FAT12 oder FAT16 ist, gehe davon aus, dass es nur einen reservierten Sektor gibt. Versuche, die Anzahl von Verzeichniseinträgen (512 standardmäßig) zu finden. Erschließe die FAT-Länge.

- Wenn FAT12 oder FAT16, finde die Wurzelverzeichnisgröße (root directory size)
- Finde die Clustergröße
- Wenn FAT32, finde den Root Cluster
- Erstelle einen Bootsektor mit dieser Information
- frage den Benutzer ob er diesen neuen Bootsektor schreiben möchte oder nicht,

der Benutzer kann auch die Dateien der FAT-Partition auflisten

## Reparatur von FAT-Tabellen

Dateizuordnungstabellen sind Zuordnungen der Datenregion, die anzeigt, welche Cluster von Dateien und Verzeichnissen verwendet werden. Um FAT im Menü Repair FAT zu reparieren, vergleicht TestDisk die zwei FAT-Kopien. Wenn FAT nicht übereinstimmt (Sektor per Sektor-Überprüfung) oder Fehler enthält, verwendet es die FAT-Kopie mit weniger Fehlern und entfernt die offensichtlichen Fehler. Diese Funktion darf nur auf einem FAT-Dateisystem mit richtigen Werten im Bootsektor verwendet werden. Es ist mit Erfolg angewendet worden, als scandisk, chkdsk oder fsck.vfat sich weigerten, das Dateisystem zu reparieren oder abgestürzt sind.

Zurück zu Ausführen von TestDisk

Category: Data Recovery

##### Data Recovery

- TestDisk
- PhotoRec
- download