Communityoplossing

ZimaOS alleen-lezen na stroomuitval: veilige herstelstappen

After a power outage, a ZimaOS 1.4.0 RAID1 volume mounted read-only and returned I/O errors; the user restored it with filesystem repair.

Als een ZimaOS-volume na een stroomstoring alleen-lezen wordt, moet dit worden gezien als een gebeurtenis waarbij het bestandssysteem zichzelf beschermt, niet als een probleem met machtigingen. In dit geval met versie 1.4.0 meldde Windows I/O-fouten en gaf de bestandsbrowser van ZimaOS de melding “alleen-lezen bestandssysteem” weer. De gebruiker herstelde uiteindelijk de toegang met fsck.

Die succesvolle reparatie is nuttig bewijs, maar het zonder meer overnemen van het exacte commando is onveilig als eerst niet het bestandssysteem en de ontkoppelingsstatus zijn vastgesteld. Verschillende bestandssystemen vereisen verschillende reparatieprogramma’s, en reparaties mogen niet blindelings op een aangekoppeld volume worden uitgevoerd.

Hoe de storing eruitzag

De server gebruikte een RAID1-array van 2 TB. Na de stroomstoring konden bestanden niet meer betrouwbaar via Windows SMB worden geopend en mislukte het rechtstreeks aanmaken van een map in de bestandsbrowser van ZimaOS, omdat de RAID-koppeling alleen-lezen was geworden.

Deze combinatie is belangrijk: een toegangs fout aan de clientzijde in combinatie met een melding over een alleen-lezen bestandssysteem aan de hostzijde wijst op een probleem onder het niveau van Samba-machtigingen. Dit suggereert dat je eerst de integriteit van de opslag en het bestandssysteem moet controleren voordat je gebruikers, ACL’s of deelinstellingen wijzigt.

De reparatie op het forum was door de gebruiker geverifieerd

De gebruiker sloot een monitor en toetsenbord aan, meldde zich aan met verhoogde rechten, identificeerde het Linux-bestandssysteemapparaat met fdisk -l, voerde fsck -f uit op het RAID-apparaat, herhaalde de controle toen er fouten overbleven en startte het systeem opnieuw op. Volgens de gebruiker herstelde dit normaal lees- en schrijfgedrag.

Dat is een echt door de gebruiker geverifieerd resultaat, maar het was geen door IceWhale opgestelde herstelprocedure. De veiligere regel is om eerst het exacte bestandssysteem vast te stellen. De e2fsck-handleiding waarschuwt ervoor een aangekoppeld ext-bestandssysteem te controleren, behalve in strikt omschreven gevallen waarin alleen-lezen wordt gecontroleerd.

Gebruik een herstelvolgorde met een lager risico

Stop vóór elke reparatie apps en synchronisatietaken die naar het volume schrijven. Als belangrijke gegevens nog leesbaar zijn, kopieer dan de meest waardevolle bestanden naar afzonderlijke, gezonde opslag. Leg de poolindeling en huidige fouten vast voordat je het systeem opnieuw opstart of de array wijzigt.

De checklist voor alleen-lezen volumes werkt dit proces uit voor ext4, XFS, Btrfs en ZFS. Dit is een beter uitgangspunt dan ervan uitgaan dat op elke ZimaOS-array hetzelfde fsck-commando moet worden uitgevoerd.

Toegang tot de huidige ZimaOS-terminal

De huidige versie van ZimaOS biedt SSH en een ingebouwde webterminal via de ontwikkelaarsmodus. De huidige SSH-installatiehandleiding beschrijft deze toegangsmethoden.

Gebruik terminaltoegang eerst om het apparaat en het type bestandssysteem te controleren. Als het betreffende volume niet netjes kan worden ontkoppeld terwijl het normale systeem actief is, gebruik dan een geschikte onderhouds- of herstelomgeving in plaats van een reparatie op het actieve volume te forceren.

Voorkom dat dezelfde storing tot gegevensverlies leidt

Een UPS kan abrupte uitschakelingen beperken, maar vervangt geen back-ups. De grens van RAID-herstel legt uit waarom een gespiegelde array nog steeds een onafhankelijke, herstelbare kopie nodig heeft.

Samenvatting

De forumcasus werd daadwerkelijk opgelost met een reparatie van het bestandssysteem, maar de les is niet: “voer na elke stroomstoring fsck -f uit.” De juiste les is: behoud leesbare gegevens, identificeer het bestandssysteem en apparaat, ontkoppel het wanneer dat nodig is, gebruik het eigen reparatieprogramma van het bestandssysteem en herstel pas daarna de schrijfmogelijkheden.