Problématique : La plupart des tutoriels sont incomplets et n’abordent pas l’édition et l’initialisation du fichier JSON essentiel pour l’automatisation.
Les commandes ci-dessous sont à exécuter avec sudo.
Mettre à jour et installer Timeshift :
sudo apt update
sudo apt install timeshift -y
Identifier le périphérique cible :
Avant de créer le premier instantané, identifiez le système de fichiers ou le périphérique de destination (où les sauvegardes seront stockées).
df -h
Exemple de sortie…

Créer le premier instantané :
L’exécution de la première commande timeshift --create est nécessaire pour que le fichier de configuration timeshift.json soit généré.
sudo timeshift --create --comments "First Snapshot" --snapshot-device /dev/sda1
(Remplacez /dev/sda1 par votre périphérique de destination)
Exemple de sortie…

Après la création du premier instantané, le fichier de configuration est généré. Vous devez maintenant l’éditer pour définir la planification des tâches Cron.
Éditer le fichier de configuration :
sudo nano /etc/timeshift/timeshift.json
Mon fichier…

Personnalisation des lignes clés :
Modifiez les valeurs ("true"/"false" pour activer/désactiver) et les nombres (pour la rétention) selon vos besoins :
| Paramètre | Exemple / Valeur | Description | 
|---|---|---|
| backup_device_uuid | "d00a20aa-cdd1-486d-9e6f-e3f87b3b6aff" | UUID du disque qui accueille les sauvegardes. Utilisez lsblk -fspour l’obtenir si nécessaire. | 
| stop_cron_emails | "true" | Arrête l’envoi d’emails par Cron pour les tâches terminées. | 
| schedule_monthly | "true" | Active la planification mensuelle. | 
| count_monthly | "1" | Nombre de sauvegardes mensuelles à conserver. | 
| schedule_daily | "true" | Active la planification quotidienne. | 
| count_daily | "3" | Nombre de sauvegardes quotidiennes à conserver. | 
| schedule_boot | "true" | Active la planification au démarrage. | 
Sauvegarder le fichier JSON (CTRL+X, O, ENTER).
C’est l’étape la plus importante : vous forcez Timeshift à vérifier le fichier JSON et à créer les liens symboliques vers les fichiers Cron (cron.d, cron.daily, etc.) pour activer la planification.
Vérifier et initialiser les tâches automatiques :
sudo timeshift --check
Cette commande vérifie la validité du fichier timeshift.json et configure les scripts Cron nécessaires.
Exemple de sortie…

Lister les instantanés existants :
sudo timeshift --list
Exemple de sortie…

| Action | Commande (à adapter) | 
|---|---|
| Lister sur un périphérique | sudo timeshift --list --snapshot-device /dev/sda | 
| Créer manuellement avec tag | sudo timeshift --create --comments "after update" --tags D | 
| Restaurer (interactive) | sudo timeshift --restore | 
| Restaurer un instantané spécifique | sudo timeshift --restore --snapshot '2014-10-12_16-29-08' --target /dev/sda1 | 
| Supprimer un instantané spécifique | sudo timeshift --delete --snapshot '2014-10-12_16-29-08' | 
| Supprimer TOUS les instantanés | sudo timeshift --delete-all | 
Timeshift n’est pas un outil de sauvegarde de fichiers personnels !
Timeshift est conçu pour les fichiers système (/). Les répertoires utilisateurs ne sont pas pris en compte par défaut.
Si vous décidez d’inclure des répertoires personnels et de restaurer un instantané, les fichiers personnels reviendront à un état antérieur, voire seront supprimés ! Utilisez un autre logiciel pour vos sauvegardes de données (fichiers personnels).