kuinka fsck-komentoa käytetään Linuxissa?
fsck
– komento (file system consistency check) on apuohjelma Linux-tiedostojärjestelmän tarkistamiseen ja korjaamiseen. Nykyaikaiset tiedostojärjestelmät päiväkirjalla on suunniteltu siten, että fsck: n kaltaisia työkaluja ei helposti tarvita. Kuitenkin, muutamassa tapauksessa, fsck saattaa olla ainoa vaihtoehto korjata ‘huono’ tiedostojärjestelmä.
fsck
voidaan ajaa osiolla, joka on vioittunut tai epäjohdonmukainen muun tiedostosytemin kanssa.
syyt, miksi fsck: ta voidaan tarvita
- epäpuhdas sammutus – tämä on suurin syy korruptioon. “Epäpuhtaan sammutuksen” vuoksi järjestelmä ei välttämättä edes käynnisty kunnolla
- aseman vika tai vioittuminen
Sisällysluettelo
ympäristöt, joissa sinun ei pitäisi käyttää fsck
koska komento toimii suoraan tiedostojärjestelmän sektoreiden kanssa, on tärkeää ryhtyä tarvittaviin varotoimiin tässä.
e2fsck: n miessivulla lukee:
huomaa, että e2fsck: n ajaminen asennetuilla tiedostojärjestelmillä ei yleensä ole turvallista. Ainoa poikkeus on, Jos-n vaihtoehto on määritetty, ja-c,- l, tai-L vaihtoehtoja ei ole määritetty. Vaikka se olisi turvallista, e2fsck: n tulostamat tulokset eivät ole voimassa, jos tiedostojärjestelmä on asennettu. Jos e2fsck kysyy, pitäisikö sinun tarkistaa asennettu tiedostojärjestelmä, ainoa oikea vastaus on”ei”.
https://www.man7.org/linux/man-pages/man8/e2fsck.8.html
joten, sinun täytyy tehdä fsck
asentamattomalle osiolle. Jos voit irrottaa osion käyttämällä umount
, hyvä niin. Muuten sinun täytyy muuttaa ympäristöäsi:
1. Palautustila
(Ubuntu-Hold SHIFT
käynnistettäessä siirtyä GRUB, valitse ‘Lisäasetukset Ubuntu’, valitse vaihtoehto merkitty ‘palautustila’, valitse fsck). Palautustilassa osiot asennetaan.
2. Kun käytät init=/bin/bash-ydinparametria
( pidä painettuna SHIFT
käynnistettäessä siirtyäksesi grubiin, paina e
muokataksesi ytimen parametreja). Se tarjoaa bash-komentotulkin, josta fsck
voisi ajaa, mutta tässäkin osiot on asennettu.
kuinka fsck-komentoa käytetään?
kun perusasiat ovat selvillä, siirrytään vaiheisiin, miten fsck-komentoa kannattaa käyttää Linuxissa.
1.
peruskäyttö ennen kuin aloitat komennon käyttämisen, varmista, että työstät asentamatonta osiota. Poista osio ja suorita sitten fsck it-tyypillä :
$ sudo umount /dev/<partition_name>$ fsck /dev/<partition_name>
mahdollisuudet ovat et voi irrottaa osiota. Siinä tapauksessa, voit valita jonkin seuraavista menetelmistä.
2. Fsck: n ajaminen live-USB: llä
tämä lienee paras tapa ajaa fsck
. Se tarjoaa runsaasti tuttuja työkaluja, kuten fdisk
. Käytä tätä opetusohjelma luoda live Ubuntu USB. Tässä osassa oletetaan, että käytät Linuxia Live-USB: ltä.
voit listaa kaikki järjestelmäsi osiot komennolla fdisk
.
$ sudo fdisk -l
Huomautus: osiot edellä (2 SSD, yksi NVMe ja muut SATA) voi olla erilainen kuin mitä sinulla on järjestelmässä. fdisk tulostaa lisätietoa myös osioista. Tässä artikkelissa riittää kuitenkin osion nimi.
tunnista ongelmia aiheuttava osio, suorita sitten yksinkertaisesti:
$ fsck /dev/<partition_name>
tämän pitäisi korjata ongelma.
3. Käyttämällä initramfs
toinen tapa käyttää fsck-komentoa on intramfs-tilassa. Päästä sisään initramfs
- pidä
SHIFT
näppäintä käynnistettäessä päästäksesi GRUB-valikkoon. - paina
e
muokataksesi aloitusmerkintää - lisää ytimen parametri “
break
“, kuten alla olevassa kuvakaappauksessa - paina
Ctrl - X
tallentaaksesi ja poistuaksesi
initramfs
tarjoaa ‘vähemmän houkutteleva’ tapa vianmääritys.
väliseiniä ei ole asennettu initramfeihin, joten fsck
suorittaminen olisi turvallista. Tarvitset myös osion nimen. Initramfs tarjoaa kuitenkin erittäin vähän apuohjelmia. fdisk
ei siis ole saatavilla. Voit listata osiot cat-komennolla kuten alla:
$ cat /proc/partitions
tunnista osio ja suorita sitten:
$ fsck /dev/<partition_name>
Huomautus: fsck käyttämällä Live USB ei välttämättä ole aina saatavilla. Tällöin käytetään initramfs-menetelmää.
miten tarkistaa, onko fsck ajoitettu vai ei
haluat ehkä tietää, milloin osiosi tarkistettiin viimeksi tai milloin se tehdään tulevaisuudessa. Siinä tapauksessa juokse:
$ sudo tune2fs -l /dev/<partition_name> | egrep -i 'check|mount'
- suurin liitosmäärä on kiinnikkeiden lukumäärä, jonka jälkeen fsck tarkistaa tiedostojärjestelmän automaattisesti.
- tarkistusväli on kahden tiedostojärjestelmän tarkistuksen välinen aika.
nämä kaksi arvoa riittävät tunnistamaan, milloin fsck-komento Viimeksi ajettiin.
ero fsck: n ja e2fsck: n välillä
saatat löytää erilaisia vastauksia/artikkeleita, joissa sinua pyydetään suorittamaan e2fsck tai fsck.ext4 fsck: n sijaan. Mitä väliä sillä on, jos käytät jotain näistä työkaluista sijaan fsck
?
fsck
on vain frontend kaikille tiedostojärjestelmäkohtaisille fsck-komennoille, kuten kaksi yllä olevaa komentoa (kääre, jos niin voisi sanoa). Kutsuminen fsck
kutsuu automaattisesti oikean tiedostojärjestelmäkohtaisen fsck
. Katsotaan, mitkä kaikki fsck
ovat järjestelmässämme:
$ ls -l /sbin/fsck*
suoritettaessa fsck
ext2 / 3 / 4-osiolla suoritetaan vastaava /sbin/fsck.ext*
suoritustiedosto. Nämä suoritettavat tiedostot puolestaan ovat kovia linkkejä e2fsck
suoritettavaan. Joten, vaikka ajaisit fsck
ext4-osiolla, se ajaisi lopulta e2fsck
.
johtopäätös
tässä opetusohjelmassa käsittelimme fsck
, joka on hyödyllinen työkalu tiedostojärjestelmien palauttamisessa. Lisätietoja fsck
komennosta on sen man-sivulla.
Leave a Reply