Kuinka käyttää fsck-tiedostoa korjaamaan tiedostojärjestelmävirheet Linuxissa


Tiedostojärjestelmät vastaavat tietojen tallentamisen ja palauttamisen järjestämisestä. Tavalla tai toisella, tiedostojärjestelmä voi vioittua ajan myötä, eikä tiettyihin sen osiin ole ehkä pääsyä. Jos tiedostojärjestelmässäsi ilmenee epäjohdonmukaisuutta, on suositeltavaa tarkistaa sen eheys.

Tämä voidaan suorittaa järjestelmän apuohjelmalla fsck (tiedostojärjestelmän johdonmukaisuuden tarkistus). Tämä tarkistus voidaan tehdä automaattisesti käynnistyksen aikana tai suorittaa manuaalisesti.

Tässä artikkelissa tarkastelemme fsck-apuohjelmaa ja sen käyttöä auttaaksesi korjaamaan levyvirheet.

On olemassa erilaisia skenaarioita, kun haluat suorittaa fsck. Tässä on muutama esimerkki:

  • Järjestelmä ei käynnisty.
  • Järjestelmässä olevat tiedostot vioittuvat (usein saatat nähdä syöttö-/lähtövirheen).
  • Liitetty asema (mukaan lukien flash-asemat/SD-kortit) ei toimi odotetulla tavalla.

Fsck-komento on suoritettava pääkäyttäjän oikeuksilla tai pääkäyttäjällä. Voit käyttää sitä eri argumenteilla. Niiden käyttö riippuu tapauksestasi. Alla näet joitain tärkeimpiä vaihtoehtoja:

    • -A - käytetään kaikkien tiedostojärjestelmien tarkistamiseen. Luettelo on otettu osoitteesta /etc/fstab .
    • -C - Näytä edistymispalkki.
    • -l - Lukitsee laitteen, jotta mikään muu ohjelma ei yritä käyttää osiota tarkistuksen aikana.
    • -M - Älä tarkista liitettyjä tiedostojärjestelmiä.
    • -N - Näytä vain, mitä tekisi - todellisia muutoksia ei tehdä.
    • -P - Jos haluat tarkistaa tiedostojärjestelmät samanaikaisesti, mukaan lukien pääkäyttäjä.
    • -R - Älä tarkista juuritiedostojärjestelmää. Tästä on hyötyä vain käytettäessä ‘ -A ’.
    • -r - Anna tilastotiedot jokaisesta tarkistettavasta laitteesta.
    • -T - ei näytä otsikkoa.
    • -t - Määritä yksinomaan tarkistettavat tiedostojärjestelmätyypit. Tyypit voivat olla pilkuilla erotettuja.
    • -V - Anna kuvaus siitä, mitä tehdään.

    Kuinka suorittaa fsck korjata Linux-tiedostojärjestelmän virheet

    Fsck: n suorittamiseksi sinun on varmistettava, että tarkistettavaa osiota ei ole asennettu. Tässä artikkelissa käytän toista asemaan /dev/sdb , joka on asennettu /mnt -kansioon.

    Näin tapahtuu, jos yritän suorittaa fsck, kun osio on asennettu.

    # fsck /dev/sdb
    

    Välttääksesi tämän osion irrottamisen.

    # umount /dev/sdb
    

    Sitten fsck voidaan ajaa turvallisesti.

    # fsck /dev/sdb
    

    Kun fsck on suoritettu, se palauttaa poistumiskoodin. Nämä koodit näkyvät fsckin käyttöoppaassa suorittamalla:

    # man fsck
    
    0      No errors
    1      Filesystem errors corrected
    2      System should be rebooted
    4      Filesystem errors left uncorrected
    8      Operational error
    16     Usage or syntax error
    32     Checking canceled by user request
    128    Shared-library error            
    

    Joskus tiedostojärjestelmässä voi olla useampi kuin yksi virhe. Tällaisissa tapauksissa saatat haluta, että fsck yrittää korjata virheet automaattisesti. Tämä voidaan tehdä:

    # fsck -y /dev/sdb
    

    -y -lippu, automaattisesti \"yes" kaikille fsck: n kehotuksille korjata virhe.

    Vastaavasti voit suorittaa saman kaikissa tiedostojärjestelmissä (ilman juuria):

    $ fsck -AR -y 
    

    Kuinka suorittaa fsck Linux-juuriosiossa

    Joissakin tapauksissa sinun on ehkä suoritettava fsck järjestelmän juuriosiossa. Koska et voi suorittaa fsck-ohjelmaa, kun osio on asennettuna, voit kokeilla jotakin näistä vaihtoehdoista:

    • Pakota fsck järjestelmän käynnistyessä
    • Suorita fsck pelastustilassa

    Tarkastelemme molempia tilanteita.

    Tämä on suhteellisen helppo suorittaa, sinun tarvitsee vain luoda Forcefsck-tiedosto järjestelmän juuriosioon. Käytä seuraavaa komentoa:

    # touch /forcefsck
    

    Sitten voit yksinkertaisesti pakottaa tai ajastaa järjestelmän uudelleenkäynnistyksen. Seuraavan käynnistyksen aikana fsck suoritetaan. Jos seisokit ovat kriittisiä, on suositeltavaa suunnitella tämä huolellisesti, koska jos järjestelmässäsi on paljon käytettyjä inodeja, fsck voi viedä ylimääräistä aikaa.

    Kun järjestelmä on käynnistynyt, tarkista onko tiedosto edelleen olemassa:

    # ls /forcefsck
    

    Jos näin tapahtuu, kannattaa ehkä poistaa se välttääksesi fsck: n jokaisessa järjestelmän käynnistyskohdassa.

    Fsck: n ajaminen pelastustilassa vaatii muutaman askeleen. Valmistele ensin järjestelmä uudelleenkäynnistystä varten. Pysäytä kaikki kriittiset palvelut, kuten MySQL/MariaDB jne., Ja kirjoita sitten.

    # reboot
    

    Pidä käynnistyksen aikana shift -näppäintä painettuna, jotta grub-valikko tulee näkyviin. Valitse\"Lisäasetukset".

    Valitse sitten\"Palautustila".

    Valitse seuraavasta valikosta\"fsck".

    Sinulta kysytään, haluatko / -tiedostojärjestelmän uudelleenasentaa. Valitse \"yes" .

    Sinun pitäisi nähdä jotain samanlaista kuin tämä.

    Tämän jälkeen voit palata normaaliin käynnistykseen valitsemalla\"Jatka".

    Tässä opetusohjelmassa opit käyttämään fsck: ää ja suorittamaan yhdenmukaisuuden tarkistuksia eri Linux-tiedostojärjestelmissä. Jos sinulla on kysyttävää fsck: stä, älä epäröi lähettää niitä alla olevaan kommenttiosioon.