Program fsck jest wykorzystywany w systemie Linux do
A. wykrycia struktury sieci i diagnostyki przepustowości sieci lokalnej.
B. monitorowania parametrów pracy i wydajności podzespołów komputera.
C. przeprowadzenia testów wydajnościowych serwera WWW poprzez wysłanie dużej liczby żądań.
D. dokonania oceny stanu systemu plików i wykrycia uszkodzonych sektorów.
Pytanie z egzaminu CKE, czerwiec 2018 (arkusz EE.08-X-18.06).
Program fsck w Linuksie służy do sprawdzania spójności systemu plików, czyli mówiąc prościej: kontroluje, czy struktury na partycji są logicznie poprawne i czy system da się bezpiecznie zamontować oraz używać. Narzędzie potrafi wykrywać problemy takie jak błędne wpisy katalogów, uszkodzone i-węzły, niezgodności w liczbie wolnych bloków, błędy w tablicach alokacji czy osierocone pliki. W praktyce administrator uruchamia np. fsck /dev/sda1, ale zwykle robi się to na niezamontowanej partycji albo w trybie ratunkowym, bo sprawdzanie aktywnie używanego systemu plików może narobić bałaganu. W przypadku systemów ext2/ext3/ext4 właściwym programem pod spodem jest często e2fsck. Wykrywanie uszkodzonych sektorów jest powiązane z testem bloków, np. przez opcję -c, która korzysta z narzędzia badblocks. Moim zdaniem warto zapamiętać, że fsck to nie jest ogólny tester komputera, tylko narzędzie od kondycji systemu plików. Dobra praktyka branżowa: przed naprawą ważnej partycji warto mieć kopię zapasową, sprawdzić komunikaty w dziennikach systemowych i nie klikać bezmyślnie yes na każdą poprawkę, zwłaszcza na serwerze produkcyjnym.
Fsck bywa mylony z różnymi narzędziami diagnostycznymi, bo w nazwie i działaniu kojarzy się ogólnie z naprawianiem problemów w systemie. Trzeba jednak rozdzielić kilka obszarów. Diagnostyka sieci lokalnej, wykrywanie topologii czy badanie przepustowości to zadania dla narzędzi takich jak ip, ping, traceroute, nmap, iperf albo specjalistycznych skanerów sieciowych. Fsck nie analizuje przełączników, adresacji IP, opóźnień ani pasma transmisji. Nie powie też, czy kabel jest źle zarobiony albo czy VLAN jest poprawnie ustawiony. Monitorowanie parametrów pracy komputera to też inna działka. Do temperatur, obciążenia CPU, pamięci RAM, dysków i usług używa się np. top, htop, vmstat, iostat, sensors, smartctl czy systemów typu Zabbix i Prometheus. Fsck nie jest monitorem wydajności, działa raczej punktowo i zwykle podczas konserwacji lub po niepoprawnym zamknięciu systemu. Testowanie serwera WWW dużą liczbą żądań to z kolei benchmark aplikacyjny, wykonywany narzędziami typu ab, wrk, siege albo JMeter. Typowy błąd myślowy polega tu na tym, że każde narzędzie uruchamiane w terminalu traktuje się jako ogólną diagnostykę. W Linuksie narzędzia są zwykle mocno wyspecjalizowane: fsck dotyczy spójności systemu plików i ewentualnie wykrywania problemów z blokami danych, a nie sieci, wydajności sprzętu czy testów HTTP.