Pracuję z systemem, w którym chcemy pozwolić użytkownikom na zabawę z datą i godziną, jeśli chcą, i gdzie ponowne uruchomienie może nastąpić dowolnie. Jest to w porządku, z wyjątkiem jednej rzeczy: jeśli następuje duży skok w tył, podczas ponownego uruchamiania pojawia się następujący błąd:
Checking filesystems
IMAGE2: Superblock last mount time (Tue Mar 1 17:32:48 2011,
now = Thu Feb 24 17:34:29 2011) is in the future.
IMAGE2: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
*** An error occurred during the file system check.
*** Dropping you to a shell; the system will reboot
*** when you leave the shell.
… A następnie rozruch zawiesza się, czekając na dane wejściowe konsoli użytkownika, a nawet po uzyskaniu dostępu do konsoli wymaga hasła roota, aby kontynuować.
Jest to zdecydowanie mniej niż idealne. Czy jest jakiś sposób, aby pominąć czek lub zmusić go do automatycznego wykonania po ponownym uruchomieniu?
Google zapewnił tylko pomoc, która wymaga ręcznego uruchomienia fsck, jeśli / kiedy zostanie on trafiony, a nie o to mi chodzi. Ręczne uruchamianie fsck po ustawieniu czasu nie działa, ponieważ system plików jest nadal montowany w tym momencie, a samo wyłączenie fsck jest mniej niż idealne.
Używam RedHat 6.
Aktualizacja : Rozwiązaniem, z którego obecnie korzystam, jest zhakowanie fstab, aby wyłączyć sprawdzanie fsck przy ponownym uruchomieniu. Próbowałem edytować ostatni czas montowania na dyskach debugfs
, co działa dobrze w przypadku dysków ext3, ale wydaje się, że zawiesza się niekonsekwentnie na ext4.