snapper:accueil

Ceci est une ancienne révision du document !


Snapper

Fournit une abstraction des snapshots BTRFS et permet de faire automatiquement des instantanés lors des mises à jour avec APT.

sudo apt install snapper
sudo snapper -c root create-config /

Désactiver les instantanés automatiques en définissant à no la clé TIMELINE_CREATE dans /etc/snapper/configs/root et en désactivant le timer:

sudo systemctl disable snapper-timeline.timer

Désactiver les instantanés au démarrage:

sudo systemctl disable snapper-boot.timer

Dupliquer dans /etc/fstab l'entrée la partition gérée par snapper pour considérer les snapshots (https://github.com/openSUSE/snapper/issues/159):

UUID=9a56fcd5-7718-4fc2-a6d1-d4247d7d155e /.snapshots     btrfs   subvol=.snapshots 0 0
sudo snapper -c root list

root est la configuration par défaut, donc il n'est pas nécessaire de la préciser.

À chaud

sudo snapper list
sudo snapper rollback ${id_of_snapshot_to_get_back}

Va créer deux snapshots: un en lecture-seule de l'état actuelle du disque, et va dupliquer le snapshot auquel on souhaite revenir, enlever sa lecture-seule et le définir comme sous-volume par défaut. Il faut ensuite redémarrer.

Depuis un live CD

Utiliser un live CD Debian et booter dessus.

sudo apt update
sudo apt install btrfs-progs snapper
sudo mkdir /mnt/dd
sudo mount /dev/sda1 /mnt/dd
sudo mount -o subvol=.snapshots /dev/sda1 /mnt/dd/.snapshots
sudo snapper --no-dbus -r /mnt/dd list
sudo snapper --no-dbus -r /mnt/dd rollback ${id_of_snapshot_to_get_back}

Ça doit aussi être faisable en copiant la configuration de Snapper (sudo cp /mnt/dd/etc/snapper/configs/root /etc/snapper/configs/dd), en adaptant la clé SUBVOLUME de la configuration et en ajoutant cette configuration à la liste présente dans le fichier /etc/default/snapper:

## Type:        string
## Default:     ""
# List of snapper configurations.
SNAPPER_CONFIGS="dd"

S'il faut régénérer Grub (qui est sur une partition différente):

mkdir /media/temporary
mount -o subvol=/subvolumes/root /dev/sdXX /media/temporary
cd /media/temporary
mount -o bind /dev  dev
mount -o bind /sys  sys
mount -o bind /proc proc
mount -o bind /boot boot # only necessary if you have a separate boot partition
chroot .
update-grub
exit

(non testé)

  • snapper/accueil.1617548516.txt.gz
  • Dernière modification : 2021/04/04 17:01
  • de 127.0.0.1