Od:
http://linux.die.net/man/8/fsck.ext3
„Należy pamiętać, że w ogóle nie jest bezpiecznie uruchomić e2fsck
na zamontowanych systemach plików. Jedynym wyjątkiem jest sytuacja, gdy -n
opcja jest określona, a -c
, -l
albo -L
opcje nie są określone. Jednakże, nawet jeśli jest to bezpieczne, wyniki drukowane przez e2fsck
to nieważne, jeśli system plików jest zamontowany. Jeśli pojawi się e2fsck
pytanie, czy powinieneś sprawdzić zamontowany system plików, jedyną prawidłową odpowiedzią jest „nie”. Tylko eksperci, którzy naprawdę wiedzą, co robią, powinni rozważyć odpowiedź na to pytanie w innym sposób. "
Podstawowym problemem jest to, że narzędzie do sprawdzania systemu plików nie jest (zwykle) częścią systemu plików. Zamiast tego jest to osobny program, który czyta i zapisuje na tym samym dysku, co kod systemu plików w jądrze. W rezultacie, jeśli uruchomisz fsck na aktywnym systemie plików, masz dwa różne podmioty, które odczytują (i potencjalnie modyfikują) te same dane (dysk), ale nie koordynują się ze sobą w żaden sposób. W rezultacie, jak zauważyli inni, większość kontrolerów oczekuje, że nikt inny nie zmienia metadanych systemu plików podczas ich działania. Zostaną zdezorientowani i / lub zgłoszą fałszywe błędy, jeśli system plików jądra zmieni coś, czego nie oczekuje moduł sprawdzający.
Istnieje kilka systemów plików z kontrolerami, które są specjalnie zaprojektowane do uruchamiania „on-line” (tzn. Gdy system plików jest aktywny). Nowsze wersje FFS / UFS robią to, uruchamiając fsck z najnowszą migawką systemu plików (replika tylko do odczytu, kopia w czasie, tylko do odczytu). Jeśli znajdzie problemy, takie jak niespójności w mapach bitowych alokacji, poprawi je za pomocą wywołania systemowego, a nie poprzez zapisanie na dysku surowym. Pozwala to na koordynację z aktywnym systemem plików.
WAFL NetApp ma również narzędzie do sprawdzania on-line. Prawdopodobnie są inni.
źródło
Uruchamianie fsck na partycji do odczytu i zapisu byłoby głupie, nawet z fsck w trybie tylko do odczytu. System plików zmieni się pod fsck, a dane w pamięci podręcznej, które fsck buforuje z systemu plików, staną się nieprawidłowe (i dlatego fsck zobaczy niespójność). Możesz uruchomić fsck na systemie plików montowanym tylko do odczytu w trybie tylko do odczytu i uzyskać prawidłowe wyniki. Uruchomienie fsck w trybie do odczytu / zapisu na zamontowanym systemie plików tylko do odczytu, jeśli fsck wprowadzi zmiany do systemu plików podczas jego uruchamiania, spowoduje, że jądro zobaczy nieoczekiwanie zmiany struktur systemu plików pod nim. To też byłoby złe.
źródło
Poza faktem, że prawdopodobnie zabiłoby to twoją przepustowość we / wy, jeśli system plików jest modyfikowany podczas fsckd, nie ma mowy, aby fsck mógł śledzić zmiany i zgłaszać niezgodności.
Niektóre systemy plików, takie jak XFS, pozwalają na sprawdzenie spójności, gdy system plików jest zamontowany do odczytu i zapisu, z zastrzeżeniem, że prawdopodobnie zostaną zgłoszone fałszywe błędy.
xfs_check
zaleca odmontowanie systemu plików lub zamontowanie go w trybie tylko do odczytu przed wykonaniem sprawdzenia.źródło
Cóż, celem fsck jest zgłaszanie niespójności systemu plików, czyli naruszonych niezmienników.
Jednak wiele z tych kontroli obejmuje więcej niż jedną strukturę FS. Jeśli ktoś modyfikuje FS (zapis danych), struktury te mogą być tymczasowo niezsynchronizowane. fsck uznałby to za niespójność, nawet jeśli tak naprawdę nie stanowi to problemu. fsck nie ma sposobu, aby stwierdzić, czy niespójność jest tylko tymczasowa, czy trwały problem, który wymaga naprawy. Więc to nie może działać (chyba, że FS został zaprojektowany specjalnie, aby umożliwić sprawdzanie online. Niektórzy tak robią, ale ext3 nie).
źródło
Cóż, możesz. fsck -n / dev / sda1 zrobi dokładnie to, przynajmniej na ext3. Właśnie to przetestowałem :)
źródło
Możesz, tak jak możesz wsadzić rękę do ruchomego blendera i być może nie zranić się, lub tak samo, jak możesz zeskoczyć z wysokiego budynku, dążąc do małego stosu poduszek ułożonych na chodniku poniżej.
Ale dlaczego miałbyś nie sprawdzać własnej śmiertelności? Ponieważ twój szef z pewnością ponownie go przetestuje, gdy dowie się, DLACZEGO serwer pocztowy nie rozpoznaje teraz dysku głównego.
źródło