Soms schakelt het bestandssysteem van Linux plotseling over naar een alleen-lezenmodus. Dat is nogal vreemd, want ineens kun je alleen nog maar bestanden zien en lezen, maar niets meer wijzigen of toevoegen. Meestal gebeurt dit als het systeem fouten of beschadigingen op de schijf detecteert. Het is vervelend, vooral bij het oplossen van problemen of het uitvoeren van updates, omdat het voelt alsof Linux zichzelf beschermt tegen verdere schade door het bestandssysteem te vergrendelen. Soms helpt handmatig herstarten of een controle uitvoeren, maar weten welke commando’s en instellingen je moet aanpassen, maakt een wereld van verschil.
Hoe los je een alleen-lezen bestandssysteem in Linux op?
Controleer en bewerk de opties voor het koppelen van schijven.
Dit is het eerste wat je moet doen, want in sommige configuraties kan het bestandssysteem vanaf het begin alleen-lezen zijn aangekoppeld, dankzij opties die zijn ingesteld in /etc/fstab. Dat bestand bepaalt hoe schijven bij elke opstart worden aangekoppeld, ook als er fouten optreden. Dus als je systeem de root of andere bestandssystemen steeds als alleen-lezen aankoppelt, kan het oplossen van dit probleem hier soms de oplossing zijn.
- Open een terminal en voer het volgende commando uit
cat /etc/fstab: je zoekt naar een regel die er ongeveer zo uitziet:
UUID=00000000-0000-0000-0000-00000000 / ext4 errors=remount-ro 0 1
In deze regel zorgt errors=remount-ro ervoor dat het systeem als alleen-lezen wordt aangekoppeld wanneer er problemen worden gedetecteerd. Door dit te wijzigen in errors=continue of errors=panic kan de reactie worden aangepast, maar wees voorzichtig, want dit kan onderliggende problemen maskeren.
Meestal is het belangrijk om ervoor te zorgen dat de regel niet expliciet als alleen-lezen wordt gemount, tenzij dat nodig is. Als het in orde is in het bestand /etc/fstab, ga dan verder met de volgende oplossing.
Identificeer uw schijf met behulp van opdrachten.
Het is handig om de exacte apparaatnaam te weten, vooral als je schijfcontroles wilt uitvoeren of het apparaat opnieuw wilt koppelen. Voer het volgende commando uit:
$ sudo blkid
Dit geeft de UUID’s en apparaatnamen weer, zoals /dev/sda3. Het is handig om je UUID te koppelen aan de apparaatnaam, omdat de volgorde van apparaten na een herstart soms verandert.
Een ander goed commando is:
$ df -h
Het toont de aangekoppelde bestandssystemen en hun aankoppelpunten. Als je root-partitie (/) fouten vertoont of in alleen-lezenmodus staat, dan is dat de oorzaak.
Voer handmatig een bestandssysteemcontrole (fsck) uit.
Dit gedeelte is cruciaal. Wanneer er fouten worden gedetecteerd, kan Linux het bestandssysteem automatisch opnieuw als alleen-lezen mounten om verdere schade te voorkomen. Om dit te verhelpen, moet je het volgende commando uitvoeren fsck:.Normaal gesproken kun je dit niet doen terwijl het bestandssysteem is gemount, dus start op vanaf een LiveCD of in de herstelmodus. Maar als je al bezig bent met het oplossen van problemen met root-toegang, kun je het volgende proberen:
$ sudo fsck -y /dev/sda3
Vervang /dev/sda3 door uw apparaat. De -yvlag probeert automatisch problemen op te lossen, maar soms is het beter om het programma zonder die vlag uit te voeren om eerst te zien wat het vindt.
Als je liever de UUID gebruikt, voer dan het volgende commando uit:
$ sudo fsck -y UUID=00000000-0000-0000-0000-00000000
Dit kan soms handig zijn als de apparaatnaam verandert of niet consistent is.
Herkoppel het bestandssysteem onmiddellijk als beschrijfbaar.
Als je momenteel niet in de herstelmodus kunt opstarten of als je snel weer schrijftoegang wilt, kun je het rootbestandssysteem opnieuw als lees-schrijfbaar aankoppelen met:
$ sudo mount -o remount, rw /
Houd er rekening mee dat als er nog fouten in de wachtrij staan, dit slechts een tijdelijke oplossing is. Linux kan de schijf na een tijdje opnieuw als alleen-lezen mounten. Het is daarom altijd beter om een grondige schijfcontrole met fsck in te plannen.
Het oplossen van problemen met alleen-lezen bestandssystemen op virtuele machines
Als een Linux-VM plotseling niet meer opstart omdat het bestandssysteem alleen-lezen is (vooral na het verlies van de verbinding met de gedeelde opslag), kan dit te wijten zijn aan problemen met het volume. Vaak komt de VM dan terecht in een initramfs-prompt met een bericht als “UNEXPECTED INCONSISTENCY”.
Typ in dat geval gewoon ‘exit’ als dat veilig is, of voer het volgende commando uit:
$ fsck /dev/sda3 -y
Hiermee wordt de bestandssysteemcontrole handmatig uitgevoerd. Voor alle schijffouten kunt u ook het volgende uitvoeren:
$ fsck -A -y
Dit controleert alle verbonden bestandssystemen op uw virtuele machine. Na de reparaties kunt u de virtuele machine opnieuw opstarten, en hopelijk werkt alles weer naar behoren. Wees echter voorzichtig met dit programma: fsckhet is krachtig, maar kan leiden tot gegevensverlies bij onjuist gebruik.