BTRFS-Verwaltung und -Wiederherstellung mit grafischen Werkzeugen unter Fedora Linux

imagem 14

Ein paar kurze Anleitungen mit Screenshots, die einfache Wege zeigen, von einem USB-Live-ISO zu booten und mit BTRFS zu früheren Zeitpunkten zurückzukehren.

Viele Linux-Distributionen verwenden mittlerweile standardmäßig BTRFS als Installationsdateisystem. Fedora Linux bildet da keine Ausnahme. In den Jahren 2022/23 gab es viele Artikel, die die Vorteile wie einfaches Rollback, Stabilität und Ähnliches priesen – alle samt mit Absätzen voller Kommandozeilenanweisungen.

Die Zeiten haben sich geändert, die BTRFS-Infrastruktur ist gereift, und jetzt haben wir benutzerfreundliche GUI-Werkzeuge direkt zur Hand.

Keine besonderen Werkzeuge oder Fähigkeiten nötig

Sie können jedes Standard-Fedora-Linux-ISO-Image und einen USB-Stick verwenden. Dieser Artikel richtet sich an Neulinge in Fedora Linux sowie an diejenigen, die mit ext4 und Timeshift vertraut sind.

Leicht verständliche Anleitungen

Meine Erfahrung mit Linux reicht ziemlich weit zurück. Es gab eine Zeit, in der die Fedora-Linux-Hilfelinks oft zu Red Hat Enterprise führten. Das zielte im Allgemeinen auf die Bedürfnisse von Netzwerkmanagern und anderen Systemprofis ab. Zum Glück hat sich die Situation für normale Benutzer inzwischen verbessert. Das Fedora Magazine ist einer der Gründe dafür. In den letzten Jahren habe ich Fedora Linux als Testumgebung in virtuellen Maschinen verwendet und Fedora Kinoite auf einem Zweitlaptop.

Als täglicher Fahrer war das Einzige, was mich zuletzt davon abhielt, auf Fedora Linux umzusteigen, dass ich keine leicht verständlichen Anleitungen zur Snapshot-Wiederherstellung bei Bootfehlern finden konnte. Dieser Artikel listet die Lösungen auf, die ich schließlich zusammengestellt habe.

So starten Sie

Stellen Sie zunächst sicher, dass Ihr System tatsächlich mit BTRFS läuft. Das ist inzwischen normalerweise der Fall, aber wenn Ihre Installation schon ein paar Jahre alt ist oder jemand anderes sie eingerichtet hat, ist eine Überprüfung ratsam. Auf Fedora Workstation mit Gnome probieren Sie disks oder gparted. Diese beiden lassen sich auch auf KDE problemlos installieren, und viele Benutzer ziehen sie dem KDE-Partitionsmanager vor. Viele begrüßten die Entscheidung des Fedora-Lenkungsausschusses von 2025, KDE auf Augenhöhe mit der (Gnome-)Workstation zu befördern. Dieser Leitfaden deckt beide offiziellen Varianten ab. Falls Sie noch kein Fedora Linux haben, gibt es auch einige Hinweise zur allgemeinen Einrichtung.

Hilfe vom Assistenten

Vielleicht ist Ihnen btrfs-assistant schon in Forumsdiskussionen begegnet. Falls Sie dieses Programm noch nicht installiert haben, ist jetzt ein guter Zeitpunkt, das nachzuholen. Das Paket benötigt nur wenig Speicherplatz und installiert auch snapper. Insgesamt etwa 4 MB. Sowohl Gnome Software als auch KDE Discover sind geeignet. Oder Sie verwenden dnf auf der Kommandozeile.

Betriebsbereit:

Subvolumes

Die Registrierung vorhandener Subvolumes erfolgt automatisch. Standardmäßig erzeugt Fedora bei der Standardinstallation zwei Subvolume-Bereiche. Wir sehen sie nur im Dateimanager, wenn wir von einem USB-Live-ISO booten; andernfalls sehen wir nur die Inhalte des Volumes. Partitionsmanager wie gparted zeigen die Partition möglicherweise als vollständig an, aber das Dateisystem funktioniert nicht, wenn wir nicht das logische Subvolume-Overlay darin eingerichtet haben. Wenn Sie Gnome Workstation nutzen, sehen Sie wahrscheinlich ein zusätzliches Subvolume ‚/root/var/lib/machines‚, das – sofern Sie nicht mit containerbasierten Maschinen arbeiten – leer sein wird. Es ist nur dazu da, temporäre Dateien von Snapshot-Prozessen auszuschließen, und kann ignoriert werden.

Alternative Layouts

Anaconda ist der hauseigene Installer, und ich war von den letzten Versionen ziemlich beeindruckt. Der Standardinstallationsweg ist derzeit entschieden die einfachere Option. Für Benutzer, die zusätzliche Subvolumes anlegen möchten, ist die beste Methode möglicherweise gleich zu Beginn, wenn Ihnen die Option Storage Editor angeboten wird. Bei Versionen vor Fedora Linux 45 finden Sie sie auch oben rechts in der Oberfläche. Fedora Linux lässt sich problemlos neben Ihrer aktuellen Einrichtung installieren, wenn Sie Dinge ausprobieren möchten. Meiner Erfahrung nach ist es am besten, mit gparted einen Bereich nicht zugewiesenen Speicherplatzes vorzubereiten und diesen dem Installer anzubieten, anstatt ihm eine fertige Partition zu geben.

Anpassungen nach der Installation

Das Anlegen neuer Subvolumes erfordert die Kommandozeile. Das ist nur für fortgeschrittene Benutzer. Theoretisch behauptet Blivet-gui, diese Aufgabe zu beherrschen, aber ich bin noch nicht überzeugt. Btrfs-assistant lässt diesen Bereich bewusst in Ruhe, und genau das werden wir auch tun.

Backups

Mit den tatsächlichen Subvolumes können wir im Moment nicht viel anfangen. Der Copy-On-Write-Mechanismus (CoW) ist vorhanden und funktioniert. Das war’s auch schon. Aber Backups sind immer gut, also stellen Sie sicher, dass Sie eines haben, bevor Sie die Einrichtung ernsthaft beginnen. Wir werden uns das später im Detail ansehen. Es gibt btrfs-Kommandozeilenmethoden für Subvolumes mit send und receive, aber die Konzepte können ziemlich komplex werden. Standard-Partitionsbackups sind mit dd oder Gnome Disks viel einfacher – genau wie bei ext4 – und für grundlegende Anforderungen genauso effektiv.

Snapshots

Diese heben das BTRFS-Rollback im Vergleich zu Timeshift wirklich in eine ganz andere Liga. Um das zum Laufen zu bringen, verwenden wir Snapper.

In Foren findet man möglicherweise Erwähnungen, Timeshift auf Fedora Linux mit BTRFS und Subvolumes im Ubuntu-Stil mit @ zu verwenden. Das funktioniert inzwischen nicht mehr, es sei denn, Sie verwenden etwas wie Linux Mint. Es war wahrscheinlich nie eine gute Idee, aber es zeigt, wie weit Leute gegangen sind, nur um eine einfache GUI-Wiederherstellung einzurichten. Wir müssen Snapper einrichten, bevor etwas schiefgeht. Wenn Sie über eine Websuche auf diesen Artikel gestoßen sind und bereits in Schwierigkeiten stecken, sind Sie – sofern Sie nicht zuvor Snapshots eingerichtet haben – auf die Kommandozeile beschränkt. Die Kommandozeile btrfs ist eigentlich das Basisprogramm zum Erstellen und Verwalten der Overlay-Bereiche. Snapper hilft uns, mit den btrfs-Snapshots zu arbeiten. Mehrere Kommandozeilenartikel sind verfügbar: https://fedoramagazine.org/?s=btrfs

Snapper-Konfigurationen

Der richtige Ausgangspunkt ist der Tab Snapper-Einstellungen. Klicken Sie auf ‚Neu‘ und füllen Sie die Details aus, eine für ‚root‘ und eine für ‚home‘. Die Backup- und Zielpfade müssen sich auf derselben Partition befinden. Andernfalls besagen die Dokumente, dass Sie Subvolumes überall platzieren können. BTRFS verwendet versteckte Subvolumes, daher ist es wahrscheinlich genauso gut, ‚root‘ unter ‚/‘ und ‚home‘ unter ‚/home‘ zu platzieren. In unserem Setup bedeutet root alles außer dem home-Ordner. Und der home-Ordner wird die Home-Snapshots sauber aufnehmen. Snapper legt seine Konfigurationsdateien unter ‚/etc/snapper‘ ab, falls Sie sie finden müssen. Aktivieren Sie Timeline, Cleanup und Boot. Klicken Sie auf Speichern.

Anzahlen

Beim ersten Speichern der Konfiguration wird die Konfigurationsdatei eingerichtet. Jetzt müssen wir die Zahlen festlegen. Ich weiß nicht, ob es Absicht ist, dass Snapper standardmäßig 10 ganze Jahre an Snapshots speichert und nichts Wöchentliches. Vielleicht hat es etwas mit openSUSE und deren Langzeit-Server-Support-Programm zu tun? Für den Alltagsgebrauch müssen diese Zahlen geändert werden. Und das Root-Volume muss anders behandelt werden als das Home-Volume. Ich evaluiere derzeit den obigen Satz für Root, mit 15, 10, 5, 3, 1, 50 für Home. Allerdings frage ich mich, ob diese Zahlen etwas zu hoch sein könnten. Die Zahl definiert, wie viele Snapshots der Timeline-Bereinigungsalgorithmus behalten soll, vom jüngsten an gezählt. Wenn Sie fertig sind, speichern Sie erneut und wenden Sie dann die systemd-Änderungen an.

Ansammeln von Datenmüll

Achten Sie darauf, sich nicht hinreißen zu lassen. Snapshots lassen sich sehr leicht erstellen. Wir haben wahrscheinlich alle schon Geschichten von Leuten gehört, die ihre Häuser mit 20 Jahren alten Zeitungen füllen. Ein oder zwei Snapshots alter Kernel und Firmware-Updates können uns aus Problemen helfen, aber wir müssen nicht monatelang Gigabytes davon aufbewahren. Umgekehrt kann es unbezahlbar sein, kleine, aber wichtige Dokumente zu finden, die vor ein paar Monaten versehentlich gelöscht wurden, ohne dass wir es bemerkt haben. Die Gefahr der Systemaufblähung könnte durchaus ein Grund dafür sein, dass Fedora Linux snapper nicht bereits installiert hat.

Erstellen der Snapshots

Das ist normalerweise vollständig automatisiert und geschieht in Mikrosekunden. Ein ganz anderer Maßstab als ext4 und Timeshift, wo wir häufig von Minuten sprechen. Manuelle Snapshots sind ebenfalls großartig. Vielleicht kurz bevor man etwas tut, das schiefgehen könnte, ist das eine gute Idee. Wenn Sie die Snapper-Boot-Konfigurationsoption einrichten, wird bei jedem Boot ein sofortiger Snapshot erstellt, sodass sich fehlerhafte Updates sehr leicht rückgängig machen lassen. Unterschiedliche Copy-on-Write-Dateisysteme können sowohl subtile als auch große Unterschiede aufweisen, aber die grundlegenden B-Tree-Prinzipien bleiben tendenziell gleich. Wenn Sie einen tiefen Einblick in die Theorie möchten, gibt es draußen viel Material. Das BTRFS-System arbeitet kontinuierlich an Aufzeichnungen dessen, was passiert, sodass die Datenverarbeitungsanforderungen sehr gering sind. Vereinfacht ausgedrückt können wir uns das so vorstellen, dass wir zu einem Zeitpunkt eine Markierung auf einer Art kontinuierlichem und vernetztem Metadaten-Ereignisprotokoll setzen. Wenn wir zurückrollen, kehren wir zur Markierung zurück und starten die Aufzeichnung auf einem neuen Zweig.

Durchsuchen

Wählen Sie den Tab Snapper und dann den Untertab Browse/Restore. Suchen Sie den Snapshot, den Sie benötigen, und klicken Sie auf Browse, um zu sehen, was darin enthalten ist. Die Browse-Funktion ermöglicht es auch, einzelne Dateien statt ganzer Snapshots wiederherzustellen. Achten Sie auf das Dropdown-Menü für das Ziel, das sich beim Wechseln der Tabs ändert.

Löschen

BTRFS ist im Vergleich zu den auf virtuellen Maschinen verwendeten qcow2-Systemen um Welten schneller. Gleiches gilt für Timeshift. Selbst bei sehr alten Snapshots sind nur wenige Sekunden erforderlich.

Wartung

Auf diesem Tab ist scrub wahrscheinlich die einzige wichtige Funktion. Die Dokumentation besagt, dass dies mindestens monatlich ausgeführt werden sollte. Wenn Sie viele Snapshot-Zurücksetzungen durchgeführt haben, ist ein manueller Scrub eine gute Idee. Balance dient zum Ausbalancieren von RAID-Geräten, und Defragmentierung benötigen Sie wirklich nur, wenn Sie auf einer mechanischen Festplatte arbeiten. Eine SSD verfügt über ein eigenes Optimierungssystem, aber Sie können die Defragmentierung bei Bedarf alle ein bis zwei Jahre manuell ausführen.

Live-Boot

Es gibt einige Operationen, die wir nicht auf einem laufenden Betriebssystem durchführen können. Stattdessen müssen wir Fedora Media Writer oder Gnome Disks verwenden, um ein heruntergeladenes Live-ISO auf einen USB-Stick zu schreiben und von dort aus zu arbeiten. Bei Disks klicken Sie mit der rechten Maustaste auf das ISO und wählen Sie „Öffnen mit Disk Image Writer“. Viele von Ihnen werden mit diesem Prozess sehr vertraut sein. Aber nicht jedem ist bewusst, dass viele Live-ISOs es auch erlauben, kleine Mengen an Software darauf zu installieren. Dieser kleine Trick wird tatsächlich zu einem Grundstein dafür, wie wir unsere Systemausfall-Wiederherstellung durchführen. Heruntergeladene ISO-Images von https://fedoraproject.org. Falls bevorzugt, probieren Sie das Manjaro-KDE-ISO von https://manjaro.org/products/download/x86, das ebenfalls die meiste benötigte Software bereits enthält.

Neustarts

Im nächsten Schritt müssen Sie Ihren Computer dazu bringen, vom USB-Stick zu booten. Dazu müssen Sie entweder bereits in UEFI/BIOS eine Trigger-Taste während des Startvorgangs aktiviert haben (normalerweise Entf) oder Sie gehen in die Betriebssystemeinstellungen und fordern dort einen UEFI-Neustart an.

Sicher bleiben

Es ist grundlegende gute Praxis, ein aktuelles vollständiges Backup zu haben, wenn Sie Änderungen an Ihrem System vornehmen. Sobald Sie das Live-ISO gebootet haben und kein Backup besitzen, stellen Sie sicher, dass Sie eines erstellen. Die GUI-Oberfläche von Disks macht das Erstellen von Partitionsimages ziemlich unkompliziert. Gnome-Workstation-ISOs haben Disks bereits an Bord. Wenn Sie KDE verwenden, richten Sie es über KDE Discover ein. Andernfalls verwenden Sie dnf. Die Installation umfasst nur wenige MB. Wählen Sie die Partition aus, klicken Sie standardmäßig auf die Optionsschaltfläche und wählen Sie „Partitionsimage erstellen“. Sichern Sie auch die Boot-Partitionen. BTRFS erstellt keine Kopien davon. Die üblichen Vorsichtsmaßnahmen gelten, wenn Sie dd verwenden möchten und es noch nie benutzt haben. Sie müssen immer auf Ihre Eingabe ‚if=‘ und Ihre Ausgabe ‚of=‘ achten, sonst verwandelt sich das nützliche Festplatten-Duplikat in seine andere Gestalt als Festplatten-Zerstörer. Platzieren Sie Ihre Backups außerdem auf einem zuverlässigen Medium. Eine hochwertige USB-Festplatte wird allgemein als gute Wahl angesehen. Sie ist widerstandsfähiger gegen zeitlichen Verfall als SSDs, auch wenn sie langsamer ist. Falls Sie noch nie von ‚Bit Rot‘ gehört haben, gibt es viele Artikel im Web. SSDs verlieren Daten, wenn sie nicht regelmäßig mit Strom versorgt werden.

Partitionsgrößen

An diesem Punkt sollten Sie vielleicht eine Anpassung der Partitionsgröße in Betracht ziehen. Aber erstellen Sie zuerst das initiale Backup, wenn Sie können. Die Größe der Systempartition klein zu halten, erleichtert das Backup erheblich. Und Sie werden weitere vollständige Backups benötigen, selbst wenn Copy-On-Write läuft. Für erfahrenere Benutzer gibt es Methoden, Partitionsbackups mit dd zu komprimieren. Auch das Erstellen einer temporären Datei ‚/dev/zero‚ hilft, noch stärker zu komprimieren. Sie können viel Platz sparen, aber die .img-Dateien müssen zum Mounten vollständig dekomprimiert werden, was ein kleiner Nachteil ist.

Virtuelle Maschinen

Probleme mit der Computergeschwindigkeit und übermäßigen Datenmengen können auftreten, wenn zwei gleichzeitige CoW-Systeme zusammen laufen. Eine Art Schneeballeffekt, bei dem das Host-System ständig Kopien der anderen Backups sichert. Laut der Qemu-Dokumentation wird empfohlen, bei der Speicherung virtueller Maschinen auf einer BTRFS-Partition die Option ‚nocow‚ zu verwenden, um Leistungsprobleme zu vermeiden. Für diejenigen, die Gnome Boxes verwenden (das auf Workstation vorinstalliert ist), ist keine Anpassung der Konfigurationsdateien oder VM-Speicherorte erforderlich. Boxes hält seine virtuellen Maschinen gerne außer Sichtweite in einem versteckten home-Ordner namens ‚.local/share/gnome-boxes/images‚ und funktioniert am besten, wenn man es so belässt. Bei allen Image-Dateien wurde CoW bereits deaktiviert. Ich kann nicht sagen, dass ich bei kurzen Tests nennenswerte Probleme festgestellt habe. Das Problem besteht jedoch dennoch, und ein allgemeiner Blick ins Web liefert recht lebhafte Diskussionen zu diesem Thema. Fortgeschrittene Benutzer könnten erwägen, ihre VMs auf einer separaten ext4-Partition laufen zu lassen. Das nocow +C-Flag kann bei Bedarf einfach mit lsattr gegen die Image-Datei überprüft werden.

Swap-Dateien

Fedora Linux verwendet jetzt das schnellere und modernere zram-System, das die RAM-Daten komprimiert, anstatt sie auf den Speicher auszulagern. BTRFS-Snapshots funktionieren nicht, wenn traditionelle Swap-Dateien im Subvolume vorhanden sind. Wenn Ihnen der Arbeitsspeicher knapp wird, sollten Sie zuerst die zram-Zuteilungsverhältnisse anpassen. Falls Sie dennoch eine Swap-Datei benötigen, müssen Sie ein separates Subvolume anlegen, um sie zu enthalten.

Wiederherstellung

Wenn Sie diesen Punkt erreicht haben, sollte Ihnen dieser Abschnitt ziemlich intuitiv erscheinen. Denken Sie jedoch daran, auf die Kontinuität von Root und Home zu achten. Denken Sie daran, dass home weiterhin versteckte System- und Konfigurationsdateien enthält, die von im Root-Bereich installierten Programmen verwendet werden. Bei kleinen Problemen, wenn das System noch bootet, laden Sie btrfs-assistant normal und rollen Sie zu einem früheren guten Punkt zurück. Wichtig: Wenn Sie vom USB-Stick aus arbeiten, starten Sie den Dateimanager und mounten Sie die Partition, die Sie reparieren müssen, bevor Sie btrfs-assistant installieren oder ausführen, sonst schlägt es fehl. In beiden Fällen werden Sie aufgefordert, neu zu starten, damit die Änderung wirksam wird. Der gesamte Prozess ist ziemlich schnell und im Vergleich zu Timeshift praktisch sofort.

Die richtigen Werkzeuge wählen

Systemausfälle passieren den Besten von uns, wenn man genug Zeit hat, genug Tasten zu drücken oder eine Konfigurationsdatei zu viel anzupassen. Aber manchmal werden Ausfälle auch von Upstream verursacht, etwa durch einen unbemerkten Upstream-Bug. Wenn Sie noch in Ihr System booten können, verfügt Fedora Linux bereits über ein sehr schnelles Paket-Rückstufungssystem als eingebauten Standard. Manchmal brauchen wir Snapshots überhaupt nicht. Es gibt ein GUI-Programm dafür namens dnfdragora. Der Vollständigkeit halber sollte das erwähnt werden. Allerdings würde ich wahrscheinlich argumentieren, dass in diesem Fall die Kommandozeile schneller und intuitiver ist. Downgrades funktionieren nur auf einfacher temporärer Basis, sodass später nichts wiederhergestellt werden muss. Wenn das nächste Update-Paket verfügbar ist, hoffentlich mit einer Korrektur, werden das Paket und die zugehörigen Dateien automatisch wieder hochgestuft.

Fazit

Dieser Artikel bringt uns hoffentlich auf den Stand von Anfang H2 2026. Sollte Red Hat Fedora Linux unterstützen, indem es btrfs-assistant offiziell unterstützt, und sollten wir snapper und Snapshots bei Neuinstallationen bereits eingerichtet haben? Ich denke, die Antwort lautet ja, und das wird wahrscheinlich passieren. Aber wie genau und wann, das werden wir abwarten müssen. Weitere Verbesserungen sind immer in der Pipeline.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert