Hvordan reparere dårlige blokkeringer på Linux



Prøv Instrumentet Vårt For Å Eliminere Problemer

Brukere som starter opp noen distribusjon av Linux med en versjon av Microsoft Windows, kan av og til prøve å krympe eller utvide bestemte partisjoner for å gi mer plass til det ene eller det andre operativsystemet. Du kan til slutt få en advarsel fra GParted i Linux eller chkdsk i Windows om at det var dårlige sektorer. Enkelte brukere av Linux kan av og til få det samme. Til tross for dette kan brukere faktisk motta varsler om to forskjellige typer dårlig sektor som utgir seg for å være den samme. Den ene er den tradisjonelle varslingen om dårlige sektorer som indikerer et problem med den fysiske geometrien til en platetallerken eller en NAND-minnecelle. Dette er hva folk flest mener når de klager over en dårlig blokk, selv om det er en liten, men veldig teknisk forskjell mellom en dårlig sektor og en dårlig blokk. Imidlertid markerer maskiner sjelden sektorer feil som dårlige.



Disse er kjent som myke dårlige sektorer eller programvare dårlige blokker, og kan rettes bare ved hjelp av en enkel filsystemoperasjon. Tatt i betraktning faren ved å skrive til dårlige blokker, er det imidlertid alltid en god ide å starte undersøkelsen med en SMART-datainspeksjon når du arbeider med et fast volum. Dette er ikke-destruktivt, og kan luke ut geometriproblemer før du fortsetter. Hvis du ikke jobber med et fast volum, kan det være lurt å starte undersøkelsen med neste metode.



Metode 1: Kontrollere SMART-data

Det er lett å tro at disse dårlige sektorene bare er en programvarefeil, men det er en måte å sjekke om det er slik. Ved hjelp av SMART-data er det enkelt å inspisere diskens egen firmware og vite med sikkerhet. Åpne GNOME Disks Utility fra Dash in Unity, Whisker-menyen i Xfce4, Accessories-menyen i LXDE eller fra GNOME Applications-menyen i KDE. Du kan også starte den ved å skrive gnome-disker på terminalen og trykke på enter-tasten. Klikk på menyen ved siden av høyre vinduskontroller etter å ha markert harddisken din med pekeren i venstre kolonne. På de fleste GNU / Linux-installasjoner vil Diskverktøyet som standard være din primære harddisk.



Velg SMART Data & Self-Tests fra menyen. Du kan også holde CTRL og trykke S for å åpne dette vinduet. Dette vil vise deg den nåværende helsen til stasjonen din. Hvis verdiene er tomme, klikker du på Start selvtestknappen for å tvinge disken til å kjøre en selvkontroll. Linjen Total Assessment øverst vil fortelle deg hva GNOME Disks Utility synes om stasjonen din.

Det kan hende du må bla gjennom SMART-attributtene selv på en fullskjermsvisning. Vær spesielt oppmerksom på et alternativ som heter Reallocation Count. Dette viser deg hvor mange sektorer som allerede er omdisponert. Hvis det er mange dårlige sektorer, er det sannsynligvis en god idé å bytte ut stasjonen før den mislykkes helt.



Metode 2: Sjekke for riktig Superblock

Noen ganger kan du oppdage at SMART-data viste alt i orden, men du kan ha fått en 'Bad Superblock' -feil fra visse diskverktøy. Hvis du jobbet med SD-kort, USB-minnepinner eller annet slikt minne, ville du ikke kunne lese SMART-data og likevel ha noen feil. Dette kan godt være et programvareproblem. Vurder problemet med å kjøre en kommando som:

fsck.ext4 / dev / sda

Dette vil mer enn sannsynlig indikere at du har en dårlig superblokk, som refererer til hovedblokken i filsystemet ditt. Dette er resultatet av en CLI-feil, og ikke en ekte dårlig blokk. Siden / dev / sdb refererer til en stasjon og ikke en parisjon, vil fsck-kommandoen din se etter en superblokk der det ikke er en og feilaktig synes noe var galt. Heldigvis var dette ikke en destruktiv kommando. Løpe:

sudo fsck.ext4 / dev / sda1

Det kan fortelle deg nå at filsystemet ditt er rent. Forsikre deg om at tallet som kommer etter ext samsvarer med volumets ext-versjon.

Du kan også få denne feilen hvis du skulle prøve å kjøre ext2 / 3/4 fsck på et FAT12 / 16 / 32-, NTFS- eller HFS / HFS + -volum. Konsistenskontrollen blir forvirret og mener at noe er galt, når filstrukturstypen i virkeligheten ikke samsvarer med forventet. Kjør fsck.vfat eller dosfsck på FAT-volumer uavhengig av hvilken bitversjon du bruker. Du kan bruke bryteren -t etter dosfsck eller fsck.vfat (fsck.msdos på noen versjoner av Linux) for å markere uleselige klynger som dårlige blokker.

Metode 3: Sjekke for dårlige blokker på NTFS-volumer

Forutsatt at du starter Microsoft Windows og Linux dobbelt og at du har superblokk eller andre dårlige sektorfeil på et NTFS-volum, start deretter på nytt i Windows og kjør chkdsk / rc: fra kommandolinjen, og erstatt c: med stasjonsbokstaven til NTFS-volum det er snakk om. Windows må mer enn sannsynlig starte på nytt for å fullføre overflateskanningen. Dette kan ta litt tid, så hvis det ser ut til at operativsystemet ditt ikke svarer, er det bare på grunn av hvor lang tid det er snakk om. Hvis du mottok en feil om ikke å ha de rette rettighetene, høyreklikker du ledeteksten i Start-menyen og velger Kjør som administrator før du fortsetter.

Hvis du jobber med et NTFS-volum utelukkende under Linux, har du ikke så mye tiltak, men hvis feilblokkeringsfeilen bare var fra en type uoverensstemmelse, har du en måte å korrigere det på. Kjør sudo ntfsfix / dev / sdb1, og erstatt bokstaven og tallet etter / dev / sd med riktig enhet og partisjonsidentifikator. Husk at du alltid kan kjøre sudo fdisk-l eller gå tilbake til GNOME Disks Utility hvis det er installert for å sjekke navnene på hvert volum som er koblet til systemet. Du kan kjøre det som sudo ntfsfix -d / dev / sdb1 hvis du er sikker på at du vil at den skitne biten skal tømmes.

Hvis du er sikker på at et NTFS-volum har myke dårlige blokker som ikke skyldes fysisk maskinvaregeometri, for eksempel når du klonet en gammel disk med dårlige sektorer til et nytt volum, så kjør sudo ntfsfix -bd / dev / sdb1 på hva som helst volumet du vil ha. Dette tilbakestiller listen over dårlige blokkeringsmarkører.

Metode 4: Bruke badblocks Linux Utility

Etter å ha startet opp i en live ISO Linux-versjon eller har funnet en annen måte å demontere et ext2-, ext3- eller ext4-filsystem, kan du faktisk kjøre sudo fsck.ext4 -c / dev / sda1 for å utføre en skrivebeskyttet skanning for dårlige blokkeringer. Naturligvis må du bruke riktig volumidentifikator etter / dev / sd og riktig ekst versjonsnummer etter fsck.ext for å kjøre den riktig. Hvis du i stedet spesifiserer -cc, vil programmet bruke en enda mer omfattende ikke-destruktiv lese- og skrivetest.

Dette er den vanlige måten å bruke badblocks-verktøyet på, men du kan teknisk sett bruke det også av det ensomme. Kjør sudo badblocks -n på et enhetsnavn for å kjøre det av seg selv og rapportere badblocks rett i terminalen din. Du kan bruke alternativet -w til å bruke en skrivemodustest, men ikke bruke alternativene -n ​​og -w sammen siden de utelukker hverandre. Du bør under ingen omstendigheter bruke alternativet -w på et volum som har data, siden det vil slette alt rent. Bruk tregere -n alternativet siden det vil bevare dataene dine i dette tilfellet. Alternativet -w er bra for volumer du ikke har noe imot å slette. Alternativet -v kan kombineres med en av dem, og vil gi terminalen litt detaljert utdata som er nyttig for inspeksjon av datakorrupsjon. Du kan alltid bruke -o-alternativet med navnet på en tekstfil for å skrive ut informasjonen slik at du kan se på den senere. Det kan være lurt å kjøre det som sudo badblocks -nv -o badblocks.log / dev / sdb1 for å få et øyeblikksbilde, siden du ser mye informasjon hvis det er ekte dårlige blokkeringer.

5 minutter lest