Zo werkt systeemherstel met snapshots in Linux

Zo heb je een vangnet als er iets misgaat of als je zelf iets fout doet. Zo kun je Linux bijvoorbeeld herstellen na een mislukte update, een verkeerd geïnstalleerd stuurprogramma of een foutieve systeeminstelling. Het geeft niet alleen rust, je durft vaak ook meer te proberen. Het beginnersvriendelijke Linux Mint bevat Timeshift waarmee je eenvoudig momentopnames (snapshots) van je systeem kunt maken op dezelfde of een aparte schijf. Timeshift ondersteunt het standaardbestandssysteem ext4 maar eventueel ook het modernere bestandssysteem Btrfs. Bij CachyOS en andere op Arch-gebaseerde systemen is Btrfs vaak het standaardbestandssysteem. Snapper is daarbij de bekendste snapshotbeheerder. De diepere integratie biedt praktische voordelen. Zo wordt vaak automatisch een snapshot gemaakt bij de installatie van software en kun je al in de bootloader een eerdere snapshot starten. Het is altijd verstandig om zelf wat ervaring met deze tools op te doen. Niet alleen door snapshots te maken, maar ook door ze daadwerkelijk eens terug te zetten. Juist dan wordt het verschil zichtbaar tussen de verschillende aanpakken. Timeshift is vooral geschikt voor eenvoudig systeemherstel in Linux Mint en andere Ubuntu-gebaseerde distributies. Snapper sluit beter aan op distributies die Btrfs gebruiken en biedt meer automatische en geïntegreerde herstelmogelijkheden. De keuze tussen Timeshift en Snapper hangt daarom vooral af van je distributie en bestandssysteem.

Wat is het verschil tussen een back-up en een snapshot?

Timeshift en Snapper zijn beide bedoeld voor systeemherstel, maar werken fundamenteel anders. Wie zoekt naar een manier om een Linux-back-up te maken, komt daardoor ook vaak bij Timeshift of Snapper uit. Een systeem-snapshot vervangt echter geen aparte back-up van je documenten, foto's en andere persoonlijke bestanden. Bij Timeshift kun je zelf kiezen waar snapshots worden opgeslagen. Bij voorkeur gebruik je hiervoor een aparte schijf, maar dat is niet verplicht. Start Linux niet meer op, dan kun je het systeem met een live-usb starten en van daaruit een eerdere snapshot herstellen. Het is daarom altijd verstandig om die bij de hand te hebben. Timeshift lijkt daarmee sterk op een traditionele systeemback-up. Bij Snapper en het moderne bestandssysteem Btrfs worden snapshots snel en vaak zelfs automatisch bij bepaalde systeemacties gemaakt. Ze nemen in het begin nauwelijks extra ruimte in, omdat een snapshot naar dezelfde fysieke datablokken verwijst. Ze worden opgeslagen binnen hetzelfde bestandssysteem, als onderdeel van subvolumes. Herstel kan ook hier vanuit een draaiend systeem of via een live-usb. Daarnaast bieden distributies vaak een extra optie: via de bootloader kun je direct een snapshot selecteren en het systeem herstellen naar een eerdere staat.

Bij Snapper kun je vaak via de bootloader een eerdere snapshot kiezen.
Bij Snapper kun je vaak via de bootloader een eerdere snapshot kiezen.

Timeshift of Snapper: welke tool past bij jouw Linux-distributie?

In dit artikel behandelen we de mogelijkheden voor snapshots in Linux Mint en CachyOS. De hulpprogramma's die we bespreken, Timeshift en Snapper, kun je meestal ook in andere distributies gebruiken, zeker als die gebaseerd zijn op Ubuntu of Arch Linux. Bij Linux Mint is Timeshift standaard geïnstalleerd. Bij andere Ubuntu-varianten is dat niet altijd het geval, maar kun je het vrijwel altijd eenvoudig installeren en gebruiken. CachyOS gebruikt Snapper in combinatie met het bestandssysteem Btrfs. Snapper is afkomstig uit de SUSE-wereld en wordt tegenwoordig ook veel gebruikt binnen Arch Linux en afgeleiden. Naast CachyOS zijn dat bijvoorbeeld Manjaro, EndeavourOS en Garuda Linux (waar het vaak standaard al is ingericht). Snapper is diep geïntegreerd in het systeem. In vergelijking met Timeshift is het iets complexer, maar het biedt wel meer flexibiliteit en geavanceerde mogelijkheden. Voor het beheer van Snapper kun je de opdrachtregel gebruiken, maar ook een grafisch programma zoals Btrfs Assistant, dat verderop aan bod komt.

Garuda Linux biedt standaard een brede selectie van onderhoudstools.

Ext4 of Btrfs: welk bestandssysteem heb je nodig voor snapshots?

Veel distributies sturen sterk aan op de keuze van een bepaald bestandssysteem. Zo maakt Linux Mint, net als Ubuntu en veel afgeleiden hiervan, standaard gebruik van het vertrouwde bestandssysteem ext4. Je kunt eventueel wel voor Btrfs kiezen, maar dat maakt de installatie complexer. Je moet dan tijdens de installatie zelf de partities en subvolumes correct inrichten voor de systeemschijf. De keuze voor ext4 past overigens prima bij Linux Mint: het is licht, snel en stabiel. Timeshift sluit daar goed op aan en omzeilt enkele beperkingen van ext4 bij het maken van snapshots. Zo maakt het slim gebruik van rsync en harde links (waarover later meer). Timeshift kán overigens wel overweg met Btrfs, waarbij het gebruikmaakt van native snapshots. Dat maakt de snapshots sneller en efficiënter. Bij CachyOS is Btrfs het standaardbestandssysteem. Gelet op de diepe integratie van snapshots en performance-optimalisaties is dat ook een logische keuze. Door het rollingreleasemodel van CachyOS blijven kernel en Btrfs-tools bovendien continu up-to-date, wat de betrouwbaarheid en prestaties van dit bestandssysteem ten goede komt.

Bij Linux Mint kun je ook handmatig je partities aanmaken.

Timeshift instellen in Linux Mint

Kies een aparte schijf voor Timeshift-snapshots

Voordat je met Timeshift aan de slag gaat, moet je nadenken waar je snapshots gaat bewaren. Je kunt het beste een andere schijf dan je systeemschijf gebruiken. Zelfs bij een beschadigde systeemschijf kun je je systeem dan terugzetten. De schijf waarop je snapshots bewaart, moet over een Linux-bestandssysteem beschikken, onder meer voor het bewaren van correcte toegangsrechten van bestanden. Je kunt dus niet zomaar een standaard usb-harde schijf uit de doos trekken en gebruiken, omdat die meestal met exFAT of NTFS is geformatteerd. Locaties op afstand en via het netwerk zijn ook niet geschikt. Verder heb je geen invloed op de map waar snapshots worden bewaard: dat is altijd in /timeshift op de gekozen partitie. Hier gebruiken we een tweede schijf. Om een extra schijf in gebruik te nemen, kun je de toepassing Schijven via het menu Hulpmiddelen openen. Selecteer de schijf aan de linkerkant. Via het tandwieltje kun je eventuele bestaande partities verwijderen en een nieuwe partitie formatteren met ext4.

Het is raadzaam een aparte schijf te gebruiken met het ext4-bestandssysteem.
Het is raadzaam een aparte schijf te gebruiken met het ext4-bestandssysteem.

Timeshift instellen en automatische snapshots plannen

Timeshift is standaard geïnstalleerd in Linux Mint en vind je in het menu onder Beheer. De eerste keer verschijnt de instelhulp. Deze kun je ook handmatig starten via Instelhulp in het menu. Eerst wordt om een opslaglocatie voor snapshots gevraagd. Hier kiezen we een aparte schijf. Daarna stel je in of en hoe vaak automatische snapshots worden gemaakt. Een gangbare instelling is bijvoorbeeld: 2 maandelijkse, 3 wekelijkse en 5 dagelijkse snapshots. Zo voorkom je dat de schijf vol raakt, terwijl je toch voldoende herstelpunten behoudt. Als je veel gaat experimenteren of testen, kun je ook kiezen voor snapshots bij het opstarten en daarvan bijvoorbeeld alleen de laatste 5 bewaren.

Je kunt kiezen hoeveel snapshots bewaard moeten worden.
Je kunt kiezen hoeveel snapshots bewaard moeten worden.

Neemt Timeshift ook persoonlijke bestanden mee?

Standaard worden persoonlijke bestanden van gebruikers niet meegenomen. In het laatste scherm van de instelhulp kun je dit handmatig aanpassen. Je kunt zowel de map voor de root-gebruiker (onder /root) als voor elke gebruiker onder /home afzonderlijk mee laten nemen. Timeshift is vooral bedoeld voor het terugzetten van het systeem zelf, bijvoorbeeld na mislukte updates, driverproblemen of foutieve configuraties. Het is minder handig voor persoonlijke bestanden, maar kan wel nuttig zijn als aanvullend noodherstel. Houd dan wel steeds goed in de gaten of er genoeg schijfruimte is, zeker als je vaak met grote bestanden werkt.

Eventueel kun je ook persoonlijke bestanden in de back-up meenemen.
Eventueel kun je ook persoonlijke bestanden in de back-up meenemen.

Een Timeshift-snapshot maken met rsync

Als je alles hebt ingesteld, is het tijd om een eerste momentopname te maken. Hiervoor klik je simpelweg op Maken. Timeshift maakt bij ext4 op de achtergrond gebruik van rsync om kopieën van systeembestanden te maken. De eerste keer duurt dit wat langer, omdat alle systeembestanden gekopieerd worden. Een volgende momentopname is vaak al binnen een minuut klaar, omdat nu alleen gewijzigde bestanden worden gekopieerd. Je kunt het zien als een incrementele back-up. Hiervoor wordt een handig trucje gebruikt: voor bestanden die niet zijn gewijzigd, maakt Timeshift een zogenoemde harde link naar de eerdere kopie in je back-upmap. Zie het als een doorverwijzing naar het eerdere bestand. Hierdoor lijkt de nieuwe snapshot op een volledige back-up, terwijl op de back-upschijf zelf vrijwel geen extra ruimte nodig is. Timeshift wordt daarom vaak gebruikt om een Linux-back-up te maken, al gaat het nauwkeuriger gezegd om een momentopname van het systeem.

De eerste keer duurt het maken van een momentopname wat langer.
De eerste keer duurt het maken van een momentopname wat langer.

Snapshot Linux herstellen met een Timeshift-snapshot

Bij een probleem kun je een Timeshift-snapshot terugzetten om Linux te herstellen naar een eerder werkende toestand. Timeshift kan hierbij alle bestanden uit de rsync-back-up kopiëren naar je draaiende systeem. Je kunt kiezen naar welke locatie bestanden teruggezet moeten worden. De voorgestelde instellingen zijn bijna altijd de juiste, bijvoorbeeld bij herstel na een crash. Als je verder gaat, zal Timeshift de bestanden vergelijken en krijg je een overzicht met alle bestanden die worden teruggezet of verwijderd. Het systeem zal herstarten nadat de bestanden zijn teruggezet.

Je kunt kiezen wat er moet worden teruggezet.
Je kunt kiezen wat er moet worden teruggezet.

Snapper en Btrfs-snapshots gebruiken in CachyOS

Automatische Snapper-snapshots instellen in CachyOS

CachyOS maakt standaard gebruik van het bestandssysteem Btrfs en bevat ook al Snapper en Btrfs Assistant. Het is voor een optimale integratie wel belangrijk om bij de installatie voor een geschikte bootloader te kiezen. Je krijgt dan een praktische methode om snapshots terug te zetten (zie kader 'Snapshots terugzetten via bootloader'). Bij bepaalde gebeurtenissen maakt het systeem automatisch een snapshot zonder dat je iets hoeft in te stellen. Dat doet het bijvoorbeeld voor en na de installatie van software, met de pakketbeheerder pacman. Afhankelijk van je configuratie kun je ook periodieke snapshots maken, bijvoorbeeld elk uur of elke dag. Incidenteel kun je natuurlijk ook handmatig een snapshot maken.

Bij de installatie van software wordt automatisch een snapshot gemaakt.
Linux herstellen via een Btrfs-snapshot in de bootloader

Een bootloader zorgt ervoor dat je besturingssysteem zoals Linux wordt gevonden en gestart. Vaak krijg je hierbij een keuzemenu te zien met extra opties. Als je met Snapper en Btrfs gaat werken, kun je bij sommige distributies vanuit deze bootloader een snapshot terugzetten. De bootloader moet dit wel ondersteunen. GRUB, de bekendste bootloader, kan goed overweg met Btrfs-snapshots. CachyOS ondersteunt GRUB, maar biedt Limine als standaardoptie, die zo is opgezet dat snapshots hier standaard óók in werken.

Bij de installatie van CachyOS kun je zelf de bootloader kiezen.

Een eerdere Snapper-snapshot starten vanuit de bootloader

Als voorbeeld installeren we het grafische programma GIMP via de standaardpakketbeheerder met de opdracht:

sudo pacman -S gimp

Herstart je de pc, dan kun je in de bootloader, voordat deze binnen enkele seconden automatisch verdergaat, bladeren naar Snapshot. Daar zie je alle huidige snapshots met beschrijving. Bij snapshot 6 zie je bijvoorbeeld de opdracht:

/usr/bin/pacman -S gimp

Die momentopname werd gemaakt direct voordat dit commando werd uitgevoerd. Als je deze snapshot zou opstarten, heb je exact het systeem terug van vóór die actie (dus zonder GIMP). De nieuwe snapshot 7 in de regel daarboven is gemaakt direct ná de installatie van GIMP. De beschrijving luidt 'babl gegl GIMP lensfun libgexiv2 libheif libmypaint libspiro libwmf mypa'. Dat zijn de specifieke softwarepakketten die zijn geïnstalleerd, dus GIMP zelf en de afhankelijkheden.

Via de bootloader kun je een eerdere snapshot terugzetten.

Snapshot terugzette Snapper-snapshots beheren met Btrfs Assistant

Start je via de bootloader de pc op basis van een bepaalde snapshot, dan is het nog niet meteen je nieuwe standaardsysteem. CachyOS herkent na het starten dat je vanaf een snapshot werkt en geeft de melding Restore now. Daarmee kun je de snapshot 'promoveren' tot je nieuwe, standaardsysteem. Je kunt dit bevestigen met y. Voordat CachyOS het besturingssysteem definitief vervangt door de snapshot, maakt het voor de zekerheid eerst nog een snapshot van de huidige status. Zo kun je eventuele wijzigingen van ná die snapshot nog herstellen. Het vraagt daarom deze snapshot een naam te geven met de melding 'Enter snapshot description for subvolume @:'. De naam dient puur voor je eigen administratie. Daarna zal de snapshot pas definitief worden teruggezet. Ook de bootloader wordt bijgewerkt. Bij het herstarten van je systeem is je teruggezette snapshot de nieuwe werkelijkheid, maar kun je, onder meer via de bootloader, ook weer terug naar de zojuist gemaakte snapshot!

Van de huidige status wordt óók een snapshot gemaakt.

Snapper-snapshots beheren met Btrfs Assistant

Je kunt eventueel via de opdrachtprompt met Snapper werken. Zo kun je met de volgende opdracht alle snapshots bekijken:

sudo snapper list

Je kunt snapshots maken met:

sudo snapper create
Daarnaast kun je snapshots terugzetten met:
sudo snapper rollback

Met zo'n Snapper-rollback zet je het systeem terug naar de toestand van een eerdere snapshot. Het is meestal makkelijker en overzichtelijker om het hulpprogramma Btrfs Assistant te gebruiken. Het is in CachyOS al standaard geïnstalleerd. Zoals de naam al aangeeft, is het volledig gericht op het bestandssysteem Btrfs. Na het openen van de tool kun je linksonder bij Scrub de integriteit van alle gegevens controleren en eventueel herstellen als er (zoals bij meerdere schijven) meerdere kopieën van een blok zijn. Onder Balance kun je de opslag optimaliseren door opslagblokken te herverdelen. Balance is vooral nuttig bij grotere veranderingen in data. Over het algemeen hoef je deze tools niet zelf actief te gebruiken en zijn de snapper-functies interessanter.

Btrfs Assistant biedt handige tools voor het bestandssysteem Btrfs.

Snapshots maken, bekijken en herstellen in Btrfs Assistant

Op het tabblad Snapper in Btrfs Assistant zie je de snapshots van het root-subvolume (/). Dat is de hoofdpartitie waarop CachyOS en alle software zijn geïnstalleerd. Onder New/Delete kun je een nieuwe snapshot maken of een oude snapshot verwijderen. Onder Browse/Restore kun je de inhoud van de snapshots bekijken of een van de snapshots terugzetten. Als je naar Snapper Settings gaat, zie je instellingen voor root. Je kunt hier gemakkelijk een nieuwe configuratie maken om Snapper bijvoorbeeld voor /home te gebruiken. Dan worden ook snapshots van je persoonlijke documenten gemaakt. Je moet dan wel nog beter de schijfruimte in de gaten gaan houden, zeker als je met grote bestanden werkt.

Btrfs Assistant biedt alles wat nodig is bij het beheren van snapshots.

Automatische Snapper-snapshots plannen en opruimen

Standaard maakt Snapper geen automatische snapshots van het voor root op basis van de tijd (zoals elk uur of elke dag). Met een vinkje bij Enable timeline snapshots kun je dat inschakelen en per periode kiezen hoeveel snapshots er bewaard moeten worden. Je ziet hier ook de optie Number. Hier kun je aangeven hoeveel snapshots voor gebeurtenissen moeten worden bewaard, zoals de installatie van software of updates in CachyOS. Standaard worden 50 snapshots bewaard, ongeacht hoeveel dagen of uren oud ze zijn. In principe kun je dit een stuk lager zetten, zeker als je beperkte schijfruimte hebt.

Je kunt ook op vaste momenten een snapshot laten maken.
In het kort

Linux-snapshots geven je een herstelpunt wanneer een update, stuurprogramma of systeeminstelling verkeerd uitpakt. Timeshift past vooral bij Linux Mint en ext4, terwijl Snapper beter aansluit op Btrfs-systemen zoals CachyOS. Een snapshot helpt bij systeemherstel, maar vervangt geen aparte back-up van persoonlijke bestanden. Bewaar snapshots gecontroleerd en test het terugzetten voordat je erop vertrouwt in een noodgeval.

Veelgestelde vragen

Wat is het verschil tussen een Linux-snapshot en een gewone back-up?

Een Linux-snapshot legt vooral de toestand van het systeem op 1 moment vast, terwijl een gewone back-up bedoeld is als losse kopie van bestanden. Snapshots zijn handig na updates, stuurprogramma's of configuratiefouten, maar staan vaak op dezelfde schijf of binnen hetzelfde bestandssysteem. Voor documenten, foto's en werkbestanden blijft een aparte back-up op een externe schijf, nas of cloudlocatie nodig.

Hoeveel schijfruimte heb je nodig voor snapshots in Linux?

Er is geen vast aantal gigabytes dat voor elke Linux-installatie geldt. De eerste rsync-snapshot van Timeshift kan veel ruimte vragen, omdat systeembestanden worden gekopieerd. Latere snapshots gebruiken minder extra opslag door alleen wijzigingen vast te leggen. Btrfs-snapshots beginnen juist klein, maar groeien zodra bestanden veranderen. Bewaar daarom niet onbeperkt snapshots en controleer de vrije ruimte regelmatig.

Welke Linux-distributies zijn geschikt voor systeemherstel met snapshots?

Veel Linux-distributies kunnen met snapshots werken, maar de beste keuze hangt af van bestandssysteem en inrichting. Linux Mint past goed bij Timeshift, zeker op ext4. Distributies met Btrfs, zoals CachyOS, openSUSE en verschillende Arch-afgeleiden, zijn vaak geschikter voor Snapper. Het belangrijkste is dat de subvolumes, bootloader en automatische opruiming goed zijn ingesteld voordat je erop vertrouwt.

Waarom zijn snapshots extra handig bij een rollingrelease-distributie?

Een rollingrelease-distributie krijgt vaak sneller nieuwe kernels, pakketten en stuurprogramma's dan een klassieke release-distributie. Dat zorgt ervoor dat de software actueel is, maar vergroot ook de kans dat een update onverwacht iets breekt. Een snapshot vóór en na pakketbeheeracties maakt herstel veel sneller. Je kunt dan terug naar de toestand van vlak vóór de wijziging, zonder meteen opnieuw te installeren.

Hoe veilig zijn Linux-snapshots bij ransomware of een kapotte schijf?

Snapshots zijn geen volledige bescherming tegen ransomware of hardwarefalen. Staat de snapshot op dezelfde schijf of binnen hetzelfde bestandssysteem, dan kan ernstige schijfschade ook de snapshot raken. Malware met voldoende rechten kan bovendien lokale gegevens aantasten. Gebruik snapshots daarom voor snel systeemherstel en combineer ze met minimaal 1 aparte back-up van persoonlijke bestanden op een externe locatie.

Welke snapshottool is het makkelijkst voor Linux-beginners?

Voor veel beginners is Timeshift de eenvoudigste keuze, vooral in Linux Mint en andere Ubuntu-gebaseerde systemen. De grafische instelhulp maakt het maken en terugzetten van snapshots overzichtelijk. Snapper is krachtiger wanneer je Btrfs gebruikt, maar vraagt meer begrip van subvolumes, bootloaders en opslagbeheer. Wie net begint, kiest het best de tool die standaard bij de distributie past.