Scroll to navigation

FSCK(8) Administracja systemem FSCK(8)

NAZWA

fsck - sprawdza i naprawia linuksowy system plików

SKŁADNIA

fsck [-lsAVRTMNP] [-r [fd]] [-C [fd]] [-t typ-systemu-plików] [system-plików...] [--] [opcje-zależne-od-syst-pl]

OPIS

fsck służy do sprawdzania i, opcjonalnie, do naprawy jednego lub kilku linuksowych systemów plików. Syst-pl może być nazwą urządzenia (np. /dev/hdc1, /dev/sdb2), punktem montowania (np. /, /usr, /home), albo etykietą ext2 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.

Kod zakończenia zwracany przez fsck jest sumą następujących warunków:

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

Kod zakończenia zwracany, gdy sprawdzane jest kilka systemów plików jest bitową alternatywą (OR) kodów zakończenia dla każdego ze sprawdzanych systemów plików.

W rzeczywistości fsck jest po prostu interfejsem dla różnych programów sprawdzających dostępne w Linuksie systemy plików (fsck.typ-systemu-plików). Poszukiwanie programu specyficznego dla danego systemu plików odbywa się w zmiennej środowiskowej PATH. Jeśli PATH jest niezdefiniowana, przeszukiwane jest "/sbin".

Więcej szczegółów można znaleźć na stronach podręcznika programów sprawdzających właściwych dla poszczególnych systemów plików.

OPCJE

-l
Tworzy wyłączny plik blokady flock (w /run/fsck/<nazwa-dysku>) dla całego urządzenia dyskowego. Opcja może być użyta wyłącznie z jednym urządzeniem (co oznacza, że opcje -A i -l wykluczają się wzajemnie. Zaleca się użycie tej opcji, gdy uruchomione jest kilka kopii fsck(8) w tym samym czasie. Opcja jest ignorowana, gdy zostanie użyta w stosunku do wielu urządzeń lub w odniesieniu do dysków nieobrotowych. Program fsck nie blokuje niższej warstwy urządzeń, gdy jest wykonywany na urządzeniach typu "stacked" (np. MD - tzw. RAID programowy lub DM - device mapper) – ta funkcja nie została jeszcze zaimplementowana.
-r [fd]
Wyświetla określone statystyki po zakończeniu każdego fsck. Na statystyki składają się kod zakończenia, maksymalny rozmiar uruchomionego zestawu (w kilobajtach), czas jaki upłynął i czas procesora dla użytkownika i systemu użyty przez przebieg fsck, np.:

/dev/sda1: status 0, rss 92828, real 4.002804, user 2.677592, sys 0.86186

Interfejsy GUI mogą podać deskryptor pliku fd; w takim przypadku pasek postępu będzie przesyłany do tego deskryptora w formacie przetwarzalnym maszynowo, np.

/dev/sda1 0 92828 4.002804 2.677592 0.86186

-s
Wykonuje operacje fsck kolejno, szeregowo. Jest to dobre podejście, jeśli sprawdzanych jest wiele systemów plików, a programy sprawdzające działają w trybie interaktywnym. (Uwaga: e2fsck(8) domyślnie działa w trybie interaktywnym. By uruchomić e2fsck(8) w trybie nieinteraktywnym, trzeba podać opcję -p lub -a, gdy błędy mają być naprawiane automatycznie, albo opcję -n, gdy nie mają być naprawiane).
-t lista-syst-pl
Określa typ(y) sprawdzanego(ych) systemu(ów) plików. Jeśli podano opcję -A, to sprawdzane będą tylko te systemy plików, które pasują do listy lista-syst-pl. Parametr lista-syst-pl stanowi rozdzieloną przecinkami listę systemów plików oraz podanych opcji. Dowolny z systemów plików na tej liście może być poprzedzony operatorem negacji 'no' lub '!', co oznacza sprawdzanie wyłącznie systemów plików nie występujących na liście lista-syst-pl. Jeśli żaden z systemów plików w lista-syst-pl nie zostanie poprzedzony operatorem negacji, to sprawdzane będą wyłącznie systemy plików występujące na liście lista-syst-pl.

Options specifiers may be included in the comma-separated fslist. They must have the format opts=fs-option. If an options specifier is present, then only filesystems which contain fs-option in their mount options field of /etc/fstab will be checked. If the options specifier is prefixed by a negation operator, then only those filesystems that do not have fs-option in their mount options field of /etc/fstab will be checked.

Na przykład, jeśli opts=ro pojawi się w liscie-syst-pl, to tylko systemy plików z pliku /etc/fstab, posiadające opcję ro będą sprawdzone.

Dla zgodności z dystrybucją Mandrake, w której skrypty startowe uzależnione są od nieautoryzowanej zmiany interfejsu użytkownika programu fsck, gdy typem systemu plików jest loop, to jest to traktowane tak, jakby podano opts=loop jako argument opcji -t.

Normally, the filesystem type is deduced by searching for filesys in the /etc/fstab file and using the corresponding entry. If the type cannot be deduced, and there is only a single filesystem given as an argument to the -t option, fsck will use the specified filesystem type. If this type is not available, then the default filesystem type (currently ext2) is used.

-A
Przechodzi przez plik /etc/fstab i próbuje sprawdzić wszystkie systemy plików w jednym przebiegu. Opcja ta jest najczęściej wykorzystywana przez plik startowy /etc/rc, zamiast wielu poleceń sprawdzających pojedyncze systemy plików.

Główny system plików (/) zostanie sprawdzony jako pierwszy, chyba że podano opcję -P (patrz poniżej). Następnie będą sprawdzane systemy plików w kolejności określonej przez liczbę występującą w polu fs_passno (szóstym) pliku /etc/fstab. Systemy plików z wartością fs_passno wynoszącą 0 będą pomijane i w ogóle nie będą sprawdzane. Systemy plików z wartością fs_passno większą od zera będą sprawdzane w kolejności rosnącej, tzn. systemy plików z mniejszą wartością fs_passno będą sprawdzane wcześniej. Jeżeli istnieje kilka systemów plików o tym samym numerze przejścia, to fsck będzie usiłował sprawdzić je równolegle, jednakże będzie unikał jednoczesnego sprawdzania wielu systemów plików na tym samym dysku fizycznym.

fsck does not check stacked devices (RAIDs, dm-crypt, ...) in parallel with any other device. See below for FSCK_FORCE_ALL_PARALLEL setting. The /sys filesystem is used to determine dependencies between devices.

Stąd też, bardzo powszechną konfiguracją w /etc/fstab jest ustawienie dla głównego systemu plików pola fs_passno o wartości 1, zaś dla wszystkich pozostałych systemów plików przypisanie fs_passno wartości 2. Pozwoli to fsck na automatyczne równoległe uruchamianie programów sprawdzających systemy plików, jeżeli tylko było by to korzystne. Administratorzy systemów mogą zrezygnować z używania takiej konfiguracji jeśli z jakiegoś powodu chcą uniknąć równoległego sprawdzania systemów plików – na przykład, jeśli dany komputer niewiele pamięci, tak że problemem jest intensywne zastępowanie stron pamięci (paging).

fsck normally does not check whether the device actually exists before calling a filesystem specific checker. Therefore non-existing devices may cause the system to enter filesystem repair mode during boot if the filesystem specific checker returns a fatal error. The /etc/fstab mount option nofail may be used to have fsck skip non-existing devices. fsck also skips non-existing devices that have the special filesystem type auto.

-C [fd]
Wyświetla wskaźniki zakończenia/postępu dla systemów plików, które je wspierają (aktualnie tylko ext[234]). fsck będzie tak sterować programami sprawdzającymi systemy plików, aby tylko jeden z nich wyświetlał wskaźnik postępu w danej chwili. Interfejsy graficzne mogą podać deskryptor pliku fd i w takim przypadku informacje paska postępu zostaną wysłane do owego deskryptora.
-M
Nie sprawdza zamontowanych systemów plików i zwraca dla nich kod 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. Nie jest to najbezpieczniejsza czynność pod słońcem, jaką można wykonać, ponieważ jeśli główny system plików jest wątpliwy, to nawet plik binarny e2fsck(8) może być uszkodzony! Opcja ta jest przeznaczona głównie dla tych administratorów systemów, którzy nie chcą partycjonować ponownie głównego systemu plików, tak by był mały i zwarty (co jest tak naprawdę poprawnym rozwiązaniem).
-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.
-?, --help
Wyświetla ten tekst i kończy pracę.
--version
Wyświetla informacje o wersji i kończy działanie.

FILESYSTEM SPECIFIC OPTIONS

Options which are not understood by fsck are passed to the filesystem-specific checker!

These options must not take arguments, as there is no way for fsck to be able to properly guess which options take arguments and which don't.

Dowolne opcje występujące po -- są traktowane jako opcje specyficzne dla danego systemu plików, które mają zostać przekazane do odpowiedniego programu sprawdzającego ten system plików.

Please note that fsck is not designed to pass arbitrarily complicated options to filesystem-specific checkers. If you're doing something complicated, please just execute the filesystem-specific checker directly. If you pass fsck some horribly complicated options and arguments, and it doesn't do what you expect, don't bother reporting it as a bug. You're almost certainly doing something that you shouldn't be doing with fsck. Options to different filesystem-specific fsck's are not standardized.

PLIKI

/etc/fstab

ZMIENNE ŚRODOWISKOWE

Na zachowanie programu fsck mają wpływ następujące zmienne środowiskowe:
FSCK_FORCE_ALL_PARALLEL
Jeśli ta zmienna jest ustawiona, fsck będzie próbował uruchomić równolegle programy sprawdzające wszystkie podane systemy plików, niezależnie od tego, czy systemy plików znajdują się na tym samym, czy na różnych urządzeniach. (Jest to przydatne w przypadku systemów RAID lub wysokiej klasy systemów pamięci masowej, jak np. sprzedawane przez firmy takie, jak IBM czy EMC). Proszę zauważyć, że wartość fs_passno jest wciąż używana.
FSCK_MAX_INST
Ta zmienna środowiskowa ogranicza maksymalną liczbę uruchamianych jednocześnie programów sprawdzających systemy plików. W przypadku konfiguracji zawierających dużą liczbę dysków, pozwala to uniknąć jednoczesnego uruchamiania przez fsck zbyt wielu programów sprawdzających, co mogłoby przeciążyć dostępne w systemie zasoby procesorów i pamięci. Wartość zero pozwala na nieograniczone mnożenie się procesów. Jest to aktualnie zachowanie domyślne, jednakże przyszłe wersje fsck mogą próbować automatycznie określać ilość jednoczesnych sprawdzań systemów plików na podstawie zgromadzonych przez system operacyjny danych ewidencyjnych.
PATH
Zmienna środowiskowa PATH jest używana do znalezienia podprogramów do konkretnych systemów plików.
FSTAB_FILE
Ta zmienna środowiskowa pozwala administratorowi systemu zmianę standardowego położenia pliku /etc/fstab. Służy ona również osobom rozwijającym program, do testowania fsck.
LIBBLKID_DEBUG=all
włącza wyjście debugowania libblkid.
LIBMOUNT_DEBUG=all
włącza wyjście debugowania libmount.

ZOBACZ TAKŻE

fstab(5), mkfs(8), fsck.ext2(8) or fsck.ext3(8) or e2fsck(8), cramfsck(8), fsck.jfs(8), fsck.nfs(8), fsck.minix(8), fsck.msdos(8), fsck.vfat(8), fsck.xfs(8), reiserfsck(8)

AUTORZY

Theodore Ts'o <tytso@mit.edu>
Karel Zak <kzak@redhat.com>

DOSTĘPNOŚĆ

The fsck command is part of the util-linux package and is available from Linux Kernel Archive.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Wojtek Kotwica <wkotwica@post.pl>, Andrzej Krzysztofowicz <ankry@green.mf.pg.gda.pl> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres manpages-pl-list@lists.sourceforge.net.

luty 2009 util-linux