Fragen zum (Bacukup-)Superblock von ext2/3 (Wiederherstellung)

Im Unterforum Hardware, Betriebssysteme, Programmiersprachen - Beschreibung: Alles zu Software, Hardware, Windows, Linux, Programmiersprachen
Anfragen zu Modding, Games, Cracks, etc. unerwünscht.

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 13 5 2024  22:04:05      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Osziloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Hardware, Betriebssysteme, Programmiersprachen        Hardware, Betriebssysteme, Programmiersprachen : Alles zu Software, Hardware, Windows, Linux, Programmiersprachen
Anfragen zu Modding, Games, Cracks, etc. unerwünscht.


Autor
Fragen zum (Bacukup-)Superblock von ext2/3 (Wiederherstellung)

    







BID = 771444

Bartholomew

Inventar



Beiträge: 4681
 

  


Hoi,

Da ich im VDR-Portal ( http://www.vdr-portal.de/board60-li.....lung/ )bisher noch keine Antwort erhalten habe, frage ich hier einfach auch mal nach.

#####

Kann mir jemand sagen, bei welchen Gelegenheiten die Backup-Superblöcke bei ext2/3/4 aktualisiert wird? Bloß einmal beim Erstellen der Partition?
Und wie sieht das mit den Gruppendeskriptorfeldern aus - wann werden die abgeglichen? Die sind ja auch redundant vorhanden (einmal pro Blockgruppe).

Und speziell bei ext3-Partitionen mit 4096B virtueller Blockgröße (512B physischer Sektor-/Blockgröße, kein Advanced Format mit 4096B physischer Sektorgröße), damit sind alle meine ext3-Partitionen auf verschiedenen Festplatten/Rechnern ausgestattet:
Wie unterscheidet sich da der primäre Superblock einer Partition von den Backup-Superblocks?
Der primäre Superblock beginnt ja erst mit 2 Sektoren (1024B) Abstand vom Partitionsanfang, um Platz für den Bootsektor (512B) und einen eventuellen erweiterten Bootsektor (nochmal ein Sektor) zu lassen. Sagt zumindest die umfassendste und aktuelleste ext2-Dokumentation, die ich bisher gefunden habe: http://www.nongnu.org/ext2-doc/ext2.html
Die eigentliche Nutzlast des stets mindestens 1kB (zwei physische Sektoren) großen Superblocks scheint ja momentan bloß die ersten 264B zu umfassen, die restlichen 5 physischen Sektoren (je 512B) in einem 4096B großen primären Superblock sollten also ausgenullt sein. Soweit richtig?
Darauf folgt dann das (je nach Blockgruppenanzahl) durchaus mehrere Blöcke große Blockgruppendeskriptorenfeld (32B pro Gruppe). Auch richtig?

Nun habe ich ein wenig mit dd und hexdump auf verschiedenen Partitionen/Platten rumexperimentiert. Ergebnis: Die Backup-Superblöcke (bei Block 32768, 98304 usw.) scheinen ohne 1024B-Offset anzufangen. Der Bootsektor wird also nicht mitgesichert. Auch richtig?
Seltsamerweise habe ich bei einer Partition festgestellt, dass die restlichen 6 Sektoren der Backup-Superblöcke nicht leer sind, sondern auch Daten enthalten. Kann aber sein, dass ich diese Partition mal in der Größe verändert hatte (vermutlich mit gparted und Live-CD, weiß ich nicht mehr sicher). Ist das plausibel? Kann das sein?

Und noch zum Bootsektor:
Wenn ich es richtig verstanden habe, steht im Bootsektor einer logischen Partition stets drin, wo sich die nächste logische Partition befindet, siehe http://de.wikipedia.org/wiki/Partitionstabelle . Richtig?

Wenn das alles so stimmt, dann sollte ein Wiederherstellen des Superblockes mittels (beispielsweise) "dd if=/devsda5 of=/dev/sda5 count=1 bs=4096 skip=32768" also eigentlich keine gute Idee sein, weil der Bootsektor überschrieben wird? Oder habe ich da was falsch verstanden?
Man kann ja auch e2fsck -b 32768 /dev/sda5 verwenden, aber das stößt ja dann auch gleich ein fsck an...

Im übrigen weiß ich, dass man von einer beschädigten Partition mit dd eine Kopie auf eine andere Platte machen und an dieser Kopie dann arbeiten sollte.

In meinem akuten Fall sollte das aber nicht nötig sein, da ich die Partitiion noch mittels "mount -t ext2 -o sb=131072,ro /dev/sdb5 /media/testdir" einhängen und die Daten so sichern kann. Zum Zeitpunkt des Fehlers waren keine wichtigen Dateien auf der Partition geöffnet.
Der Superblock ist dummerweise von der Festplatte nicht mehr lesbar (I/O-Fehler von allen 8 Sektoren, also ein Bad Block). Das Smartmontools Bad Block Howto habe ich mir schon zu Gemüte geführt: http://smartmontools.sourceforge.net/badblockhowto.html
Der Fehler liegt mit hoher Wahrscheinlichkeit nicht bei der Platte, sondern wohl am IDE-Controller, am IDE-Sata-Wandler, dem PATA-Kabel oder doch dem Betriebssystem, jedenfalls ist die Platte erst 300 Stunden alt, und eine andere junge Platte hat der Rechner auch gleich ähnlich vermurkst. Beim letzten mal war bloß ein Journal-Block betroffen (der Sektor wurde von der Platte noch nicht mal gesperrt, "bloß" die ECC-Bits haben wohl Alarm geschlagen), jetzt ist es der Superblock...

Zuerst werde ich also die Daten sichern, dann mit "dd if=/dev/zero of=dev/sdb5 count=1 bs=4096" ; "sync" den Superblock wieder auf einen definierten Zustand bringen, dann mittels "smartctl -t long /dev/sdb" nach weiteren Bad Blocks forschen, und schließlich mit "e2fsck -b 32768" den Superblock und die Partition reparieren. Spricht da was gegen?

Zur Problemplatte noch eine Partitionsübersicht:


Code :

# fdisk -lu /dev/sdb


Disk /dev/sdb: 1000.2 GB, 1000204886016 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0001d6d4

Device Boot Start End Blocks Id System
/dev/sdb1 * 6312578894 6289416 83 Linux
/dev/sdb2 1257889525157789 6289447+ 83 Linux
/dev/sdb3 2515779029350754 2096482+ 82 Linux swap / Solaris
/dev/sdb4 29350755 1953520064 9620846555 Extended
/dev/sdb5 29350818 1953520064 962084623+ 83 Linux



dmesg sagt beispielsweise:


Code :

[  259.664083] usb 6-1: new high speed USB device using ehci_hcd and address 4

[ 259.800142] usb 6-1: New USB device found, idVendor=04fc, idProduct=0c15
[ 259.800151] usb 6-1: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[ 259.800159] usb 6-1: Product: USB to Serial-ATA bridge
[ 259.800165] usb 6-1: Manufacturer: Sunplus Technology Inc.
[ 259.800171] usb 6-1: SerialNumber: WDC WD10EV WD-WCAV58897882
[ 259.800445] usb 6-1: configuration #1 chosen from 1 choice
[ 259.951611] Initializing USB Mass Storage driver...
[ 259.951955] scsi4 : SCSI emulation for USB Mass Storage devices
[ 259.952187] usbcore: registered new interface driver usb-storage
[ 259.952196] USB Mass Storage support registered.
[ 259.955611] usb-storage: device found at 4
[ 259.955619] usb-storage: waiting for device to settle before scanning
[ 264.952908] usb-storage: device scan complete
[ 264.958084] scsi 4:0:0:0: Direct-Access WDC WD10 EVDS-63U8B0 PQ: 0 ANSI: 2
[ 264.959507] sd 4:0:0:0: Attached scsi generic sg2 type 0
[ 264.984442] sd 4:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/931 GiB)
[ 264.987040] sd 4:0:0:0: [sdb] Write Protect is off
[ 264.987048] sd 4:0:0:0: [sdb] Mode Sense: 38 00 00 00
[ 264.987054] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 265.012405] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 265.012415] sdb: sdb1 sdb2 sdb3 sdb4 < sdb5 >
[ 265.070251] sd 4:0:0:0: [sdb] Assuming drive cache: write through
[ 265.070264] sd 4:0:0:0: [sdb] Attached SCSI disk
[ 267.898625] sd 4:0:0:0: [sdb] Unhandled sense code
[ 267.898637] sd 4:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 267.898647] sd 4:0:0:0: [sdb] Sense Key : Medium Error [current]
[ 267.898658] sd 4:0:0:0: [sdb] Add. Sense: Unrecovered read error
[ 267.898669] sd 4:0:0:0: [sdb] CDB: Read(10): 28 00 01 bf db a2 00 00 08 00
[ 267.898691] end_request: I/O error, dev sdb, sector 29350818
[ 267.898705] Buffer I/O error on device sdb5, logical block 0
[ 267.898716] Buffer I/O error on device sdb5, logical block 1
[ 267.898724] Buffer I/O error on device sdb5, logical block 2
[ 267.898732] Buffer I/O error on device sdb5, logical block 3
[ 267.898740] Buffer I/O error on device sdb5, logical block 4
[ 267.898747] Buffer I/O error on device sdb5, logical block 5
[ 267.898755] Buffer I/O error on device sdb5, logical block 6
[ 267.898762] Buffer I/O error on device sdb5, logical block 7
[ 270.397961] sd 4:0:0:0: [sdb] Unhandled sense code
[ 270.397971] sd 4:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[ 270.397982] sd 4:0:0:0: [sdb] Sense Key : Medium Error [current]
[ 270.397994] sd 4:0:0:0: [sdb] Add. Sense: Unrecovered read error
[ 270.398006] sd 4:0:0:0: [sdb] CDB: Read(10): 28 00 01 bf db a4 00 00 06 00
[ 270.398027] end_request: I/O error, dev sdb, sector 29350820
[ 270.398041] Buffer I/O error on device sdb5, logical block 2
[ 270.398052] Buffer I/O error on device sdb5, logical block 3

...

[12554.273122] sd 5:0:0:0: [sdb] Unhandled sense code
[12554.273134] sd 5:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[12554.273146] sd 5:0:0:0: [sdb] Sense Key : Medium Error [current]
[12554.273160] sd 5:0:0:0: [sdb] Add. Sense: Unrecovered read error
[12554.273172] sd 5:0:0:0: [sdb] CDB: Read(10): 28 00 01 bf db a6 00 00 04 00
[12554.273196] end_request: I/O error, dev sdb, sector 29350822
[12554.273211] Buffer I/O error on device sdb5, logical block 4
[12554.273222] Buffer I/O error on device sdb5, logical block 5
[12554.273233] Buffer I/O error on device sdb5, logical block 6
[12554.273242] Buffer I/O error on device sdb5, logical block 7
[12556.806837] sd 5:0:0:0: [sdb] Unhandled sense code
[12556.806850] sd 5:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
[12556.806862] sd 5:0:0:0: [sdb] Sense Key : Medium Error [current]
[12556.806874] sd 5:0:0:0: [sdb] Add. Sense: Unrecovered read error
[12556.806887] sd 5:0:0:0: [sdb] CDB: Read(10): 28 00 01 bf db a6 00 00 04 00
[12556.806910] end_request: I/O error, dev sdb, sector 29350822
[12556.806924] Buffer I/O error on device sdb5, logical block 4
[12556.806936] Buffer I/O error on device sdb5, logical block 5
[12556.806945] Buffer I/O error on device sdb5, logical block 6
[12556.806954] Buffer I/O error on device sdb5, logical block 7



Der Vollständigkeit halber noch ein Auszug von smartctl:


Code :

SMART Attributes Data Structure revision number: 16

Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 199 051Pre-fail Always - 0
3 Spin_Up_Time 0x0027 118 115 021Pre-fail Always - 7100
4 Start_Stop_Count 0x0032 100 100 000Old_age Always - 168
5 Reallocated_Sector_Ct 0x0033 200 200 140Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 200 200 000Old_age Always - 0
9 Power_On_Hours 0x0032 100 100 000Old_age Always - 355
10 Spin_Retry_Count 0x0032 100 100 000Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 100 000Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000Old_age Always - 163
192 Power-Off_Retract_Count 0x0032 200 200 000Old_age Always - 52
193 Load_Cycle_Count 0x0032 200 200 000Old_age Always - 552
194 Temperature_Celsius 0x0022 100 099 000Old_age Always - 47
196 Reallocated_Event_Count 0x0032 200 200 000Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000Old_age Always - 1
198 Offline_Uncorrectable 0x0030 200 200 000Old_age Offline - 1
199 UDMA_CRC_Error_Count0x0032 200 200 000Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 200 200 000Old_age Offline - 0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num Test_DescriptionStatus Remaining LifeTime(hours) LBA_of_first_error
# 1 Extended offlineCompleted: read failure 90% 339 29350822
# 2 Extended offlineCompleted: read failure 90% 304 29350822
# 3 Extended offlineCompleted: read failure 90% 304 29350822
# 4 Extended offlineCompleted without error 00% 302 -
# 5 Short offline Completed without error 00% 298 -
# 6 Conveyance offline Completed without error 00% 298 -
# 7 Short offline Completed without error 00% 298 -
# 8 Conveyance offline Completed: read failure 90% 297 5781102
# 9 Short offline Completed: read failure 90% 297 5781102
#10 Short offline Completed: read failure 90% 297 5781102




Gruß, Bartho

BID = 771680

high_speed

Schreibmaschine



Beiträge: 2073

 

  

Das auch schon gefunden?

http://www.cgsecurity.org/wiki/Sich.....inden


Zitat :

Kann mir jemand sagen, bei welchen Gelegenheiten die Backup-Superblöcke bei ext2/3/4 aktualisiert wird? Bloß einmal beim Erstellen der Partition?


Das bringt keinen Sinn, denn dann bräuchte man sie auch erst gleich gar nicht zu generieren.


Zitat :

..
Die Informationen im Superblock enthalten Felder, die zum Beispiel die Anzahl der Blöcke und Inodes im Dateisystem angeben, wie viele davon frei sind, wie viele Inodes und Blöcke in jeder Blockgruppe vorhanden sind, ..


http://de.wikipedia.org/wiki/Ext2#Der_Superblock

MfG
Holger

_________________
George Orwell 1984 ist nichts gegen heute.
Der Überwachungsstaat ist schon da!

Leider lernen die Menschen nicht aus der Geschichte,
ansonsten würde sie sich nicht andauernd wiederholen.

[ Diese Nachricht wurde geändert von: high_speed am 21 Jun 2011 19:03 ]

BID = 771770

Bartholomew

Inventar



Beiträge: 4681

Kannte ich beides schon, trotzdem Danke.

Im Superblock stehen ja verschiedene Daten drin. Zum einen solche, die zeitlebens des Dateisystems gleich bleiben (z.B. die ext2-Blockgröße, also ob 2,4,8 Sektoren pro Block, oder das Revision Level (die ext2-Versionsnummer)), und solche, die sich ändern (Zeit des letzten Einhängens, freie Inodes usw.).
Letztere sind entweder relativ irrelevant oder lassen sich leicht wiederherstellen. Die freien Inodes/Blocks kann man einfach abzählen, das macht fsck bei einem check auch und überprüft, ob das mit den Werten im primären Superblock übereinstimmt. Wenn ich mir mit "du -h /verzeichnis" den freien Platz einer Partition anzeigen lasse, geht das superschnell, weil einfach im Superblock nachgeguckt wird. Und normalerweise stimmt der Wert im Superblock ja auch mit dem realen Wert überein.

Von daher ist eine Kopie des Superblockes von anno dazumal schon nützlich.

Momentan läuft die Datensicherung noch (500GB bei gut 3MB/s dank super-langsamem USB-Controller macht keinen Spaß...), vermutlich in 20 Stunden wird der Reparaturversuch gestartet.


Gruß, Bartho

BID = 772024

Bartholomew

Inventar



Beiträge: 4681

So, habe mittels "rsync -av /media/testdir/ ./debVDR-backup" die Daten gesichert:


Code :

sent 611939677119 bytes  received 1014450 bytes  3383027.89 bytes/sec

total size is 611861362777 speedup is 1.00


Dateigrößenvergleich zeigt:


Code :

# du -s /media/testdir/

586550912 /media/testdir/
# du -s /media/SP_2GB_1/root/debVDR-backup/
598381548 /media/SP_2GB_1/root/debVDR-backup/


Recherchieren ergab: liegt daran, dass ich rsync nicht mit -H aufgerufen habe. So wurden Dateien, auf die mehrere Hardlinks existieren, vervielfacht. Mit dem Parameter -H hätte das Kopieren noch länger gedauert, ist also OK.

Hier die Daten des ersten Backup-Superblocks (identisch mit dem bei 98304):


Code :

# dumpe2fs -h -o superblock=32768 /dev/sdb5

dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name: data
Last mounted on: <not available>
Filesystem UUID: ad086707-7a51-4073-a455-a730252ab42e
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype sparse_super large_file
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: not clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 60137472
Block count: 240521155
Reserved block count: 2405211
Free blocks: 236695599
Free inodes: 60137461
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 966
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Filesystem created: Wed Sep 22 22:43:32 2010
Last mount time: Wed Sep 22 23:40:21 2010
Last write time: Thu Sep 23 04:06:16 2010
Mount count: 2
Maximum mount count: -1
Last checked: Wed Sep 22 22:43:32 2010
Check interval: 15552000 (6 months)
Next check after: Mon Mar 21 21:43:32 2011
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 2da2fa1a-7999-4c88-9c37-b02f545638be
Journal backup: inode blocks
Jounaleigenschaften: journal_incompat_revoke
Journalgrösse: 128M
Journal-Länge: 32768
Journal-Sequenz: 0x0005b621
Journal-Start: 1




Also ran an's Eingemachte. Mal testweise die ersten 7 Sektoren der Partition mit Nullen überschreiben:


Code :

# dd count=7 bs=512 skip=0 if=/dev/zero of=/dev/sdb5

7+0 Datensätze ein
7+0 Datensätze aus
3584 Bytes (3,6 kB) kopiert, 0,0025406 s, 1,4 MB/s
# sync



Scheint schon geholfen zu haben. Vorher/nachher:


Code :

$ dd count=8 bs=512 skip=0 if=/dev/sdb5  of=badsuperblock

dd: Lesen von „/dev/sdb5“: Eingabe-/Ausgabefehler
0+0 Datensätze ein
0+0 Datensätze aus
0 Bytes (0 B) kopiert, 4,99013 s, 0,0 kB/s

$ dd count=8 bs=512 skip=0 if=/dev/sdb5 of=badsuperblock
8+0 Datensätze ein
8+0 Datensätze aus
4096 Bytes (4,1 kB) kopiert, 0,00314767 s, 1,3 MB/s



Fix einen kurzen Smart-Test angestoßen, und siehe da:


Code :

Vendor Specific SMART Attributes with Thresholds:

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 200 199 051 Pre-fail Always - 0
3 Spin_Up_Time 0x0027 120 115 021 Pre-fail Always - 6966
4 Start_Stop_Count 0x0032 100 100 000 Old_age Always - 178
5 Reallocated_Sector_Ct 0x0033 200 200 140 Pre-fail Always - 0
7 Seek_Error_Rate 0x002e 200 200 000 Old_age Always - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 409
10 Spin_Retry_Count 0x0032 100 100 000 Old_age Always - 0
11 Calibration_Retry_Count 0x0032 100 100 000 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 170
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 53
193 Load_Cycle_Count 0x0032 200 200 000 Old_age Always - 676
194 Temperature_Celsius 0x0022 099 096 000 Old_age Always - 48
196 Reallocated_Event_Count 0x0032 200 200 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 200 200 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 200 200 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0032 200 200 000 Old_age Always - 0
200 Multi_Zone_Error_Rate 0x0008 200 200 000 Old_age Offline - 0

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Conveyance offline Completed without error 00% 409 -
# 2 Extended offline Completed: read failure 90% 339 29350822
# 3 Extended offline Completed: read failure 90% 304 29350822
# 4 Extended offline Completed: read failure 90% 304 29350822
# 5 Extended offline Completed without error 00% 302 -
# 6 Short offline Completed without error 00% 298 -
# 7 Conveyance offline Completed without error 00% 298 -
# 8 Short offline Completed without error 00% 298 -
# 9 Conveyance offline Completed: read failure 90% 297 5781102
#10 Short offline Completed: read failure 90% 297 5781102
#11 Short offline Completed: read failure 90% 297 5781102


Nix Current_Pending_Sector, nix Offline_Uncorrectable, und auch keine (neuen) reallozierten Sektoren.

Sicherheitshalber folgt noch ein langer Test (dauert knapp vier Stunden). Und

Code :

siehe da, alles in Ordnung:

SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Extended offline Completed without error 00% 413 -
# 2 Conveyance offline Completed without error 00% 409 -
# 3 Extended offline Completed: read failure 90% 339 29350822



Und nun fsck:


Code :

# e2fsck -b 32768 /dev/sdb5

e2fsck 1.41.12 (17-May-2010)
ext3 Recovery-Flag sauber, aber das Journal enthält Daten.
Recovery-Kennzeichen in Backup SuperBlock nicht gesetzt, Journal wird trotzdem gestartet.
data: stelle das Journal wieder her
Durchgang 1: Prüfe Inodes, Blocks, und Größen
Durchgang 2: Prüfe Verzeichnis Struktur
Durchgang 3: Prüfe Verzeichnis Verknüpfungen
Durchgang 4: Überprüfe die Referenzzähler
Durchgang 5: Überprüfe Gruppe Zusammenfassung
Die Anzahl freier Blöcke in Gruppe #0 ist falsch (31223, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #1 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #3 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #4 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #5 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #6 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #7 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #8 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #9 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #10 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #11 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #12 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #13 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #14 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #15 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #16 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #17 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #18 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #19 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #20 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #21 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #22 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #23 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #24 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #25 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #26 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #27 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #28 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #29 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #30 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #31 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #32 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #33 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #34 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #35 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #36 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #37 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #38 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #39 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #40 ist falsch (32254, gezählt=0).


...


Die Anzahl freier Blöcke in Gruppe #84 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #85 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #86 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #87 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #88 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #89 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #90 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #91 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #92 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #93 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #94 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #95 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #96 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #97 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #98 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #99 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #100 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #101 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #102 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #103 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #104 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #105 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #106 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #107 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #108 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #109 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #110 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #111 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #112 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #113 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #114 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #115 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #116 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #117 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #118 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #119 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #120 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #121 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #122 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #123 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #124 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #125 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #126 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #127 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #128 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #129 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #130 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #131 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #132 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #133 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #134 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #135 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #136 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #137 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #138 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #139 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #140 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #141 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #142 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #143 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #144 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #145 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #146 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #147 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #148 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #149 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #150 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #151 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #152 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #153 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #154 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #155 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #156 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #157 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #158 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #159 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #160 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #161 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #162 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #163 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #164 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #165 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #166 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #167 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #168 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #169 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #170 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #171 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #172 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #173 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #174 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #175 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #176 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #177 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #178 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #179 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #180 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #181 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #182 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #183 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #184 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #185 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #186 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #187 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #188 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #189 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #190 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #191 ist falsch (32254, gezählt=3).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #192 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #193 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #194 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #195 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #196 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #197 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #198 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #199 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #200 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #201 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #202 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #203 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #204 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #205 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #206 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #207 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #208 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #209 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #210 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #211 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #212 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #213 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #214 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #215 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #216 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #217 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #218 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #219 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #220 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #221 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #222 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #223 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #224 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #225 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #226 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #227 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #228 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #229 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #230 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #231 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #232 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #233 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #234 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #235 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #236 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #237 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #238 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #239 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #240 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #241 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #242 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #243 ist falsch (31229, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #244 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #245 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #246 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #247 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #248 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #249 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #250 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #251 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #252 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #253 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #254 ist falsch (32254, gezählt=0).


...


Die Anzahl freier Blöcke in Gruppe #574 ist falsch (32254, gezählt=2).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #575 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #576 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #577 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #578 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #579 ist falsch (32254, gezählt=4).
Repariere<j>? ja


...


Die Anzahl freier Blöcke in Gruppe #784 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #785 ist falsch (32254, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #786 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #787 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #788 ist falsch (32254, gezählt=500).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #789 ist falsch (32254, gezählt=286).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #790 ist falsch (32254, gezählt=4579).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #791 ist falsch (32254, gezählt=26619).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #792 ist falsch (32254, gezählt=32235).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #793 ist falsch (32254, gezählt=31785).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #794 ist falsch (32254, gezählt=32237).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #795 ist falsch (32254, gezählt=11176).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #796 ist falsch (32254, gezählt=2935).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #797 ist falsch (32254, gezählt=32241).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #798 ist falsch (32254, gezählt=32227).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #799 ist falsch (32254, gezählt=32224).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #801 ist falsch (32254, gezählt=17682).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #802 ist falsch (32254, gezählt=9541).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #803 ist falsch (32254, gezählt=31764).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #804 ist falsch (32254, gezählt=8658).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #805 ist falsch (32254, gezählt=11).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #806 ist falsch (32254, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #807 ist falsch (32254, gezählt=8129).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #808 ist falsch (32254, gezählt=23433).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #809 ist falsch (32254, gezählt=32248).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #810 ist falsch (32254, gezählt=32222).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #811 ist falsch (32254, gezählt=13406).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #812 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #813 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #814 ist falsch (32254, gezählt=0).
Repariere<j>? ja


...



Die Anzahl freier Blöcke in Gruppe #2260 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2261 ist falsch (32254, gezählt=19).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2262 ist falsch (32254, gezählt=29).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2263 ist falsch (32254, gezählt=3).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2264 ist falsch (32254, gezählt=8).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2265 ist falsch (32254, gezählt=2).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2266 ist falsch (32254, gezählt=199).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2267 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2268 ist falsch (32254, gezählt=6).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2269 ist falsch (32254, gezählt=7).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2270 ist falsch (32254, gezählt=7).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2271 ist falsch (32254, gezählt=13536).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2308 ist falsch (32254, gezählt=7679).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2309 ist falsch (32254, gezählt=3).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2310 ist falsch (32254, gezählt=18145).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2388 ist falsch (32254, gezählt=32234).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2425 ist falsch (32254, gezählt=32152).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2432 ist falsch (32254, gezählt=1534).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2433 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2434 ist falsch (32254, gezählt=4).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #2435 ist falsch (32254, gezählt=0).


...


Die Anzahl freier Blöcke in Gruppe #7339 ist falsch (32254, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke in Gruppe #7340 ist falsch (3521, gezählt=0).
Repariere<j>? ja

Die Anzahl freier Blöcke ist falsch (236695599, gezählt=90057876).
Repariere<j>? ja












Die Anzahl freier Inodes ist falsch für Gruppe #33 (8192, gezählt=8189).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #33 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #36 (8192, gezählt=8167).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #36 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #39 (8192, gezählt=8164).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #39 (0, gezählt=2).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #43 (8192, gezählt=8187).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #43 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #55 (8192, gezählt=8189).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #55 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #56 (8192, gezählt=7879).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #56 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #60 (8192, gezählt=8190).
Repariere<j>? nein

Die Anzahl Verzeichnisse ist falsch für Gruppe #60 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #66 (8192, gezählt=8170).


...


Die Anzahl freier Inodes ist falsch für Gruppe #3812 (8192, gezählt=8189).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #3814 (8192, gezählt=8190).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #3818 (8192, gezählt=8190).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #3826 (8192, gezählt=8179).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #3915 (8192, gezählt=8189).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #3973 (8192, gezählt=8187).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4007 (8192, gezählt=8191).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4268 (8192, gezählt=8191).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4292 (8192, gezählt=8187).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4295 (8192, gezählt=8171).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4301 (8192, gezählt=8191).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4316 (8192, gezählt=8107).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4328 (8192, gezählt=8187).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4334 (8192, gezählt=8189).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4379 (8192, gezählt=8178).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4569 (8192, gezählt=8155).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #4643 (8192, gezählt=8190).
Repariere<j>? ja


...


Die Anzahl freier Inodes ist falsch für Gruppe #7333 (8192, gezählt=8189).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #7333 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch für Gruppe #7335 (8192, gezählt=8093).
Repariere<j>? ja

Die Anzahl Verzeichnisse ist falsch für Gruppe #7335 (0, gezählt=1).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch (60137461, gezählt=60076325).
Repariere<j>? ja


data: ***** DATEISYSTEM WURDE VERÄNDERT *****

data: ********** WARNUNG: Noch Fehler im Dateisystem **********

data: 61147/60137472 Dateien (5.5% nicht zusammenhängend), 150463279/240521155 Blöcke

###fertig###
#####################################################################################################
#####################################################################################################

Und nochmal:

# e2fsck /dev/sdb5
e2fsck 1.41.12 (17-May-2010)
data wurde nicht ordnungsgemäß ausgehängt, Prüfung erzwungen.
Durchgang 1: Prüfe Inodes, Blocks, und Größen
Durchgang 2: Prüfe Verzeichnis Struktur
Durchgang 3: Prüfe Verzeichnis Verknüpfungen
Durchgang 4: Überprüfe die Referenzzähler
Durchgang 5: Überprüfe Gruppe Zusammenfassung
Die Anzahl freier Inodes ist falsch für Gruppe #60 (8192, gezählt=8190).
Repariere<j>? ja

Die Anzahl freier Inodes ist falsch (60076327, gezählt=60076325).
Repariere<j>? ja


data: ***** DATEISYSTEM WURDE VERÄNDERT *****
data: 61147/60137472 Dateien (5.5% nicht zusammenhängend), 150463279/240521155 Blöcke

###fertig###

Siehe da, wenn ich mich oben nicht verdrückt hätte (bin irgendwie auf "nein" gekommen), hätte ich mir den zweiten durchlauf sparen können...


Dritter Durchlauf, so soll's sein:
# e2fsck /dev/sdb5
e2fsck 1.41.12 (17-May-2010)
data: sauber, 61147/60137472 Dateien, 150463279/240521155 Blöcke



Das Dateisystem ist jetzt wieder heile. Hat alles geklappt wie erhofft.
Die Backup-Superblocks wurden nicht aktualisiert (habe noch mal mit "dumpe2fs -h -o superblock=32768 /dev/sdb5" nachgeguckt. Bloß der primäre Superblock ist wieder aktuell:



Code :

1# dumpe2fs -h -o superblock=0 /dev/sdb5

dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name: data
Last mounted on: <not available>
Filesystem UUID: ad086707-7a51-4073-a455-a730252ab42e
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 60137472
Block count: 240521155
Reserved block count: 2405211
Free blocks: 90057876
Free inodes: 60076325
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 966
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Filesystem created: Wed Sep 22 22:43:32 2010
Last mount time: Thu Jun 23 16:06:48 2011
Last write time: Thu Jun 23 16:06:48 2011
Mount count: 1
Maximum mount count: -1
Last checked: Thu Jun 23 15:09:17 2011
Check interval: 15552000 (6 months)
Next check after: Tue Dec 20 14:09:17 2011
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 2da2fa1a-7999-4c88-9c37-b02f545638be
Journal backup: inode blocks
Jounaleigenschaften: journal_incompat_revoke
Journalgrösse: 128M
Journal-Länge: 32768
Journal-Sequenz: 0x0005b626
Journal-Start: 1



Fazit:
Der Primäre Superblock ist der einzige, der nach Erstellung des Dateisystems noch aktualisiert wird. In der Manpage von e2fsck steht dazu:

Zitat :
If an alternative superblock is specified and the filesystem is not opened read-only, e2fsck will make sure that the primary superblock is updated appropriately upon completion of the filesystem check.


So sieht der neue Superblock aus:


Code :

$ dd count=1 bs=4096 skip=0 if=/dev/sdb5  of=sb_neu

1+0 Datensätze ein
1+0 Datensätze aus
4096 Bytes (4,1 kB) kopiert, 0,000160638 s, 25,5 MB/s

$ hexdump sb_neu
0000000 0000 0000 0000 0000 0000 0000 0000 0000
*
0000400 a000 0395 0fc3 0e56 b35b 0024 2c94 055e
0000410 b125 0394 0000 0000 0002 0000 0002 0000
0000420 8000 0000 8000 0000 2000 0000 4878 4e03
0000430 4878 4e03 0001 ffff ef53 0001 0001 0000
0000440 3afd 4e03 4e00 00ed 0000 0000 0001 0000
0000450 0000 0000 000b 0000 0100 0000 003c 0000
0000460 0006 0000 0003 0000 08ad 0767 517a 7340
0000470 55a4 30a7 2a25 2eb4 6164 6174 0000 0000
0000480 0000 0000 0000 0000 0000 0000 0000 0000
*
00004c0 0000 0000 0000 0000 0000 0000 0000 03c6
00004d0 0000 0000 0000 0000 0000 0000 0000 0000
00004e0 0008 0000 0000 0000 0000 0000 a22d 1afa
00004f0 9979 884c 379c 2fb0 5654 be38 0101 0000
0000500 0000 0000 0000 0000 6a74 4c9a 8202 072a
0000510 8203 072a 8204 072a 8205 072a 8206 072a
0000520 8207 072a 8208 072a 8209 072a 820a 072a
0000530 820b 072a 820c 072a 820d 072a 820e 072a
0000540 860f 072a 0000 0000 0000 0000 0000 0800
0000550 0000 0000 0000 0000 0000 0000 001c 001c
0000560 0001 0000 0000 0000 0000 0000 0000 0000
0000570 0000 0000 0000 0000 0000 0000 0000 0000
*
0001000


Die ersten zwei Sektoren (1024B) sind wie erwartet leer, da ist Platz für einen Bootloader.

Und hier der Backup-Superblock von 32768:


Code :

$ dd count=1 bs=4096 skip=32768 if=/dev/sdb5  of=bsb_neu

1+0 Datensätze ein
1+0 Datensätze aus
4096 Bytes (4,1 kB) kopiert, 0,00012013 s, 34,1 MB/s

$ hexdump bsb_neu
0000000 a000 0395 0fc3 0e56 b35b 0024 b02f 0e1b
0000010 9ff5 0395 0000 0000 0002 0000 0002 0000
0000020 8000 0000 8000 0000 2000 0000 77c5 4c9a
0000030 b618 4c9a 0002 ffff ef53 0000 0001 0000
0000040 6a74 4c9a 4e00 00ed 0000 0000 0001 0000
0000050 0000 0000 000b 0000 0100 0001 003c 0000
0000060 0002 0000 0003 0000 08ad 0767 517a 7340
0000070 55a4 30a7 2a25 2eb4 6164 6174 0000 0000
0000080 0000 0000 0000 0000 0000 0000 0000 0000
*
00000c0 0000 0000 0000 0000 0000 0000 0000 03c6
00000d0 0000 0000 0000 0000 0000 0000 0000 0000
00000e0 0008 0000 0000 0000 0000 0000 a22d 1afa
00000f0 9979 884c 379c 2fb0 5654 be38 0101 0000
0000100 0000 0000 0000 0000 6a74 4c9a 8202 072a
0000110 8203 072a 8204 072a 8205 072a 8206 072a
0000120 8207 072a 8208 072a 8209 072a 820a 072a
0000130 820b 072a 820c 072a 820d 072a 820e 072a
0000140 860f 072a 0000 0000 0000 0000 0000 0800
0000150 0000 0000 0000 0000 0000 0000 001c 001c
0000160 0001 0000 0000 0000 0000 0000 0000 0000
0000170 0000 0000 0000 0000 0000 0000 0000 0000
*
0001000


Wie man sieht, sind alle Adressen um 1024B verschoben.
Ein ersetzen der Superblock-Sektoren durch einen Backup-Superblock mittels dd erscheint mir, auch wenn man das Offset von zwei Sektoren beachtet, nicht empfehlenswert, weil e2fsck bei der anschließend fälligen Überprüfung den Superblock eh noch aktualisieren wird. Da ist es doch viel bequemer und auch noch sicherer, e2fsck einfach einen Backup-Superblock als Parameter zu übergeben (dd (Disc Dump) hat nicht umsonst den Spitznamen "Data Destroyer").
Ein mittels dd vom primären Superblock erstelltes, in einer Datei gespeichertes Backup scheint mir keinen Vorteil zu bringen, wenn der Superblock repariert werden soll. Das könnte höchstens interessant sein, wenn man die beiden Bootsektoren, wo wohl auch evtl. Partitionsdaten drinstehen (bei mir nicht (mehr?)), wiederherstellen will.


Gruß, Bartho


Zurück zur Seite 0 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 18 Beiträge im Durchschnitt pro Tag       heute wurden bisher 25 Beiträge verfasst
© x sparkkelsputz        Besucher : 181275704   Heute : 19571    Gestern : 21513    Online : 565        13.5.2024    22:04
13 Besucher in den letzten 60 Sekunden        alle 4.62 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0840067863464