Provádění fsck na nekořenovém souborovém systému je poměrně přímočaré. Ale pro kořenový souborový systém nemůžete provést fsck, když je připojený.
Tento rychlý tutoriál vysvětluje, jak vynutit kontrolu souborového systému na kořenový souborový systém.
Kořenový souborový systém
V tomto příkladu je oddíl /dev/sda1 kořenovým souborovým systémem, který je připojen jako /
# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 63G 41G 19G 69% /
Pokud spustíte fsck za účelem kontroly vašeho kořenového souborového systému, zobrazí se následující chybová zpráva, protože /dev/sda1 je připojeno a nemůžete provést fsck na připojeném souborovém systému.
# fsck /dev/sda1 fsck from util-linux-ng 2.17.2 e2fsck 1.41.12 (17-May-2010) /dev/sda1 is mounted. e2fsck: Cannot continue, aborting.
Pokud provádíte fsck na jiném než kořenovém souborovém systému, stačí tento oddíl odpojit a provést fsck.
Ale v tomto případě rádi provádíme fsck na kořenovém souborovém systému. Jaké je tedy řešení?
Pokud jste s fsck noví, přečtěte si toto:10 příkladů příkazů Linux Fsck ke kontrole a opravě souborového systému
Výstup Tune2fs před restartem
Než restartujeme systém, podívejme se, kdy naposledy fsck provedl kontrolu kořenového souborového systému.
K tomu použijte příkaz tune2fs a grep pro „check“, jak je ukázáno níže.
# tune2fs -l /dev/sda1 | grep -i check Last checked: Mon Nov 24 12:39:44 2015 Check interval: 15552000 (6 months) Next check after: Sun May 22 13:39:44 2016
Jak vidíme z výše uvedeného výstupu:
- Poslední kontrola:označuje, kdy naposledy proběhla kontrola kořenového souborového systému. Stalo se to listopadu
- Zkontrolovat interní:označuje, jak často bude kontrolován kořenový souborový systém. V tomto příkladu bude čekat dalších 6 měsíců, než se na tomto souborovém systému během restartu spustí fsck.
- Další kontrola po:označuje datum a čas, po kterém bude po provedení restartu zkontrolován souborový systém. Stane se tak až po květnu.
Ale v našem případě nechceme čekat do května. Nyní chceme provést kontrolu fsck kořenového souborového systému.
Vytvořte soubor /forcefsck pro vynucení kontroly kořenového systému souborů
Chcete-li tedy vynutit kontrolu kořenového souborového systému, jedním ze snadných způsobů je restartovat systém a přinutit fsck provést souborový systém, když se systém spouští, než je kořenový souborový systém připojen jádrem.
Chcete-li vynutit fsck během restartu, nejprve vytvořte prázdný soubor s názvem forcefsck pod /, jak je znázorněno níže.
# cd / # touch forcefsck # ls -l /forcefsck -rw-r--r--. 1 root root 0 Mar 9 20:15 /forcefsck
Nyní restartujte systém:
# reboot
Výstup Tune2fs po restartu
Pokud máte přístup ke konzole, můžete vidět, že fsck bude během restartu provádět kontrolu souborového systému /.
Po kontrole fsck automaticky odstraní soubor /forcefsck, který jsme vytvořili dříve. Po restartu již tento soubor neuvidíte.
# ls -l /forcefsck ls: cannot access /forcefsck: No such file or directory
Nyní, když spustíte tune2fs, uvidíte, že pole „Poslední kontrola“ bylo aktualizováno aktuálním časovým razítkem. To potvrzuje, že fsck provedl kontrolu kořenového souborového systému během restartu.
# tune2fs -l /dev/sda1 | grep -i check Last checked: Wed Mar 09 20:30:04 2016 Check interval: 15552000 (6 months) Next check after: Mon Sep 05 21:30:04 2016
Uvidíte také odpovídajícím způsobem změněnou hodnotu „Další kontrola po“. tj. 6 měsíců od doby, kdy jsme restartovali systém.