Fsck herstel bestandssysteem. De FS controleren en verwijderde bestanden herstellen in Linux. Belangrijke opmerkingen en risico's

Het fsck-programma wordt gebruikt om bestandssystemen te controleren en eventuele fouten in het bestandssysteem te corrigeren. De belangrijkste vereiste voor het controleren van een bestandssysteem is dat het bestandssysteem moet worden ontkoppeld. Het draaien van f Century op een reeds aangekoppeld bestandssysteem kan leiden tot de vernietiging ervan - dan zal zelfs fsck niet helpen. Het fsck-programma kan worden gebruikt om bestandssystemen te controleren die door de Linux-kernel worden ondersteund.
Het formaat van de programma-oproep is als volgt:
sudo fsck [opties] [bestandssysteem]

Opties zoals bestandssysteem, wordt mogelijk niet gespecificeerd. Als u geen bestandssysteem opgeeft, begint het programma met het controleren van alle bestandssystemen die in het bestand /etc/fstab staan ​​vermeld. Dit is zeer onwenselijk omdat deze bestandssystemen mogelijk worden aangekoppeld, waardoor het bestandssysteem mogelijk beschadigd raakt.

De volgorde van de bestandssysteemcontrole moet als volgt zijn:
1. Ontkoppel het bestandssysteem.
2. Voer fsck uit om dit te controleren.

Als u bijvoorbeeld het bestandssysteem van de partitie /dev/hda5 wilt controleren, ontkoppelt u deze eerst en voert u vervolgens f sck uit:
sudo -ik
# umount /dev/hda5
# fsck /dev/hda5

Maar soms kunnen we het bestandssysteem niet ontkoppelen, bijvoorbeeld wanneer we het rootbestandssysteem moeten controleren. In dit geval moet u het volgende doen:
1. Start opnieuw op in de modus voor één gebruiker.
2. Koppel het rootbestandssysteem opnieuw in de alleen-lezenmodus.
3. Controleer het bestandssysteem.

Om opnieuw op te starten in de modus voor één gebruiker, moet u het systeem opnieuw opstarten (commando reboot) en tijdens het opstarten de enkele parameter doorgeven aan de kernel.
In de modus voor één gebruiker kan, zoals je zou verwachten, slechts één gebruiker werken: root.
Alle services zijn uitgeschakeld, dus niets mag de controle van het bestandssysteem belemmeren. Om het bestandssysteem opnieuw te koppelen, voert u de opdracht in:
# mount -o hermonteer th -t ext3 /
Parameter -o mount-opdrachten kunt u verschillende opties opgeven. IN in dit geval we specificeren de remount en go-opties, wat betekent remount in de alleen-lezen modus. De parameter -t specificeert het bestandssysteemtype - ext3, en de laatste parameter is het rootbestandssysteem (/).

Bestand UNIX-systeem is verrassend betrouwbaar en levert een aanzienlijke handling op onverwachte mislukkingen systemen en frequente hardwarestoringen. Er zijn echter een aantal redenen die schade aan bestandssystemen veroorzaken en hun integriteit in gevaar brengen.

Elke keer dat de kernel in paniek raakt of het energiesysteem uitvalt, vinden er kleine verstoringen plaats in de bestandssystemen die onmiddellijk vóór de storing actief waren. Omdat de kernel zowel datablokken als controle informatie, dan wordt de meest recente bestandssysteemimage verdeeld tussen schijf en geheugen. Bij een storing verdwijnt een deel van het beeld in het geheugen. De blokken die in het geheugen zijn opgeslagen, worden in wezen vervangen door de versies die het laatst naar schijf zijn geschreven.

Er zijn verschillende benaderingen om dit probleem op te lossen. Kleine beschadigingen kunnen meestal met behulp van het commando worden gerepareerd fsck(afkorting van "filesystem consistentie check" - het controleren van de integriteit van het bestandssysteem). Vanuit architectonisch oogpunt is dit geen erg elegante aanpak, maar het werkt in de meeste voorkomende situaties.

Bestandssystemen die gebeurtenisregistratie bijhouden, schrijven metagegevens naar een sequentieel logbestand dat op schijf wordt opgeslagen voordat elke opdracht is voltooid. Vervolgens worden de metadata vanuit het logbestand overgebracht naar de juiste locatie in het bestandssysteem. Als er een systeemcrash optreedt, wordt het logbestand achterwaarts doorzocht om het punt te vinden waarop het systeem voor het laatst in een consistente staat verkeerde. Volledige controle geen bestandssysteem vereist. Dit is erg handig als het bestandssysteem erg groot is.

Gebeurtenisregistratie wordt ondersteund op het UFS-bestandssysteem op Solaris en op het VXFS-bestandssysteem op HP-UX. Bekijk de beschrijving van de installatieprocedure harde schijf Zie HP-UX voor instructies over het inschakelen van de journaalmodus.

Als het gebeurtenislogboek niet wordt ondersteund, kunt u alleen op het programma vertrouwen fsck. Dit zijn de vijf meest voorkomende soorten schade:

    de aanwezigheid van inodes waarnaar niet wordt verwezen;

    onredelijk grote waarden van referentietellers;

    ongebruikte datablokken die niet worden weerspiegeld in bloktabellen;

    gegevensblokken aangegeven als vrij, maar gebruikt in het bestand;

    ontrouw statistische informatie in het superblok.

Programma fsck lost al deze problemen automatisch op. Als een programma wijzigingen aanbrengt in het bestandssysteem, moet het opnieuw worden uitgevoerd totdat het bestandssysteem consistent is.

Schijven worden meestal gecontroleerd tijdens bootstrap met behulp van de opdracht fsck-p, waarmee de lokale bestandssystemen in het bestand worden onderzocht fstab, en corrigeert de bovenstaande vijf fouten. Nieuwere besturingssystemen onthouden welke bestandssystemen niet correct zijn ontkoppeld en controleren alleen die. Als er een gebeurtenislogboek wordt bijgehouden, kan het programma fsck Geeft aan dat de logmodus wordt ondersteund en herstelt de laatste consistente status van het systeem op basis van de vermeldingen in het logbestand.

Het fsck -p commando kan ook worden uitgevoerd voor een apart bestandssysteem, bijvoorbeeld:

# fsck -r /dev/rsd0 G

Programma fsck verwerkt bestanden van zowel blok- als byte-georiënteerde apparaten, maar werkt sneller met de laatste.

Wanneer het programma fsck leest het bestand fstab Om te weten welke bestandssystemen moeten worden gecontroleerd, volgt het de volgorde en notatie in het laatste veld van elk item. Bestandssystemen worden gescand in oplopende numerieke volgorde. Als de twee bestandssystemen zich op verschillende locaties bevinden; schijven, er kan er één aan worden toegewezen serienummer. Hierdoor wordt het programma geforceerd fsck controleer ze tegelijkertijd; Dit minimaliseert de tijd die wordt besteed aan het wachten op schijf-I/O. Controleer altijd eerst de rootpartitie.

Fouten die niet in een van de vijf bovenstaande categorieën vallen, zijn potentieel gevaarlijk. Ze dwingen het team fsck-p geef een helpbericht weer en voltooi uw werk. In dit geval moet u het programma uitvoeren fsck geen optie -R. Bij het binnenlopen handmatige modus het programma vraagt ​​om bevestiging voor elke hersteloperatie die u verzamelt; uitvoeren. Hier zijn enkele fouten die het programma fsck beschouwt als gevaarlijk:

    blokken die tot meer dan één bestand behoren;

    blokken die buiten het bereik van het bestandssysteem vallen;

    linktellers zijn te klein;

    niet-verantwoorde blokken;

    verschillende bestandsformaatfouten.

Helaas is het zonder diepgaande kennis van de structuur van het bestandssysteem onmogelijk om de schijf handmatig te herstellen. Probeer nooit rechtstreeks naar het bestandssysteem te schrijven via apparaatbestanden.

Veel besturingssystemen hebben een bestandssysteemdebugger (vaak fsdb), waarmee u gegevens op een laag niveau kunt controleren en wijzigen, maar om deze effectief te kunnen gebruiken, moet u zeer goed begrijpen wat deze doet. Als u zich beperkt tot het lezen van het bestandssysteem en niet probeert het te wijzigen, kunt u verergering van de problemen voorkomen.

In de praktijk betekent dit dat de keuze klein is en feitelijk neerkomt op het accepteren van de voorwaarden die het programma stelt fsck. Problemen kunnen worden geminimaliseerd door de door het programma geproduceerde berichten zorgvuldig te loggen, omdat deze soms een antwoord bieden op de vraag welk bestand (of welke bestanden) defect is. Als een programma toestemming vraagt ​​om een ​​bestand te verwijderen, probeer het dan eerst naar een ander bestandssysteem te kopiëren en laat het programma dan verder draaien. Maar onthoud: elke keer dat u probeert toegang te krijgen tot een beschadigd bestandssysteem, loopt u het risico een onoplosbare fout in de kernel te veroorzaken.

Als het beschadigde bestandssysteem waardevolle gegevens en het programma bevat fsck kon het niet automatisch herstellen, experimenteer er niet mee zonder eerst een reservekopie te maken. U kunt proberen de opdracht op de schijf toe te passen dumpen, maar er wordt uitgegaan van een intact bestandssysteem, waardoor gegevens verloren kunnen gaan (of de opdracht mislukt met een foutmelding). Het is het beste om op veilig te spelen en de opdracht voor de hele schijf uit te voeren dd om een ​​back-upschijf te maken.

Als het programma fsck kent alleen het nummer inode bestand, en om de padnaam op sommige systemen te achterhalen, kunt u de opdracht gebruiken ncontroleer. Om een ​​defecte inode op te ruimen die het programma fsck kan niet herstellen, kunt u de opdracht gebruiken clri(gegevens gaan uiteraard verloren).

Wanneer het programma fsck detecteert een bestand waarvan de bovenliggende map niet kan worden bepaald, en plaatst het bestand in de map verloren+gevonden, gelegen op bovenste niveau bestandssysteem. Omdat de naam die aan een bestand wordt gegeven alleen in de bovenliggende map wordt geregistreerd, kunnen de namen van verweesde bestanden niet worden bepaald en kunnen bestanden in de map worden geplaatst verloren+gevonden, krijgen namen toegewezen die overeenkomen met hun inodenummers.

Soms door verschillende redenen(als gevolg van een storing, onjuiste afsluiting) accumuleren bestandssystemen fouten. De fouten zelf zijn ‘niet-overeenkomende’ datastructuren. Als een dergelijke situatie zich voordoet, is het uiteraard noodzakelijk om het beschadigde ding zo snel mogelijk op orde te brengen. Het hulpprogramma kan deze taak perfect aan. fsck. Het is inderdaad zeer effectief en systeembeheerders gebruiken het in de eerste plaats vaak om bestandssystemen te herstellen of te repareren.

Hoe werkt fsck?

Nutsvoorziening fsck (F ile S systeem Consistentie Che ck) heeft aanvankelijk alle datastructuren op rij grondig gecontroleerd, d.w.z. het volledige bestandssysteem. Om fouten te vinden, gebruikte ze heuristische analysemethoden om het foutopsporingsproces te versnellen en te optimaliseren. Maar zelfs in dit geval kan deze procedure bij grote bestandssystemen vele uren duren.

Later werd een schema geïmplementeerd voor het beoordelen van de status van het bestandssysteem, dat gebaseerd is op het teken van een ‘schoon stukje van het bestandssysteem’. Als er een fout optrad en het bestandssysteem (FS) onjuist werd ontmanteld, werd deze bit in het FS-superblok geplaatst. Standaard worden in Linux-systemen tijdens het opstarten van het systeem de bestandssystemen gecontroleerd, die zijn geregistreerd in de bestanden /etc/fstab, /etc/vfstab, evenals in /etc/filesystems. Door dus de “schone bit” van de FS te analyseren tijdens het opstarten van het systeem, bepaalt het hulpprogramma of het de moeite waard is om te controleren.

Gejournaliseerde bestandssystemen zorgen er momenteel voor dat het hulpprogramma alleen werkt met die datastructuren die echt gerepareerd of hersteld moeten worden. Indien nodig kan fsck de volledige FS herstellen dankzij dezelfde FS-logs.

Enkele kenmerken van het gebruik van fsck in Linux

Voor Linux-systemen kan de FS-controle vrij vaak (vooral bij gebruik van de ext FS) zo worden georganiseerd dat deze wordt uitgevoerd na een bepaald aantal verwijderingen, zelfs als de FS volledig functioneel is. Dit geldt vooral voor desktopcomputers, die elke dag kunnen worden in- en uitgeschakeld, opnieuw kunnen worden opgestart vanwege de aard van hun werking en toepassing, evenals vanwege de vrije toegang ertoe voor verbinding externe apparaten. In dergelijke gevallen blijkt het controleren van de FS (hoewel het een nuttige en gunstige procedure is) te frequent en daarom zinloos.

Standaard in Linux-controle FS wordt uitgevoerd na 20 demontages. Om het aantal demontages te wijzigen waarna een FS-controle nodig is, moet u het commando gebruiken tune2fs:

$ sudo tune2fs -c 50 /dev/sda1 tune2fs 1.44.1 (24-maart-2018) Maximaal aantal mounts instellen op 50

fsck-syntaxis en basisopties

Het team fsck de volgende syntaxis:

Fsck [parameter] -- [FS-parameters] [<файловая система> . . .]

Belangrijkste parameters:

Optie Beschrijving
-A Controleert alle FS
-MET [ ] Toont de uitvoeringsstatus. Hier is fd een bestandsdescriptor wanneer weergegeven via GUI
-l Vergrendelt een apparaat voor exclusieve toegang
-M Verbiedt het controleren van aangekoppelde bestandssystemen
-N Toont een gesimuleerde uitvoering zonder een echte test uit te voeren
-P Controleer dit samen met het rootbestandssysteem
-R Slaat het controleren van het rootbestandssysteem over. Kan alleen worden gebruikt in combinatie met de optie -A
-R [ ] Geeft statistieken weer voor elk gescand apparaat
-T Titel niet weergeven bij opstarten
-T<тип> Specificeert de FS die moet worden gecontroleerd. U kunt meerdere FS's opgeven, gescheiden door komma's
-V Uitgangen gedetailleerde beschrijving uit te voeren acties

Naast de basisopties voor fsck zijn er ook specifieke opties die afhankelijk zijn van de taak die wordt uitgevoerd en/of de FS. U kunt hierover meer in detail lezen op de betreffende pagina's met behulp van de opdracht man fsck. De inhoudsopgave van de hoofdhandleiding voor het hulpprogramma (onder "ZIE OOK") bevat links naar andere pagina's, zoals fstab(5), mkfs(8), fsck.ext2(8), fsck.ext3(8), etc. Informatie Deze links kunnen worden bekeken door het commando man uit te voeren met de juiste parameters, bijvoorbeeld man fsck.ext3.

De volgende tabel bevat aanvullende (speciale) opties, evenals de meest gebruikte opties, waardoor u de opdracht met maximale flexibiliteit en efficiëntie kunt gebruiken:

Optie Beschrijving
-A Verouderde optie. Geeft aan dat alle gevonden fouten moeten worden gecorrigeerd zonder toestemming van de gebruiker.
-R Gebruikt voor ext-bestandssystemen. Vertelt fsck om de gebruiker te vragen voordat elke fout wordt hersteld
-N Voert alleen een bestandssysteemcontrole uit, zonder foutcorrectie. Wordt ook gebruikt om informatie over de FS te verkrijgen
-C Gebruikt voor ext3/4 bestandssystemen. Markeert alle beschadigde blokken om te voorkomen dat er later naar geschreven wordt
-F Controleert de FS krachtig, zelfs als de FS werkt
-j Bevestigt automatisch verzoeken aan de gebruiker
-B Stelt het superblokadres in
-P Corrigeer automatisch gedetecteerde fouten. Vervangt de verouderde -a optie

Voorbeelden van het gebruik van fsck

Voor het meest typische situatie, typisch voor gevallen waarin u het bestandssysteem moet herstellen (of beter gezegd “repareren”), bijvoorbeeld op het /dev/sdb2-apparaat, moet u de opdracht gebruiken:

$ sudo fsck -y /dev/sdb2

Hier is de optie -y nodig, omdat je zonder deze te vaak een bevestiging zult moeten geven. Met het volgende commando kunt u een geforceerde controle van de FS uitvoeren, zelfs als deze werkt:

$ sudo fsck -fy /dev/sdb2

Een van de handigste is de optie waarmee je slechte sectoren kunt markeren en deze optie wordt het vaakst gebruikt. Dergelijke situaties (met beschadigde sectoren) treden doorgaans op na storingen veroorzaakt door een abnormale stroomstoring:

$ sudo fsck -c /dev/sdb2

Werken met bestandssystemen moet worden uitgevoerd wanneer deze van partities zijn ontkoppeld. Als zich echter een situatie voordoet waarin u nog steeds de aangekoppelde FS moet controleren, moet u, voordat u de opdracht fsck met de juiste optie gebruikt, eerst de gewenste FS opnieuw aankoppelen in de alleen-lezen modus:

$ sudo mount opnieuw koppelen,ro /dev/sdb2 $ sudo fsck -fy /dev/sdb2

Om te specificeren welke FS voor een partitie moet worden gebruikt:

$ sudo fsck -t ext4 -y /dev/sdb2

Als fsck er niet in slaagt de FS te corrigeren/repareren (wat zeer zelden gebeurt), kan dit te wijten zijn aan een beschadigd FS-superblok. Het kan ook worden hersteld, omdat er superblokken mee worden gemaakt back-ups. Maar eerst moet je uitzoeken op welke adressen deze kopieën zijn geschreven, en dan proberen het superblok te herstellen vanaf een van hun back-upkopieën:

$ sudo fdisk -l $ sudo mkfs -t ext4 -n /dev/xvdb1 $ sudo fsck -b 163840 /dev/xvdb1

Het commando -l wordt vermeld in in dit voorbeeld voor de duidelijkheid: je moet je eerst voorstellen met welk apparaat je moet werken, omdat het een lijst weergeeft (in deze conclusie weggelaten) beschikbare partities. Het mkfs-commando is ontworpen om een ​​bestandssysteem aan te maken, maar met de optie -n kan het gebruikt worden om informatie over het bestandssysteem te verkrijgen, inclusief de locatie van superblokken. U moet ervoor zorgen dat de schakeloptie -t voor mkfs het bestandssysteem specificeert dat overeenkomt met de werkelijke status, in dit geval ext4.

Conclusie

In dit artikel hebben we gekeken naar de werking en het gebruik van het hulpprogramma fsck. Zoals uit het artikel blijkt, wordt het hulpprogramma gebruikt biedt niet veel complexiteit. En de mogelijkheden voor het controleren en herstellen van bestandssystemen in Linux zijn behoorlijk groot, dus kennis van dit hulpprogramma systeembeheerder gewoon noodzakelijk.

Als u een fout tegenkomt, markeer dan een stuk tekst en klik Ctrl+Enter.

Een defecte harde schijf is een van de meest onaangename verschijnselen bij het gebruik van een computer. We kunnen niet alleen gemakkelijk veel verliezen belangrijke informatie en bestanden, en het vervangen van de harde schijf eist zijn tol van het budget. Laten we hieraan de verspilde tijd en zenuwen toevoegen, die, zoals we weten, niet worden hersteld. Om het probleem ons niet te laten verrassen en vooraf een diagnose te stellen, is het de moeite waard om te weten hoe u de harde schijf kunt controleren op fouten in het Ubuntu-besturingssysteem. Softwaretools Er zijn genoeg mensen die dergelijke diensten verlenen.

Hoe te testen in Ubuntu harde schijf voor fouten.

Het is helemaal niet nodig om programma's te downloaden om een ​​schijfcontrole uit te voeren in Ubuntu. Het besturingssysteem beschikt al over een hulpprogramma dat voor deze taak is ontworpen. Het heet badblocks en wordt bestuurd via de terminal.

Open een terminal en voer in:

Met deze opdracht wordt informatie weergegeven over alle HDD's die door het systeem worden gebruikt.

Hierna voeren we in:

sudo badblocks -sv /dev/sda

De opdracht wordt al gebruikt om naar beschadigde sectoren te zoeken. Voer in plaats van /dev/sda de naam van uw schijf in. De -s en -v schakelaars worden gebruikt om de voortgang van het controleren van blokken(en) in de juiste volgorde weer te geven en om een ​​rapport te geven over alle acties (v).

Door op te drukken Ctrl-toetsen+ C we stoppen met het controleren van de harde schijf.

U kunt ook twee andere opdrachten gebruiken om het bestandssysteem te controleren.

Om het bestandssysteem te ontkoppelen, typt u:

Om fouten te controleren en te corrigeren:

sudo fsck -f -c /dev/sda

  • “-f” forceert het proces, dat wil zeggen dat het wordt uitgevoerd, zelfs als de harde schijf als gezond is gemarkeerd;
  • "-c" vindt en markeert slechte blokken;
  • “-y” is een extra invoerargument dat alle systeemvragen onmiddellijk met Ja beantwoordt. In plaats daarvan kunt u “-p” invoeren, dit wordt automatisch gecontroleerd.

Programma's

Aanvullend software doet het ook uitstekend met deze functie. En soms zelfs beter. Bovendien vinden sommige gebruikers het gemakkelijker om met een grafische interface te werken.

GParted is alleen voor degenen die niet van een tekstinterface houden. Het hulpprogramma presteert groot aantal taken die verband houden met HDD-bediening op Ubuntu. Dit omvat het controleren van de schijf op fouten.

Eerst moeten we GParted downloaden en installeren. Voer de volgende opdracht in om te downloaden van de officiële repositories:

sudo apt-get install gparted

  1. Open de applicatie. Alle media worden onmiddellijk weergegeven op het hoofdscherm. Als een van deze gemarkeerd is uitroepteken, dat betekent dat er al iets mis is met hem.
  2. Klik op de schijf die u wilt controleren.
  3. Klik bovenaan op de knop 'Sectie'.
  4. Selecteer 'Controleren op fouten'.

Het programma scant de schijf. Afhankelijk van het volume kan het proces langer of korter duren. Na het scannen worden wij op de hoogte gesteld van de resultaten.

Dit is een complexer hulpprogramma dat een serieuzere HDD-controle uitvoert verschillende parameters. Het gevolg is dat het ook moeilijker te beheren is. GUI niet voorzien in Smartmontools.

Download het programma:

aptitude installeert smartmontools

Laten we eens kijken welke schijven op ons systeem zijn aangesloten. U moet letten op regels die eindigen op een letter, niet op een cijfer. Deze regels bevatten informatie over de schijven.

ls -l /dev | grep -E 'sd|hd'

Voer de opdracht in die moet worden uitgevoerd gedetailleerde informatie over de vervoerder. Het is de moeite waard om naar de ATA-parameter te kijken. Feit is dat het bij het vervangen van een native schijf beter is om een ​​apparaat met dezelfde of grotere ATA te installeren. Op deze manier kunt u de mogelijkheden ervan maximaliseren. En kijk en onthoud ook de SMART-parameters.

smartctl --info /dev/sde

Laten we beginnen met de controle. Als SMART wordt ondersteund, voeg dan “-s” toe. Als het niet wordt ondersteund of al is ingeschakeld, kan dit argument worden verwijderd.

smartctl -s op -a /dev/sde

Bekijk daarna de informatie onder SMART DATA LEZEN. Het resultaat kan twee waarden aannemen: GESLAAGD of FAILED. Als dit laatste gebeurt, kunt u beginnen met het maken van back-upkopieën en op zoek gaan naar een vervangende harde schijf.

De mogelijkheden van het programma eindigen daar niet. Maar voor eenmalige controle HDD zal voldoende zijn.

Safecopy

Dit is nu al het soort programma dat prima te gebruiken is op een zinkend schip. Als we ons ervan bewust zijn dat er iets mis is met onze schijf en proberen zoveel mogelijk overgebleven bestanden te redden, dan komt Safecopy te hulp. Het is precies zijn taak om gegevens van beschadigde media te kopiëren. Bovendien extraheert het zelfs bestanden uit kapotte blokken.

Safecopy installeren:

sudo apt installeer safecopy

Wij brengen bestanden over van de ene map naar de andere. Je kunt een andere kiezen. In dit geval brengen we gegevens over van de sda-schijf naar de thuismap.

sudo safecopy /dev/sda /home/

Slechte blokken

Sommigen hebben misschien vragen: "wat zijn deze kapotte blokken en waar komen ze zelfs vandaan op mijn harde schijf als ik deze nog nooit heb aangeraakt?" Slechte blokken, of slechte sectoren, zijn delen van de harde schijf die niet langer leesbaar zijn. Zo zijn ze tenminste objectieve redenen zijn gemarkeerd door het bestandssysteem. En hoogstwaarschijnlijk is er op deze plaatsen echt iets mis met de schijf. "Bads" worden zowel op oude harde schijven als op de modernste harde schijven aangetroffen, omdat ze met vrijwel dezelfde technologieën werken.

Ze verschijnen slechte sectoren om verschillende redenen.

  • Opname onderbroken vanwege stroomstoring. Alle informatie die de harde schijf binnenkomt, wordt in de vorm van enen en nullen opgesplitst in de verschillende delen. Als u dit proces verstoort, betekent dit dat u de harde schijf enorm in verwarring brengt.
  • Montage van slechte kwaliteit. Er valt hier niets te zeggen. Met een goedkoop Chinees apparaat kan alles vliegen.

Nu weet u hoe u uw harde schijf op fouten kunt scannen. Het controleren van de schijf op zowel Ubuntu als andere systemen is behoorlijk belangrijke operatie die minstens één keer per jaar moet worden uitgevoerd.

|

In sommige situaties raken serverbestanden beschadigd en moet het bestandssysteem worden hersteld. Dit gebeurt als de VPS plotseling wordt uitgeschakeld of als er een software- of hardwarefout optreedt.

Er zijn methoden om VPS-bestanden te herstellen; Door ten minste, kunt u de belangrijkste opslaan.

Belangrijke opmerkingen en risico's

Onder welke omstandigheden dan ook op de best mogelijke manier Bescherming tegen gegevensverlies is een back-up. Tijdig, regelmatig en van hoge kwaliteit back-upde enige manier de integriteit van belangrijke gegevens garanderen.

Hersteltools zoals fsck zijn vaak ook nuttig, maar bieden geen enkele garantie op succes en de uitkomst hangt meestal af van geluk. Het gebruik van fsck kan soms gegevensbeschadiging veroorzaken actieve schijven. De fsck-procedure die in deze handleiding wordt beschreven, werkt op een niet-gemount bestandssysteem om dit risico te minimaliseren.

Opmerking: Het wordt ten zeerste aanbevolen om, indien mogelijk, een momentopname van de server te maken voordat u met fsck herstelt. Als er tijdens de procedure gegevens verloren gaan, kunt u via een momentopname het opnieuw proberen of proberen de gegevens op een andere manier te herstellen.

1: Herstel met fsck-kernel

Opmerking: Nieuwe distributies (FreeBSD, CoreOS, Debian 8 en Ubuntu 15.04) kunnen de herstelkernel niet gebruiken. Als u een van deze distributies gebruikt, ga dan naar de sectie 'Herstellen met ISO'.

Het eerste dat u moet doen om het systeem na schade te herstellen, is het koppelen van de herstelkernel, waarmee u het hulpprogramma voor bestandscontrole kunt uitvoeren fsck-systemen. Dit kan u helpen bij het opsporen en oplossen van fouten in uw bestandssysteem.

Voer fsck uit

Sluit eerst de server af. Om dit te doen, typt u op de opdrachtregel:

Dit kan ook via het bedieningspaneel. Klik Uitschakelen of soortgelijke optie.

Nadat u de server hebt losgekoppeld, gaat u naar instellingen en opent u de herstelpartitie. Noteer welke kernel de server gebruikt, zodat u na herstel alles weer op zijn plaats kunt zetten. Mount vervolgens de herstelkernel (knop Mount Recovery Kernel of iets dergelijks).

Start de server nadat u de kernel hebt gewijzigd.

Maak vervolgens via de console verbinding met de server. Op op dit moment Er is hoogstwaarschijnlijk geen SSH-toegang tot de server omdat de server een herstelkernel gebruikt.

Er wordt een terminalsessie geopend in het huidige venster en u krijgt toegang tot de Linux-omgeving.

Nu moet u fsck uitvoeren om fouten in het bestandssysteem te vinden en te repareren.

De manier waarop u deze opdracht aanroept, hangt af van of de server VirtIO ondersteunt. Zo ja, dan is de harde schijf van de server hoogstwaarschijnlijk /dev/vda of /dev/vda1 (afhankelijk van het systeem). U kunt dit verduidelijken door te typen:

Als de server VirtIO niet ondersteunt, bevindt de harde schijf zich in /dev/sda.

Je moet dus het commando uitvoeren:

fsck -yf /dev/vda

fsck -yf /dev/vda1

Het fsck-hulpprogramma wordt uitgevoerd en probeert fouten te detecteren. Hierna kunt u de server weer uitschakelen.

Ga terug naar het Configuratiescherm, open Instellingen en zoek Kernelinstellingen. Selecteer in het vervolgkeuzemenu de kernel die eerder werd gebruikt.

Het controleren van de resultaten

Nadat u de kernel hebt gewijzigd, start u de server en maakt u er verbinding mee via de console.

Als de server eerder niet is gestart, maar nu wel is gestart, is dit een goed teken.

Als afzonderlijke opdrachten u eerder hebben gewaarschuwd mogelijke schade, probeer deze bewerkingen opnieuw uit te voeren om er zeker van te zijn dat ze zonder waarschuwingen worden uitgevoerd.

Het is ook belangrijk om de map /lost+found te controleren. fsck plaatst gedeeltelijk herstelde bestanden erin.

Soms kan fsck bestandsgegevens herstellen, maar kan het geen verwijzing naar het bestand op het bestandssysteem vinden. In wezen is het een bestand zonder naam. In deze situatie plaatst fsck de bestanden in de map /lost+found, zodat u handmatig kunt proberen vast te stellen wat het bestand is.

Bekijk de inhoud van de map /lost+found:

cd /verloren+gevonden
ls

Als er bestanden in de map staan, open ze dan allemaal en probeer erachter te komen welk bestand het is. Vaak komen hier verwijderde bestanden terecht die vóór de systeemcrash werden gebruikt.

Als de beschadiging van het bestandssysteem nog steeds merkbaar is, of als de server niet kon opstarten na de migratie naar de standaardkernel, probeer dan de instructies in de volgende sectie.

2: Herstel met ISO

Als de kernel en fsck niet hebben geholpen het systeem te herstellen, probeer dan de herstel-ISO te gebruiken.

Normaal gesproken kunnen gebruikers de herstel-ISO niet zelf koppelen. Om de ISO te verkrijgen, moet u voor hulp contact opnemen met het ondersteuningsteam van uw hostingprovider.

Schakel de server uit. Als je nog steeds toegang hebt tot opdrachtregel, binnenkomen:

Als u geen toegang heeft tot de opdrachtregel, schakelt u de server uit via het configuratiescherm.

Gebruik vervolgens het configuratiescherm om contact op te nemen met de technische ondersteuning voor hulp. Tegelijkertijd moet u de herstelacties vermelden die u heeft ondernomen.

Het ondersteuningsteam moet u voorzien van een herstel-ISO. Start daarna de server en maak er verbinding mee via de console.

U ziet het hoofdmenu van de herstelomgeving.

Opzetten van een netwerk in een herstelomgeving

Standaard herstel-ISO wordt meestal automatisch geconfigureerd netwerken met servers in regio's die metadata ondersteunen. In andere regio's moet u uw netwerkgegevens handmatig invoeren.

Gebruik de algemene netwerkparameters in de instellingen.

Fsck uitvoeren in een herstel-ISO

Om de fsck-bestandssysteemcontrole en -reparatie uit te voeren, selecteert u Bestandssysteem controleren (of iets dergelijks) in het menu en drukt u op Enter. De herstelomgeving zal de schijfkopie detecteren en proberen fsck erop uit te voeren. Het hulpprogramma rapporteert eventuele fouten en problemen die zich op de server hebben voorgedaan.

Bestandssysteem koppelen en herstellen

Dit Linux-omgeving gelanceerd van ISO-afbeelding, niet vanaf de server, dus u moet het bestandssysteem in de omgeving koppelen om toegang te krijgen tot de bestanden. Selecteer Uw koppelen in het menu Schijfimage en druk op Enter. De schijfkopie wordt gedetecteerd en aan /mnt gekoppeld in de herstelomgeving.

Als u eerder een bestandssysteemcontrole hebt uitgevoerd vanuit de herstelkernel of vanaf een ISO-image, kunt u nu controleren op gedeeltelijk herstelde bestanden in de map /mnt/lost+found.

Ga naar de map /mnt en je ziet je bestandssysteem:

cd/mnt
ls
bin/etc/lib/media/proc/sbin/sys/var/
boot/home/lib64/mnt/root/selinux/tmp/vmlinuz@
dev/ initrd.img@ verloren+gevonden/ opt/ run/ srv/ usr/

Open verloren+gevonden en bekijk gedeeltelijk herstelde bestanden.

cd kwijt+gevonden
ls

Als er bestanden in deze map staan ​​die zijn hersteld door het hulpprogramma fsck, kunt u proberen ze terug op hun plaats te zetten en ze op het systeem te herstellen. Als dit belangrijke bestanden, zij kunnen het systeem helpen.

Als de bestanden in verloren+gevonden niet kunnen worden hersteld (of als u slechts enkele gegevens wilt opslaan), kunt u proberen uw bestanden over te brengen naar een externe machine (een andere server of een andere fysieke machine).

Bestanden verplaatsen met SFTP

Als u bestanden wilt verplaatsen naar lokale computer, gebruik de herstelomgeving. Als u zich in een interactieve shell bevindt, typt u exit om terug te keren naar het hoofdmenu.

Zorg ervoor dat het hoofdmenu het aangekoppelde bestandssysteem toont en schakel de SSH-server in.

U wordt gevraagd een tijdelijk rootwachtwoord aan te maken om toegang te krijgen tot de server.

Opmerking: dit heeft op geen enkele manier invloed op het permanente rootwachtwoord van de server.

Voer twee keer in tijdelijk wachtwoord. De herstelomgeving zal vervolgens de SSH-server installeren en configureren.

Nu kunt u toegang krijgen tot de server met behulp van SSH-client of SFTP. Met de Filezilla SFTP-client kunt u nieuwe verbindingen maken, waarvoor de volgende gegevens nodig zijn:

Host: uw_server_IP
Haven: 22
Protocol: SFTP-SSH Bestandsoverdracht Protocol
Aanmeldingstype: Normaal
Gebruiker: root
Wachtwoord: TEMPORARY_PASSWORD

Eenmaal verbonden, bevindt u zich in de map /root. Het bestandssysteem is /mnt. Ga naar deze map, selecteer benodigde bestanden en verplaats ze naar uw lokale computer.