Odzyskiwanie z uszkodzonego systemu plików, gdy fsck nie pomaga

12

Coś poszło nie tak z moim systemem plików, Ubuntu ustawił go jako tylko do odczytu i teraz w Ubuntu Live Disc fsck nie może go naprawić.

Używam 13.04 i nie chce się uruchomić - po uruchomieniu pokazuje po prostu monit ratowania gruba.

Jest to prosta konfiguracja, tylko jeden dysk twardy na / dev / sda1, ale nawet się nie zamontuje.

Program instalacyjny może zobaczyć partycję, że jest to ext4 i że jest to partycja rozruchowa.

Wydaje się jednak, że nie mogę uratować systemu plików, wykonując instalację systemu Ubuntu z dyskiem na żywo Ubuntu, ponieważ nie daje żadnych wskazówek, czy zamierza zastąpić całą partię, więc nie chcę ryzykować.

Mam kopię zapasową przy użyciu backuppc, ale głupio zgubiłem dyski ratunkowe. Wolę uniknąć pełnej instalacji, a następnie przywracania, którego nie mam doświadczenia przy wykonywaniu.

Sedno sprawy polega na tym, że fsck mówi, że naprawia wszystko, ale tak naprawdę nie robi, więc następnym razem, gdy go uruchomię, otrzymuję dokładnie takie same komunikaty o błędach i poprawki.

Oto wynik:

ubuntu@ubuntu:~$ sudo fsck.ext4 -vy /dev/sda1
e2fsck 1.42.8 (20-Jun-2013)
ext2fs_check_desc: Corrupt group descriptor: bad block for block bitmap
fsck.ext4: Group descriptors look bad... trying backup blocks...
Block bitmap for group 0 is not in group.  (block 2553887680)
Relocate? yes

Inode table for group 0 is not in group.  (block 2440124416)
WARNING: SEVERE DATA LOSS POSSIBLE.
Relocate? yes

One or more block group descriptor checksums are invalid.  Fix? yes

Group descriptor 0 checksum is 0x761e, should be 0xcf25.  FIXED.
Block bitmap for group 4352 is not in group.  (block 2553887680)
Relocate? yes

Inode table for group 4352 is not in group.  (block 3731970048)
WARNING: SEVERE DATA LOSS POSSIBLE.
Relocate? yes

Group descriptor 4352 checksum is 0x5eda, should be 0x3da3.  FIXED.
Inode bitmap for group 4353 is not in group.  (block 2785042439)
Relocate? yes

Group descriptor 4353 checksum is 0xd8b1, should be 0xedfb.  FIXED.
Inode bitmap for group 4354 is not in group.  (block 838860807)
Relocate? yes

Group descriptor 4354 checksum is 0x1718, should be 0x0438.  FIXED.
Inode bitmap for group 4355 is not in group.  (block 771751943)
Relocate? yes

Group descriptor 4355 checksum is 0x0bc8, should be 0x4170.  FIXED.
fsck.ext4: e2fsck_read_bitmaps: illegal bitmap block(s) for /dev/sda1

/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****

/dev/sda1: ********** WARNING: Filesystem still has errors **********

ubuntu@ubuntu:~$ 

To jest dokładnie to samo co 10 razy wcześniej i jestem pewien, że następnych dziesięć razy spróbuję - dokładnie takie same sumy kontrolne i identyfikatory bloków. Każda pomoc z radością otrzymana!

Dzięki.

EDYCJA: w zasadzie myślę, że pytanie brzmi: czy ten system plików można teraz naprawić na miejscu, czy też te informacje z fsck oznaczają, że mój dysk jest martwy? A jeśli nie jest martwy, co mogę zrobić ponad to, co zrobiłem z fsck?

EDYCJA: użyłem tune2fs do identyfikacji superbloków i uruchomiłem e2fsck -b 01234 / dev / sda1 jako alternatywę dla fsck ... bez efektu.

EDYCJA: próba testdisk, która mówi mi, że partycja jest zła. ... OK testdisk wydaje się niewiele oferować.

Adam
źródło
czy zasadniczo nie opisałem rzeczy w tym linku fsck.ext4 -vy / dev / sda1? Jedyną różnicą jest flaga „-p”, która mówi mi, że mam to zrobić ręcznie - tzn. Co wyciąłem i wkleiłem powyżej.
Adam

Odpowiedzi:

15

W końcu znalazłem ten link, w którym system plików ext4 dostaje bashingu, ale po podaniu wszystkich wskazówek, które już wypróbowałem, w końcu mówi: zrób to:

sudo mkfs.ext4 -S /dev/sda1

Spowoduje to zastąpienie wszystkich twoich superbloków poprawnymi danymi, przy założeniu, że rozmiar bloku jest odgadnięty poprawnie (domyślnie jest poprawny dla większości systemów). Jeśli musisz tego użyć, przeczytaj najpierw stronę man na -S. Nie obwiniaj mnie!

ale tylko jeśli masz szczęście.

Naprawiono partycję, aby móc ją ponownie przeczytać. Musiałem jednak uruchomić, fsckaby naprawić błędy, które nadal tam występowały, i które zrzuciły zawartość / etc i wiele innych rzeczy do / lost + found, więc będę musiał ponownie zainstalować i przywrócić z kopię zapasową, aby ponownie uruchomić.

Adam
źródło
Dzięki, interesujące. Miałem problem z partycją root ext2, którą zrezygnowałem z naprawy. Przetestowałem polecenie i „zadziałało” (określiłem rozmiar bloku), ale i tak partycja zakończyła się niepowodzeniem po tym, jak fsck musiał naprawić wiele sektorów. Teraz zastanawiam się, co by się stało z unix.stackexchange.com/a/193778/59808 .
Nemo,
2

Po pierwsze: jeśli masz ważne dane na tym dysku, byłby to dobry czas (właściwie zły czas) na wykonanie kopii zapasowej. Zobacz Odzyskiwanie danych: obrazowanie uszkodzonego urządzenia, systemu plików lub dysku . Może twój dysk twardy umiera.

Po drugie: Spójrz na to: jak mogę naprawić montaż mojego napędu danych po awarii?

Po trzecie: sprawdź dysk twardy za pomocą Smartmontools i ewentualnie złych bloków : sudo badblocks -vsn /dev/sda(Może to zająć trochę czasu, nie rób tego, jeśli masz SSD)

innerand
źródło
Dzięki za edycję! Zabawne jest oglądanie takiej odpowiedzi. Odpowiedź, o której mówisz, dotyczy magicznych liczb, ale nie tego widzę - w rzeczywistości jest to jedna z kilku odpowiedzi na askubuntu, na które już spojrzałem. Spróbuję również trasy odzyskiwania danych, dopóki nie mam innych rozwiązań. Przebiegł krótki test smartmontools i nie znalazł żadnych błędów.
Adam
1
Przepraszam za edycję. Ponieważ współczesne systemy plików, takie jak ext4, są trudne do złamania, zawsze najpierw myślę o usterce sprzętowej. Kiedy smart mówi, że dysk jest w porządku, to naprawdę nie jest konieczne. Dlaczego twój FS jest skorumpowany? Jeśli ja, gdzie ty i fsck nie jesteście w stanie naprawić fs, zrobiłbym czystą instalację. Prawdopodobnie byłoby to łatwiejsze niż ręczna naprawa fs.
wewnętrzna i
OK, nie martw się, dziękuję tylko za odpowiedź! Nie byłem sarkastyczny. Całkowicie podążam za tobą, co mówisz. Muszę tylko jak najszybciej przywrócić system do działania. W najgorszym wypadku dostarczenie nowego dysku twardego zajmie 3 dni, dlatego chciałbym znaleźć rozwiązanie „bez nowego sprzętu”.
Adam
zgodnie z linkiem w odpowiedzi, którą podałem poniżej, najwyraźniej ext4 nie jest trudny do złamania. ale cokolwiek.
Adam
Wirtualny host z 9 systemami Windows i 1 Ubuntu. Gospodarz poszedł zabierając ze sobą wszystkie 10. Po powrocie wszystkie systemy Windows uruchomiły się od razu. Maszyna z systemem Linux wyświetliła „NIEDOSTĘPNĄ NIEZGODNOŚĆ” i wymagała ręcznego fsck. Nigdy nie widziałem tylu poprawek iNode [od czasów Solaris w latach 90-tych]. To nie był sprzęt, to była tylko przerwa w dostawie prądu. Nigdy nie myślałem, że zobaczę dzień NTFS pwned EXT4.
Brain2000