Hoe het fsck commando te gebruiken op Linux

Aug 18, 2025
Linux
Pixza Studio / Shutterstock

Al onze belangrijke gegevens zit in een bestandssysteem van een type of een ander, en het bestandssysteem problemen zijn gebonden aan gebeuren. Op Linux, kunnen we gebruik maken van de fsck commando te vinden en oplossen van fouten in het bestandssysteem.

Bestandssystemen worden Software

File-systemen zijn een van de meest kritische onderdelen van een computer. Zonder bestandsysteem, kan de computer geen gegevens opslaan op een harde schijf, of deze schijf is een mechanisch draaiende schotel of SSD schijf . In feite is een bestandssysteem moet worden gemaakt voordat het besturingssysteem op de harde schijf kan worden geïnstalleerd. Er moet iets voor de bestanden van het besturingssysteem te worden opgeslagen in zijn. Dus een bestandssysteem wordt gemaakt tijdens het installatieproces.

Bestandssystemen zijn aangemaakt door software , Geschreven door software, en een boek uit door software. Zoals u weet, alle complexe software bugs. Onze gegevens is van cruciaal belang voor ons, dus we veel vertrouwen in bestandssystemen en de software die creëert en gebruikt ze nu zetten. Als er iets misgaat, kunnen we de toegang tot delen van het bestandssysteem of zelfs een hele partitie te verliezen.

Modern journaling bestandssystemen zijn beter in het omgaan met problemen die kunnen worden veroorzaakt door een plotseling verlies van macht of een systeemcrash. Ze zijn robuust, maar ze zijn niet onoverwinnelijk. Als hun interne tabellen krijgen scrambled ze kunnen bijhouden waar elk bestand zich bevindt op het station, welke maat het is, wat noem maar op heeft, en welk bestand machtigingen zijn ingesteld op hen te verliezen.

De fsck opdracht kunt u controleren of uw bestandssystemen gezond zijn. Als het enige problemen vindt het kan meestal zet ze voor u ook.

Doe de preflightcontroles

Gebruik makend van fsck vereist sudo privileges . Elke opdracht die verandert in een bestandssysteem behoeften kunt maken om met voorzichtigheid worden behandeld en is beperkt tot degenen die weten wat ze doen.

Piloten niet te springen in een vliegtuig, start het op, en vliegen af ​​in de lichtblauwe ginds. Ze doen preflightcontroles. Er is te veel op het spel om anders te doen. Dat is een goede gewoonte om te ontwikkelen. Voordat u gebruik maken van fsck je nodig hebt om ervoor te zorgen dat je gaat om het te gebruiken op het juiste station. Dus voor je iets doet met fsck , We gaan een beetje verkenning te doen.

We beginnen met fdisk en pijp het in minder . We vragen niet om informatie over een specifieke partitie. Door gebruik te maken van de l optie (lijst) fdisk somt de partitie tabellen op alle apparaten die zich in de “/ proc / partities” bestand, als het bestaat.

 sudo fdisk -l | minder 

We kunnen de vermeldingen voor zien / Dev / sda en / Dev / sdb . U kunt door het bestand te bladeren om een ​​andere ingangen die kunnen bestaan ​​op uw computer te zien.

De partities op / Dev / sda zijn opgenomen, zoals / Dev / sda1 , / Dev / sda2 , en / Dev / sda3 . Dus hebben we drie partities op de eerste schijf. We kunnen een beetje meer informatie kunt u met behulp van de gescheiden opdracht. We zullen gebruik maken van de 'afdrukken' optie om de partitie tabellen in de terminal venster te openen.

 sudo parted / dev / sda 'afdrukken' 

We krijgen wat extra informatie deze tijd, met inbegrip van het type bestandssysteem op elke partitie.

 Model: ATA VBOX HARDDISK (scsi)
Disk / dev / sda: 34.4GB
Sector grootte (logische / fysieke): 512B / 512B
Partition Table: gpt
Disk Vlaggen:

Aantal Start Einde Grootte bestandssysteem Naam Categorie
1 1049kB 2097kB 1049kB bios_grub
2 2097kB 540MB 538MB fat32 EFI Systeempartitie laars, esp
3 540MB 34.4GB 33.8GB ext4 

Er zijn drie schijven in deze test computer. Dit zijn de resultaten voor de twee andere stations / Dev / sdb en / dev / sdc . Merk op dat deze bestandssystemen geen "naam" -veld hebben.

 Sudo gescheiden / dev / sdb 'print' 
 Model: ATA VBOX HARDDISK (SCSI)
Schijf / dev / sdb: 21.5 GB
Sectoromvang (logisch / fysiek): 512B / 512B
Partitietabel: MSDOS
Schijfvlaggen:

Nummer Start Eindgrootte Type Bestandssysteem Vlaggen
1 1049KB 21.5 GB 21.5 GB primaire ext4 
 Sudo gescheiden / dev / sdc 'afdrukken' 
 Model: ATA VBOX HARDDISK (SCSI)
Schijf / dev / sdc: 21.5 GB
Sectoromvang (logisch / fysiek): 512B / 512B
Partitietabel: MSDOS
Schijfvlaggen:

Nummer Start Eindgrootte Type Bestandssysteem Vlaggen
1 1049KB 21.5 GB 21.5 GB primaire ext3 

De tweede en derde schijven zijn toevallig dezelfde grootte en heeft elk een enkele partitie. Maar het bestandssysteem op de tweede schijf is ext4 en het bestandssysteem op de derde drive is de oudere ext3 .

We passeren een partitie-ID voor fsck en het controleert het bestandssysteem op die partitie. Maar we kunnen niet rennen fsck op een gemonteerd bestandssysteem. We moeten de aandrijving ontkoppelen. Om dat te doen, moeten we het Mount Point kennen dat de partitie-en dus het bestandssysteem is gemonteerd.

We kunnen dat gemakkelijk vinden met behulp van de df opdracht.

 DF / Dev / SDB1 
 DF / Dev / SDC1 

Gebruik van de FSCK-opdracht

We hebben alle informatie die we nodig hebben. Het eerste wat we doen is het bestandssysteem ontkoppelen dat we gaan controleren. We gaan werken aan het bestandssysteem op de eerste en enige partitie van / dev / sdb , dat is / dev / sdb1 . We zagen eerder dat dit een ext4 Bestandssysteem, en het is gemonteerd op "/ RUN / MOUND / DAVE / SATA2."

We gebruiken de umount opdracht. Opmerking Er is geen "N" in "Umount."

 Sudo Umount / Run / Mount / Dave / SATA2 

Met umount , geen nieuws is goed nieuws. Als je stil bent naar de opdrachtprompt, zijn we goed om te gaan.

 SUDO FSCK / Dev / SDB1 

Dit bestandssysteem wordt gerapporteerd als schoon. Dat betekent dat het bestandssysteem rapporteert dat deze geen fouten of problemen heeft. Een diepere bestandssysteemcontrole wordt niet automatisch uitgevoerd. We kunnen ook kijken naar de retourcode die fsck terug naar de schaal.

 Echo $? 

De retourwaarde van nul geeft geen fouten aan. De mogelijke retourcodes zijn:

  • 0 : Geen fouten
  • 1 : Bestandssysteemfouten gecorrigeerd
  • 2 : Systeem moet worden opnieuw opgestart
  • 4 : Filesystem-fouten die niet gecorrigeerd zijn
  • 8 : Operationele fout
  • 16 : Gebruiks- of syntaxisfout
  • 32 : Controle geannuleerd door gebruikersverzoek
  • 128 : Error Shared-Library

Ondanks het bestandssysteem dat als schoon wordt gemeld, kunnen we een cheque van een bestandssysteem dwingen om plaats te vinden, met behulp van de -F (Force) -optie.

 SUDO FSCK / Dev / SDB1 -F 

Deze keer duurt de cheque langer om te voltooien, maar het voert een grondiger test van het bestandssysteem uit. Ons bestandssysteem was inderdaad schoon en er worden geen fouten gerapporteerd. Als kwesties worden gevonden omdat de tests worden uitgevoerd, wordt u gevraagd om te laten fsck fixeer het probleem of negeer de fout.

Wanneer u klaar bent met testen, moet u het bestandssysteem opnieuw plaatsen. De eenvoudigste manier om dit te doen is om te gebruiken monteren met de -een (alle) optie. Deze controles "/ etc / fstab" voor de lijst met bestandssystemen en zorgt ervoor dat ze allemaal zijn gemonteerd, net zoals ze een reguliere opstart zouden volgen.

 Sudo Mount -A 

Merk op dat we het niet hoeven te vertellen fsck Welk type bestandssysteem staat op een partitie; Het hulpprogramma bepaalt dat door het bestandssysteem te onderzoeken. Dat betekent dat we een aanvalssysteem kunnen forceren / dev / sdc1 , de ext3 Bestandssysteem op onze test pc, met behulp van exact dezelfde opdracht die we hebben gebruikt / dev / sdb1 , wat is een ext4 partitie.

 SUDO FSCK / DEV / SDC1 -F 

Misschien wil je niet rechtstreeks duiken in het oplossen van het bestandssysteem. Je kunt er misschien de voorkeur aan kijken voordat je springt. Je kunt vragen fsck Niet te bieden om alles op te lossen en meldt gewoon problemen met het aansluitingsvenster. De -N (droge run) Optie doet precies dat:

 SUDO FSCK -N / Dev / SDB1 

Het tegenovergestelde is om te vertellen fsck Om het niet te drukken als het fouten vindt en om gewoon door te gaan en ze te repareren. Gebruik hiervoor de -Y (geen aanwijzingen) optie.

 SUDO FSCK -Y / Dev / SDB1 

FSCK op de rootpartitie gebruiken

Je kunt niet gebruiken fsck Op een gemonteerde partitie, maar om uw computer op te starten, moet de rootpartitie worden gemonteerd. Dus hoe kunnen we rennen fsck op de root-partitie? Het antwoord is om het opstartproces te onderbreken en te lopen fsck in de herstelmodus.

Terwijl uw computer opstart, houdt u een "Shift" -toets ingedrukt. Als je het goed hebt getimed, start je niet op in Linux. Het opstartproces stopt bij een zwart-wit menu. De testmachine die voor dit artikel wordt gebruikt, liep Ubuntu, maar andere distributies hebben hetzelfde type menu, hoewel het kan variëren in uiterlijk. Waar het zegt "ubuntu" in de schermafbeeldingen heeft het de naam van uw distributie.

Verplaats de markeringsbalk met de toetsen "Pijl omhoog" en "OMLAAG", zodat de menu-item "Geavanceerde opties voor Ubuntu" is geselecteerd. Druk op "Enter" om naar het volgende scherm te gaan.

Selecteer de optie die eindigt met "(herstelmodus)." In ons voorbeeld is het "Ubuntu, met Linux 5.11.0-20-generieke (herstelmodus)." Druk op de toets "Enter".

Je ziet het herstelmenu. Selecteer "FSCK Controleer alle bestandssystemen" en druk op de toets "Tab" om het markering naar de knop "OK" te verplaatsen. Druk op Enter."

U ziet een melding dat de rootpartitie wordt gemonteerd, samen met andere partities die zijn gedefinieerd in uw "/ Etc / fstab" -bestand .

Druk op de toets "Tab" om het markering te verplaatsen naar de knop "Ja" en druk op "Enter".

Je zult het zien fsck Uitvoeren in de interactieve modus. Als er problemen zijn, wordt u gevraagd om te laten fsck repareer ze of om ze te negeren. Wanneer de bestandssystemen zijn gecontroleerd, ziet u opnieuw het herstelmenu.

Selecteer de optie "Resume", druk op de toets "Tab" om het markering naar de knop "OK" te verplaatsen en druk op "Enter". Het opstartproces zal worden hervat en je opstart in Linux.

De herstelmoduslaars kan sommige chauffeurs beïnvloeden, dus het is een goede gewoonte om nog een keer opnieuw op te starten, zodra u opstart in Linux. Dit zorgt ervoor dat uw computer in zijn standaardmode werkt.

Wanneer dingen fout gaan

Veiligheidsnetten zijn er om een ​​reden. Maak kennis met de fsck opdracht. Als de behoefte zich voordoet om het op een dag in woede te gebruiken, ben je blij dat je jezelf van tevoren vertrouwd bent.


Linux - Meest populaire artikelen

Hoe Alles verbergen Bureaubladpictogrammen op Mac

Linux Jun 23, 2025

Krisda / Shutterstock Is je Mac desktop een puinhoop? Wil je niet echt alles organiseren? Maak je geen zorgen, je kunt een opdracht voor Terminal gebruiken om ..


Hoe update Arch Linux

Linux Jul 30, 2025

Ubuntu-project Is de tijd om je Arch Linux-systeem bij te werken? Of je nu op pure boog of een op basis van een boog-gebaseerd bent Manjaro en Gar..


Wat is er nieuw in Debian 11 “Bullseye”

Linux Jul 22, 2025

Debian , de progenitor van vele andere Linux-distributies, heeft afgifte 11 beschikbaar gesteld in de testfase. Weeg je de deugden van het upgraden, of ben je gewoon nieuwsgieri..


Hoe Log uit je Mac met behulp van Terminal

Linux Aug 8, 2025

Apple maakt het eenvoudig om uit te loggen van uw Mac met de optie in de menubalk van de desktop. Maar er zijn ook een aantal commando's die u kunt gebruiken om u uit te loggen met Termi..


Installeer Linux op een M1 Mac met Apple Silicon

Linux Nov 11, 2024

Inheemse Linux-ondersteuning voor Apple's nieuwe ARM-gebaseerde architectuur is nog niet klaar, maar u kunt Linux draaien op een M1 , M1 Pro, of M1 Max met behulp van een ..


Hoe DNS in Linux te spoelen

Linux Nov 14, 2024

Is uw browse -ervaring op internet langzaam op uw Linux -apparaat, of zijn de websites die u verouderd of de verkeerde website bezoekt? Laten we het doorspoelen van de DNS -cache op Linux bespr..


Hoe de PID van een Linux -proces te vinden met PIDOF of PGREP

Linux Nov 15, 2024

Werken met een Linux -proces betekent vaak het kennen van de proces -ID of PID. Het is een uniek nummer dat wordt gegeven aan elk stukje lopende software. Hier zijn twee manieren om erachter te..


Hoe toepassingen en scripts te integreren in een Linux -bureaublad

Linux Oct 10, 2025

Op Linux zal een applicatie zonder een desktopbestand niet integreren met uw desktopomgeving. De meeste applicaties bieden één, maar af en toe moet u er een maken. Het is vrij eenvoudig, volg..


Categorieën