Porady Admina: fsck

Pomoc drogowa Warszawa

W dzisiejszym tutorialu z cyklu Porady Admina zajmiemy się programem fsck.

fsck służy do sprawdzania i opcjonalnie do naprawy jednego lub kilku linuksowych systemów plików. System-plików może być nazwą urządzenia (np. /dev/hdc1, /dev/sdb2), punktem montowania (np. /, /usr, /home), albo etykietą systemu plików lub identyfikatorem UUID (np. UUID=8868abf6-88c5-4a83-98b8-bfc24057f7bd lub LABEL=root). W celu skrócenia łącznego czasu potrzebnego do sprawdzenia wszystkich systemów plików, program fsck będzie usiłował sprawdzać równolegle systemy plików umieszczone na fizycznie różnych napędach dysków.

Jeśli nie określono systemu plików w wierszu poleceń, ani nie użyto opcji -A, fsck domyślnie sprawdzi po kolei systemy plików z /etc/fstab. Jest to odpowiednik opcji -As.

Status zakończenia pracy fsck:
0 Brak błędów
1 Poprawiono błędy systemu plików
2 System powinien zostać przeładowany (reboot)
4 Pozostawiono nienaprawione błędy systemu plików
8 Błąd działania
16 Błąd użycia (składni)
32 Sprawdzanie zostało przerwane przez użytkownika
128 Błąd biblioteki współdzielonej

OPCJE
-l Tworzy wyłączny plik blokady flock
-r [fd] Wyświetla określone statystyki po zakończeniu każdego fsck.
-s Wykonuje operacje fsck kolejno, szeregowo.
-t lista-syst-pl Określa typ(y) sprawdzanego(ych) systemu(ów) plików.
-A Przechodzi przez plik /etc/fstab i próbuje sprawdzić wszystkie systemy plików w jednym przebiegu.
-C [fd] Wyświetla wskaźniki zakończenia/postępu dla systemów plików, które je wspierają (aktualnie tylko ext[234]).
-M Nie sprawdza zamontowanych systemów plików i zwraca dla nich status zakończenia równy zero.
-N Nie wykonuje operacji, jedynie pokazuje, co byłoby wykonane.
-P Jeśli włączona jest opcja -A, to sprawdza główny system plików równolegle ze sprawdzaniem innych systemów.
-R Podczas sprawdzania wszystkich systemów plików z opcją -A, omija główny system plików (przydatne w przypadku, gdy jest on już zamontowany do odczytu/zapisu).
-T Nie pokazuje tytułu przy starcie.
-V Wyświetla informacje w trybie szczegółowym, łącznie ze wszystkimi wykonywanymi poleceniami specyficznymi dla poszczególnych systemów plików.

Składnia

fsck [opcje] [-t typ-systemu-plików]

Narzędzie 'fsck’ jest częścią pakietu 'util-linux’ i jest dostępny w większości dystrybucji Linux.

Jeśli nie określisz systemu plików, system przeanalizuje twój plik /etc/fstab pod kątem urządzeń do przeskanowania. Będziesz musiał uruchomić polecenie jako użytkownik root lub użyć go z sudo.

Możesz użyć polecenia fdisk lub df, aby wyświetlić listę dysków w systemie Linux. W ten sposób możesz określić, które urządzenie ma zostać sprawdzone za pomocą polecenia fsck.

Nie uruchamiaj fsck na zamontowanym urządzeniu, musisz najpierw odmontować cel, aby uniknąć uszkodzenia plików (tutaj: /dev/sda6 jest niezamontowany):

sudo fsck /dev/sda6
fsck z pakietu util-linux 2.38.1
e2fsck 1.46.6-rc1 (12-Sep-2022)
/dev/sda6: clean, 324868/1281120 files, 2220652/5120117 blocks

W przypadku zamontowanego dysku, fsck zwróci błąd (tutaj: /dev/sda2):

sudo fsck /dev/sda2
fsck z pakietu util-linux 2.38.1
e2fsck 1.46.6-rc1 (12-Sep-2022)
/dev/sda2 is mounted.
e2fsck: Cannot continue, aborting.

Naprawa dysku USB lub innego urządzenia wymiennego

Dla naszego celu załóżmy, że zidentyfikowałeś już problematyczne urządzenie /dev/sdb

Najpierw upewnij się, że dysk został odmontowany:

sudo umount /dev/sdb

Następnie uruchom fsck:

sudo fsck /dev/sdb

Sprawdź dane wyjściowe pod kątem błędów. Jeśli żaden nie jest wyświetlany, sprawdź kod wyjścia za pomocą 'echo $?’

Istnieje również kilka flag opcji, które możemy dodać, aby umożliwić automatyczną korektę. Polecenia te nie są jednak ustandaryzowane i powinieneś zweryfikować typ systemu plików oraz porównać dokumentację z tej konkretnej strony podręcznika.

Mimo to generalnie możesz użyć opcji -p, aby umożliwić fsck automatyczne zastosowanie napraw.

sudo fsck -p /dev/sdb

Naprawienie głównego systemu plików

Nie można odmontować partycji głównej, gdy system jest aktywny. Jeśli podejrzewasz, że główny system plików jest uszkodzony, musisz zastosować tutaj inne narzędzie. Możesz uruchomić fsck podczas rozruchu, w trybie ratunkowym lub użyć płyty CD z trybem odzyskiwania.

Wiele dystrybucji Linuksa automatycznie wymusza fsck podczas uruchamiania po określonej liczbie nieudanych prób rozruchu. Jeśli wolisz wziąć sprawy w swoje ręce, możesz zaplanować, aby system zrobił to sam.

Więcej informacji o 'fsck’ uzyskasz poleceniami:
fsck -h
man fsck

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna jest chroniona przez reCAPTCHA i Google Politykę Prywatności oraz obowiązują Warunki Korzystania z Usługi.