Nie można naprawić systemu plików ext4 ze złym superblokiem

0

Korzystając z ddpolecenia, miałem nadzieję, że będę w stanie skopiować pierwsze 446 bajtów z dysku B (250 GB) na dysk A (80 GB), aby dysk rozruchowy był taki sam, jak dysk B. Wydałem polecenie:

dd if=/dev/sdb of=/dev/sda bs=446 count=1

Ale kiedy nie mogłem się uruchomić sda, zrestartowałem komputer, sdbżeby zobaczyć, co się dzieje. Ku mojemu przerażeniu sdamiałem zły superblok.

Co gorsza, nie byłem w stanie naprawić go za pomocą superbloków zapasowych. Oto co zrobiłem. Najpierw dostałem zapasowe adresy superbloku, takie jak:

[root@localhost liveuser]# mke2fs -n /dev/sda
mke2fs 1.41.14 (22-Dec-2010)
/dev/sda is entire device, not just one partition!
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
4890624 inodes, 19537686 blocks
976884 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
597 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424

Następnie użyłem e2fsck -b SUPERBLOCK /dev/sda, z każdą z SUPERBLOCKpowyższych wartości, tak:

    [root@localhost liveuser]# e2fsck -b 32768 /dev/sda 
e2fsck 1.41.14 (22-Dec-2010)
e2fsck: Bad magic number in super-block while trying to open /dev/sda

The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193 <device>

Próbowałem każdej wartości, ale każda dała powyższy komunikat!

Czy jest coś, co mogę zrobić TERAZ, aby uratować mój cenny dysk? To jest dysk 80G z 2 partycjami. /dev/sda1Przegroda jest czysty i nadaje się do montażu; jest to /dev/sda2partycja, która nie udaje się pracować z komend takich jak mount, debugfs, dumpe2fs, itd.

Uruchamianie mke2fs -ndla poszczególnych partycji dało mi to (zauważ, jak bloki First Data Block i Maximum systemu plików pokazują 0 jako wartość):

[root@localhost liveuser]# mke2fs -n /dev/sda1
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
128016 inodes, 512000 blocks
25600 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
63 block groups
8192 blocks per group, 8192 fragments per group
2032 inodes per group
Superblock backups stored on blocks: 
    8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409

[root@localhost liveuser]# mke2fs -n /dev/sda2
mke2fs 1.41.14 (22-Dec-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
4857856 inodes, 19409408 blocks
970470 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=0
593 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
    32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
    4096000, 7962624, 11239424

Nadal nie wiem, co było złego w moim ddpoleceniu, które uszkodziło mój superblok ext4. Nie możesz sobie wyobrazić, jak będę szczęśliwy, jeśli ktoś może mi pomóc odzyskać dysk z powrotem ... ponieważ oprócz tego złego superbloku wszystkie dane są właśnie tam!

Złupić
źródło

Odpowiedzi: