hogyan kell használni az fsck parancsot Linuxban?
a fsck
parancs (file system consistence check) egy segédprogram egy Linux fájlrendszer ellenőrzésére és javítására. A naplózással rendelkező Modern fájlrendszerek úgy vannak kialakítva, hogy az fsck-hez hasonló eszközökre nincs szükség. Néhány esetben azonban az fsck lehet az egyetlen lehetőség a ‘rossz’ fájlrendszer javítására.
fsck
futtatható olyan partíción, amely sérült vagy nem felel meg a filesytem többi részének.
az fsck szükségességének okai
- tisztátalan leállítás-ez a korrupció fő oka. A ’tisztátalan leállítás’ miatt előfordulhat, hogy a rendszer még a rendszerindítást sem tudja megfelelően elindítani
- meghajtó meghibásodása vagy sérülése
Tartalomjegyzék
környezetek, ahol nem szabad használni fsck
mivel a parancs közvetlenül működik a fájlrendszer szektoraival, itt fontos megtenni a szükséges óvintézkedéseket.
az e2fsck man oldala szerint:
vegye figyelembe, hogy általában nem biztonságos az e2fsck futtatása csatlakoztatott fájlrendszereken. Az egyetlen kivétel az, ha a-n opció meg van adva, és a-c,- l vagy-L opciók nincsenek megadva. Azonban még akkor is, ha ez biztonságos, az e2fsck által kinyomtatott eredmények nem érvényesek, ha a fájlrendszer fel van szerelve. Ha az e2fsck megkérdezi, hogy ellenőrizze – e a csatlakoztatott fájlrendszert, az egyetlen helyes válasz “nem”.
https://www.man7.org/linux/man-pages/man8/e2fsck.8.html
tehát meg kell tennie fsck
egy fel nem szerelt partíción. Ha a partíciót a umount
használatával lehet leválasztani, akkor jó. Ellenkező esetben meg kell változtatnia a környezetet:
1. Recovery Mode
(Ubuntu-Hold SHIFT
indítás közben a GRUB-ba való belépéshez válassza az ‘Advanced Options For Ubuntu’ lehetőséget, majd válassza a ‘recovery mode’ feliratú opciót, majd válassza az fsck lehetőséget). Helyreállítási módban a partíciók fel vannak szerelve.
2. Az init=/bin/bash kernel paraméter használata közben
( indítás közben tartsa lenyomva a SHIFT
gombot a GRUB-ba való belépéshez, nyomja meg a e
gombot a kernel paramétereinek szerkesztéséhez). Ez egy bash shell, ahonnan fsck
lehet futtatni, de itt is, a partíciók vannak szerelve.
hogyan kell használni az fsck parancsot?
az alapok tisztázásával térjünk át a lépésekre, hogyan kell használni az fsck parancsot Linuxban.
1. A
alapvető használata mielőtt elkezdené használni a parancsot, győződjön meg arról, hogy nem szerelt partíción dolgozik. A partíció leválasztásához, majd az fsck futtatásához írja be :
$ sudo umount /dev/<partition_name>$ fsck /dev/<partition_name>
valószínű, hogy nem tudja leválasztani a partíciót. Ebben az esetben az alábbi módszerek közül választhat.
2. Az fsck futtatása élő USB-vel
valószínűleg ez a legjobb módja a fsck
futtatásának. Ez egy gazdag sor ismerős eszközök, mint a fdisk
. Használja ezt az oktatóanyagot egy élő Ubuntu USB létrehozásához. Ez a rész feltételezi, hogy Linuxot futtat egy élő USB-ről.
a rendszer összes partíciójának felsorolásához használhatja a fdisk
parancsot.
$ sudo fdisk -l
megjegyzés: a fenti partíciók (2 SSD, egy NVMe és más SATA esetén) eltérhetnek attól, ami a rendszeren van. az fdisk további információkat nyomtat a partíciókról is. E cikk alkalmazásában azonban elegendő a partíció neve.
azonosítsa a problémát okozó partíciót, majd egyszerűen futtassa:
$ fsck /dev/<partition_name>
ez megoldja a problémát.
3. Az initramfs
használata az fsck parancs használatának másik módja az intramfs módban. Bejutni initramfs
- tartsa lenyomva
SHIFT
gombot indítás közben, hogy belépjen a GRUB menübe. - nyomja meg a
e
gombot a rendszerindító bejegyzés szerkesztéséhez - adja hozzá a kernel paramétert ‘
break
‘ néven, amint az az alábbi képernyőképen látható - nyomja meg a
Ctrl - X
gombot a mentéshez és a kilépéshez
initramfs
a hibaelhárítás kevésbé csábító módját biztosítja.
a partíciók nincsenek beépítve initramfs-be, így a fsck
végrehajtása biztonságos lenne. Szüksége van a partíció nevére is. Az Initramfs azonban minimális segédprogramot biztosít. Tehát fdisk
nem lesz elérhető. A partíciókat a cat paranccsal felsorolhatja az alábbiak szerint:
$ cat /proc/partitions
azonosítsa a partíciót, majd futtassa:
$ fsck /dev/<partition_name>
Megjegyzés: előfordulhat, hogy a Live USB-t használó fsck nem mindig érhető el. Ebben az esetben használja az initramfs módszert.
hogyan ellenőrizhető, hogy az fsck ütemezett-e vagy sem
érdemes tudni, hogy mikor ellenőrizték a partíciót utoljára, vagy mikor lesz a jövőben. Ebben az esetben futtassa:
$ sudo tune2fs -l /dev/<partition_name> | egrep -i 'check|mount'
- a maximális csatolási szám azoknak a csatolásoknak a száma, amelyek után az fsck automatikusan ellenőrzi a fájlrendszert.
- ellenőrzési időköz a két fájlrendszer-ellenőrzés közötti idő.
ez a két érték elegendő ahhoz, hogy azonosítsa az fsck parancs utolsó futtatását.
különbség az fsck és az e2fsck között
különböző válaszokat / cikkeket találhat az e2fsck vagy az fsck futtatására.ext4 helyett fsck. Mi a különbség, ha ezeket az eszközöket futtatja a fsck
helyett?
fsck
csak egy frontend az összes fájlrendszer-specifikus fsck parancshoz, mint a fent látható kettő (egy wrapper, ha lehet mondani). A fsck
meghívása automatikusan meghívja a megfelelő fájlrendszer-specifikus fsck
fájlt. Lássuk, melyik fsck
van a rendszerünkön:
$ ls -l /sbin/fsck*
a fsck
futtatása ext2 / 3 / 4 partíción a megfelelő /sbin/fsck.ext*
futtatható fájlt futtatja. Ezek a futtatható fájlok viszont kemény linkek a e2fsck
futtatható fájlhoz. Tehát, még akkor is, ha futtatja fsck
egy ext4 partíción, akkor végül fut e2fsck
.
következtetés
ebben az oktatóanyagban a fsck
– ot tárgyaltuk, amely hasznos eszköz a fájlrendszerek helyreállításához. Ha többet szeretne megtudni a fsck
parancsról, nézze meg a man oldalt.
Leave a Reply