Wenn SLES Btrfs schreibgeschützt wird: Diagnose vor dem erneuten Mounten

Wenn ein Btrfs-Dateisystem unter SUSE Linux Enterprise die Meldung „Schreibgeschütztes Dateisystem“ meldet, prüfen Sie zunächst, ob es absichtlich schreibgeschützt eingebunden wurde oder ob der Schreibschutz nach einem Fehler aktiviert wurde. Überprüfen Sie die Mount-Optionen, den freien Speicherplatz und das Kernel-Protokoll, bevor Sie versuchen, das Dateisystem erneut einzubinden. Verwenden Sie Snapper Rollback, um einen verifizierten, bootfähigen System-Snapshot zu erstellen. Falls Btrfs E/A- oder Metadatenfehler protokolliert hat, schützen Sie die Daten und analysieren Sie den Speicherpfad, bevor Sie erneut auf das Dateisystem schreiben.

Terminalbefehle, die prüfen, ob das /data Btrfs-Dateisystem schreibgeschützt gemountet ist, und die zugehörigen Geräte auflisten.
Das Beispiel prüft die Mount-Optionen und identifiziert das Btrfs-Gerät, das /data unterstützt.

1. Unterscheidung zwischen einer beabsichtigten schreibgeschützten Einbindung und einem Dateisystemfehler

Ersetzen Sie dies /datadurch den betroffenen Mountpunkt oder /durch root.

findmnt -T /data -o SOURCE,FSTYPE,OPTIONS
sudo btrfs filesystem show /data

Suchen Sie im ersten Befehl ronach rwden Optionen. Ein schreibgeschützter Snapper-Snapshot lehnt erwartungsgemäß Schreibvorgänge ab. Eine mit konfigurierte Einbindung rokann /etc/fstabebenfalls beabsichtigt sein. Btrfs kann nach schwerwiegenden Transaktions-, Metadaten- oder Gerätefehlern ebenfalls in den schreibgeschützten Modus wechseln. In diesem Fall behebt wiederholtes Ausführen mount -o remount,rwden Fehler nicht und kann sofort fehlschlagen.

Wenn das Dateisystem absichtlich schreibgeschützt eingebunden wurde, das Gerät fehlerfrei ist und das Kernel-Protokoll keine Btrfs- oder E/A-Fehler aufweist, kann eine normale Dateneinbindung im Lese-/Schreibmodus wiederhergestellt werden:

sudo mount -o remount,rw /data
findmnt -T /data -o TARGET,OPTIONS

Verwenden Sie diesen Befehl nicht zur Wiederherstellung eines gestarteten, schreibgeschützten Snapshots oder eines durch einen Fehler erzwungenen schreibgeschützten Dateisystems. Ein erfolgreiches Remount bestätigt die Schreibbarkeit, nicht die Integrität des Dateisystems.

2. Prüfen Sie, ob der Raumdruck das eigentliche Problem ist.

Terminalbeispiel zum Vergleich von normalem freiem Speicherplatz mit von Btrfs zugewiesenem und nicht zugewiesenem Speicherplatz
Vergleichen Sie den freien Speicherplatz des Dateisystems mit den Btrfs-Zuweisungsdetails; die Beispielwerte dienen der Veranschaulichung.

Btrfs kann unter Umständen nicht genügend Speicherplatz zur Verfügung haben, selbst wenn die einfache Festplattenansicht dies nicht vermuten lässt, da die Zuweisung von Daten und Metadaten getrennt verfolgt wird. Überprüfen Sie sowohl den normalen freien Speicherplatz als auch die Btrfs-Nutzung:

df -hT /data
sudo btrfs filesystem usage -T /data

Wenn das System Fehler meldet No space left on deviceund das Kernel-Protokoll keine Geräteausfälle oder Strukturfehler anzeigt, überprüfen Sie die Snapper-Nutzung, bevor Sie etwas entfernen:

sudo snapper list

Löschen Sie nur Snapshots, deren Verlust Ihre Aufbewahrungsrichtlinie sudo snapper delete SNAPSHOT_IDfür jede ausgewählte ID zulässt. Bewahren Sie einen bekannten, funktionierenden Snapshot vor dem Update auf, falls Sie eine Rollback-Option benötigen. Das Löschen von Snapshots gibt zwar Speicherplatz frei, entfernt aber Wiederherstellungspunkte. Die Bereinigung stellt möglicherweise nicht sofort Speicherplatz wieder her, und Snapshots beheben keine E/A-Fehler. Führen Sie keinen Speicherausgleich durch, um ein schreibgeschütztes Dateisystem beschreibbar zu machen. Dieser verschiebt Daten und ist für ein diagnostiziertes Zuordnungsproblem auf einem intakten, beschreibbaren Dateisystem vorgesehen.

3. Lesen Sie das Kernel-Protokoll, bevor Sie eine Reparaturmethode auswählen.

Terminalbeispiel mit Btrfs- und Blockgeräte-E/A-Fehlermeldungen im Kernel-Log.
Kernel-Meldungen können zwischen Speicherplatzmangel, Lese-, Prüfsummen- oder Gerätefehlern unterscheiden; die gezeigten Zeilen sind Beispiele.

Achten Sie auf den ersten Btrfs-, Blockgeräte-, Controller- oder Transportfehler, nicht nur auf die abschließende Meldung, dass das Dateisystem schreibgeschützt wurde:

sudo journalctl -k -b --no-pager | grep -Ei 'btrfs|I/O error|nvme|ata|scsi'

Meldungen über fehlgeschlagene Lesevorgänge, Prüfsummenabweichungen, fehlende Geräte oder E/A-Fehler deuten auf eine andere Ursache als eine einfache roMount-Option hin. Überprüfen Sie die gemeldeten Informationen zum Zustand von Festplatte, Controller, RAID/HBA, SAN oder virtueller Festplatte sowie die Herstellerinformationen. Beheben Sie zunächst instabile Hardware oder Verbindungsprobleme. Wenn Daten wichtig sind, minimieren Sie Schreibvorgänge und erstellen Sie mit einem Administrator ein Backup oder ein Block-Level-Image, bevor Sie versuchen, das Dateisystem zu reparieren.

4. Wählen Sie die risikoärmste Wiederherstellungsmethode, die den vorliegenden Informationen entspricht.

Was Sie gefunden habenNächste AktionAbwägung
roist konfiguriert oder die Einbindung war absichtlich schreibgeschützt; keine relevanten KernelfehlerKorrigieren Sie die Mount-Konfiguration, falls diese unbeabsichtigt ist, oder mounten Sie ein normales, beschreibbares Subvolume erneut, nachdem Sie sich vergewissert haben, dass das Gerät fehlerfrei funktioniert.Das geht zwar schnell, aber durch erneutes Einbinden kann ein durch einen Fehler erzwungener schreibgeschützter Zustand nicht aufgehoben oder ein schreibgeschützter Snapshot beschreibbar gemacht werden.
Ein bootfähiger Root-Snapshot funktioniert, und das Problem trat nach einer Systemänderung auf.Starten Sie den Computer und testen Sie den Snapshot, führen Sie anschließend sudo snapper rollbackden Standardeintrag aus und starten Sie den Computer neu.Stellt das Root-Subvolume auf den Snapshot-Zustand wieder her. Daten in ausgeschlossenen oder separaten Subvolumes werden nicht zurückgesetzt. SLES 15 SP7 unterstützt dieses Rollback nur mit dem standardmäßigen Root-Subvolume-Layout und einem Root-Dateisystem auf einem einzelnen Gerät.
Das Kernel-Log enthält Speicher-E/A-Fehler oder Btrfs-Strukturfehler.Speicher stabilisieren und Daten sichern; eine Rettungsumgebung verwenden und bei Bedarf zur dateisystemspezifischen Wiederherstellung eskalieren.Langsamer, vermeidet aber, ein ungelöstes Hardwareproblem durch ein beschreibbares Remount zu verbergen.
Es wird lediglich Speicherplatzmangel gemeldet; Speicherfehler treten nicht auf.Überprüfen Sie die Snapper-Aufbewahrungsdauer und die zulässigen freien Snapshots bzw. Daten und überprüfen Sie anschließend die Btrfs-Nutzung erneut.Gibt Speicherplatz frei, jedoch auf Kosten ausgewählter Wiederherstellungspunkte oder Dateien.
Beispiel eines Bootmenüs, bei dem ein älterer Eintrag in der Liste der bootfähigen Snapshots hervorgehoben ist.
Wählen Sie einen Snapshot von vor dem Fehler, überprüfen Sie den schreibgeschützten Teststart und führen Sie dann das Snapper-Rollback durch, falls dadurch das Problem behoben wird.

Unter SLES verwenden bootfähige Snapshots die Standard-Root-Konfiguration von Snapper. Das Root-Volume muss auf einem Gerät im Btrfs-Format vorliegen, der Bootloader muss dies unterstützen, und es wird nur das Root-Subvolume zurückgesetzt. Überprüfen Sie einen Kandidaten vor dem Commit. Falls er ungeeignet ist, starten Sie das System neu und verwenden Sie eine Rettungsumgebung. Siehe die Rollback-Prozedur für Snapper unter SLES 15 SP7 .

Wann Offline-Prüfungen oder eine Bereinigung angebracht sind

Falls das Dateisystem nicht eingebunden werden kann oder Kernelmeldungen auf strukturelle Schäden hinweisen, starten Sie das SLES-Rettungssystem oder eine andere geeignete Wiederherstellungsumgebung, identifizieren Sie das richtige Gerät und stellen Sie sicher, dass es ausgehängt ist, bevor Sie die standardmäßige, schreibgeschützte Prüfung ausführen:

sudo btrfs check /dev/DEVICE

Verwenden Sie das eigentliche Btrfs-Blockgerät, nicht einen Mountpoint-Platzhalter. Eine Überprüfung kann Zeit und Speicherplatz beanspruchen und meldet strukturelle Probleme; sie garantiert keine Reparatur. Führen Sie diese Überprüfung nicht --repairroutinemäßig als nächsten Schritt durch. Die Btrfs-Dokumentation warnt davor, dass eine Reparatur die Situation verschlimmern kann und nur unter fachkundiger Anleitung und nach Akzeptanz des Datenrisikos erfolgen sollte. Wenden Sie sich an den SUSE-Support oder einen Btrfs-Spezialisten, wenn die Überprüfung Fehler meldet oder das Gerät E/A-Fehler aufweist.

Sobald der Speicher stabil ist und das Dateisystem mit Lese- und Schreibzugriff eingebunden wurde, sudo btrfs scrub start -B /datakönnen die Prüfsummen überprüft werden. Scrub ist kein Strukturprüfer. Es kann Schäden nur anhand einer bekannten, fehlerfreien redundanten Kopie beheben; bei einer Einzelkopie-Konfiguration erkennt es Fehler, kann aber verlorene Daten nicht wiederherstellen. Lesen Sie die Dokumentation zu Btrfs Scrub . Siehe auch den Dateisystemleitfaden von SUSE SLES 15 SP7 , den Artikel zur Btrfs-Wiederherstellung von SUSE und das Handbuch zu Btrfs Check .

Ergebnis überprüfen

Nach der gewählten Wiederherstellung prüfen Sie, ob das Mount die gewünschten Optionen bietet und einen sicheren Schreibvorgang durchführen kann:

findmnt -T /data -o TARGET,SOURCE,FSTYPE,OPTIONS
sudo touch /data/.rw-check && sudo rm /data/.rw-check

Um ein Root-Snapshot-Rollback durchzuführen, starten Sie das System zunächst neu und vergewissern Sie sich, dass es normal startet. Überprüfen Sie anschließend das neue Kernel-Log auf wiederkehrende Btrfs- oder Gerätefehler. Ein Lese-/Schreib-Flag allein ist kein Garant für einwandfreie Funktion: Treten Fehler erneut auf, stoppen Sie die Schreibvorgänge und kehren Sie zur Speicherdiagnose zurück.

Einen Kommentar hinterlassen

Wenn SLES Btrfs schreibgeschützt wird: Diagnose vor dem erneuten Mounten

Wenn SLES Btrfs schreibgeschützt wird: Diagnose vor dem erneuten Mounten

Ermitteln Sie, ob Btrfs absichtlich schreibgeschützt ist, wenig Speicherplatz bietet oder Daten nach Fehlern schützt, und wählen Sie dann einen Wiederherstellungspfad, der zur Ursache passt.

Registrieren Sie SLES 15 mit SUSE Manager in einem Offline-Netzwerk

Registrieren Sie SLES 15 mit SUSE Manager in einem Offline-Netzwerk

Bereiten Sie gespiegelte Kanäle vor, erstellen Sie einen Aktivierungsschlüssel und starten Sie einen SLES 15-Client ohne direkten Internetzugang, während Sie die für Manager-Check-ins benötigte Verbindung aufrechterhalten.

YaSTs X11-Weiterleitung über SSH zum Laufen bringen

YaSTs X11-Weiterleitung über SSH zum Laufen bringen

Behebt den XIO-Startfehler von YaST über SSH, überprüft die X11-Weiterleitung und xauth und wechselt zur ncurses-Oberfläche, wenn ein Remote-Fenster nicht benötigt wird.

Sicheres Zurücksetzen eines fehlgeschlagenen SLES-Updates mit Snapper

Sicheres Zurücksetzen eines fehlgeschlagenen SLES-Updates mit Snapper

Suchen Sie den Btrfs-Snapshot vor dem Update, testen Sie ihn im Nur-Lese-Modus und machen Sie die Wiederherstellung mit Snapper dauerhaft, während Sie gleichzeitig verstehen, welche Daten außerhalb des Root-Rollbacks bleiben.

Sichere SLES-Syslog-Weiterleitung mit rsyslog und Mutual TLS

Sichere SLES-Syslog-Weiterleitung mit rsyslog und Mutual TLS

Senden Sie SLES-Systemprotokolle über authentifiziertes TLS an einen entfernten rsyslog-Collector, inklusive Zertifikatsprüfungen, Ausfallpufferung und Zustellungstests.

SLES-Upgrade-Speicherfehler vor dem erneuten Versuch verfolgen

SLES-Upgrade-Speicherfehler vor dem erneuten Versuch verfolgen

Nutzen Sie RAM-, Swap-, Kernel- und Zypper-Protokolle, um den tatsächlichen Speicherdruck zu ermitteln, den Paketstatus zu schützen und einen sichereren SLES-Upgrade-Wiederholungsversuch auszuwählen.

Debian 12-Sicherheitsupdates auf einem Server ohne grafische Oberfläche ausführen

Debian 12-Sicherheitsupdates auf einem Server ohne grafische Oberfläche ausführen

Aktivieren Sie die unbeaufsichtigten Sicherheitsupdates von Debian über SSH, behalten Sie die Standardpaketquellen bei und überprüfen Sie geplante Ausführungen anhand der Systemd- und APT-Protokolle.

Ubuntu SMART-Festplattenwarnungen per E-Mail erhalten mit smartd

Ubuntu SMART-Festplattenwarnungen per E-Mail erhalten mit smartd

Vergleichen Sie die E-Mail-Zustellungsoptionen, konfigurieren Sie smartd unter Ubuntu und überprüfen Sie, ob Warnungen zum Festplattenzustand in Ihrem Posteingang ankommen.

Debian 12 DNS-Lookup-Fehler beheben: systemd-resolved reparieren

Debian 12 DNS-Lookup-Fehler beheben: systemd-resolved reparieren

Die DNS-Auflösung unter Debian 12 lässt sich wiederherstellen, indem man systemd-resolved überprüft, gegebenenfalls resolv.conf repariert und die Upstream-DNS- und Anwendungsauflösung verifiziert.

Ubuntu 24.04 zeigt keinen HDMI-Ton an? Stellen Sie die Ausgabe wieder her.

Ubuntu 24.04 zeigt keinen HDMI-Ton an? Stellen Sie die Ausgabe wieder her.

Lassen Sie Ubuntu Ihren Monitor oder Fernseher als Audioausgang erkennen, wählen Sie ihn in den Soundeinstellungen aus und überprüfen Sie die Verbindung oder die PipeWire-Geräteliste, falls HDMI fehlt.