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.

helyreállítási mód Fsck
helyreállítási mód fsck

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.

Init Kernel paraméter
Init Kernel paraméter

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
Nvme partíciók
NVMe SSD partíciók
Sata Ssd partíciók
SATA SSD partíciók

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

  1. tartsa lenyomva SHIFT gombot indítás közben, hogy belépjen a GRUB menübe.
  2. nyomja meg a e gombot a rendszerindító bejegyzés szerkesztéséhez
  3. adja hozzá a kernel paramétert ‘break ‘ néven, amint az az alábbi képernyőképen látható
  4. nyomja meg a Ctrl - X gombot a mentéshez és a kilépéshez
Belépés Initramf-ekbe
Belépés Initramf-ekbe

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>
Initramf Fschk
Initramf Fsck

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'
ellenőrizze az Fsck-T 1
ellenőrizze az Fsck-t
  • 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 fsckhelyett?

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 fsckfájlt. Lássuk, melyik fsck van a rendszerünkön:

$ ls -l /sbin/fsck*
különböző Fscks
az összes fsck felsorolása

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