Kuinka tarkistaa huonot sektorit tai huonot lohkot kiintolevyllä Linuxissa
Aloitetaan määrittelemällä viallinen sektori/lohko, se on levyaseman tai flash-muistin osio, jota ei voida enää lukea tai johon ei voi kirjoittaa levypinnan kiinteän fyysisen vaurion tai viallisten flash-muistitransistoreiden vuoksi.
Kun huonoja sektoreita kertyy jatkuvasti, ne voivat vaikuttaa ei-toivottavasti tai tuhoisasti levyaseman tai flash-muistin kapasiteettiin tai jopa johtaa mahdolliseen laitteistovikaan.
On myös tärkeää huomata, että huonojen lohkojen läsnäolon pitäisi varoittaa sinua harkitsemaan uuden levyaseman hankkimista tai yksinkertaisesti merkitsemään huonot lohkot käyttökelvottomiksi.
Siksi tässä artikkelissa käymme läpi tarvittavat vaiheet, joiden avulla voit määrittää viallisten sektoreiden olemassaolon tai puuttumisen Linux-levyasemassasi tai flash-muistissasi käyttämällä tiettyjä levyntarkistusapuohjelmia.
Alla on kuitenkin menetelmät:
Tarkista huonot sektorit Linux-levyillä badblocks-työkalulla
Badblocks-ohjelman avulla käyttäjät voivat etsiä laitteesta virheellisiä sektoreita tai lohkoja. Laite voi olla kiintolevy tai ulkoinen levyasema, jota edustaa tiedosto, kuten /dev/sdc.
Käytä ensin fdisk-komentoa pääkäyttäjän oikeuksilla näyttääksesi tiedot kaikista levyasemistasi tai flash-muististasi sekä niiden osioista:
sudo fdisk -l
Tarkista sitten Linux-levyasemasi ja tarkista vialliset sektorit/lohkot kirjoittamalla:
sudo badblocks -v /dev/sda10 > badsectors.txt
Yllä olevassa komennossa badblocks skannaa laitetta /dev/sda10 (muista määrittää todellinen laitteesi) -v
-komennolla, joka mahdollistaa sen näyttämisen operaation yksityiskohdat. Lisäksi toiminnon tulokset tallennetaan tiedostoon badsectors.txt tulosteen uudelleenohjauksen avulla.
Jos huomaat levyasemassasi viallisia sektoreita, irrota levy ja ohjeista käyttöjärjestelmää olemaan kirjoittamatta raportoituihin sektoreihin seuraavasti.
Sinun on käytettävä e2fsck-komentoa (ext2/ext3/ext4-tiedostojärjestelmille) tai fsck-komento badsectors.txt-tiedoston ja laitetiedoston kanssa. kuten alla olevassa komennossa.
Valinta -l
käskee komennon lisäämään tiedostonimellä määritetyssä tiedostossa (badsectors.txt) luetellut lohkonumerot virheellisten lohkojen luetteloon.
------------ Specifically for ext2/ext3/ext4 file-systems ------------
sudo e2fsck -l badsectors.txt /dev/sda10
OR
------------ For other file-systems ------------
sudo fsck -l badsectors.txt /dev/sda10
Skannaa huonot sektorit Linux-levyllä Smartmontoolsin avulla
Tämä menetelmä on luotettavampi ja tehokkaampi nykyaikaisille levyille (ATA/SATA- ja SCSI/SAS-kiintolevyt ja solid-state-asemat), jotka toimitetaan S.M.A.R.T-järjestelmän (self-Monitoring, Analysis and Reporting Technology) kanssa. joka auttaa havaitsemaan, raportoimaan ja mahdollisesti kirjaamaan heidän terveydentilansa, jotta voit selvittää uhkaavat laitteistohäiriöt.
Voit asentaa smartmontoolsin suorittamalla alla olevan komennon:
------------ On Debian/Ubuntu based systems ------------
sudo apt-get install smartmontools
------------ On RHEL/CentOS based systems ------------
sudo yum install smartmontools
Kun asennus on valmis, käytä smartctl-ohjelmaa, joka ohjaa levylle integroitua S.M.A.R.T-järjestelmää. Voit selata sen man-sivua tai ohjesivua seuraavasti:
man smartctl
smartctl -h
Suorita nyt smartctrl-komento ja nimeä laitteesi argumentiksi, kuten seuraavassa komennossa, lippu -H
tai --health
sisältyy näyttääksesi SMART yleisen terveydentilan itsearviointitestin tuloksen.
sudo smartctl -H /dev/sda10
Yllä oleva tulos osoittaa, että kiintolevysi on kunnossa, eikä laitteistovikoja välttämättä ilmene lähiaikoina.
Jos haluat yleiskatsauksen levytiedoista, käytä vaihtoehtoa -a
tai --all
tulostaaksesi kaikki SMART-tiedot, jotka koskevat levyä ja -x
tai --xall
, joka näyttää kaikki SMART- ja ei-SMART-tiedot levystä.
Tässä opetusohjelmassa käsittelimme erittäin tärkeää levyaseman kuntodiagnostiikkaa koskevaa aihetta. Voit ottaa meihin yhteyttä alla olevan palauteosion kautta jakaaksesi ajatuksesi tai esittääksesi kysymyksiä ja muistat olla aina yhteydessä Tecmintiin.