Sauvegarder votre système Linux avec Timeshift

thumbnail-tutoriel-timeshift

TimeShift est un outil qui permet de créer et restaurer facilement des instantanés (sauvegardes ou encore snapshot) d’un système Linux. Mais, il ne sauvegardera pas, par défaut, les fichiers personnels (documents, images, musiques,…) contenu dans le répertoire home.

Installation de Timeshift

Depuis Linux Mint 18.3, Timeshift est installé de base avec cette distribution. Aussi, il existe un retro-portage pour les versions 18 à 18.2. Ainsi vous pouvez l’installer depuis les dépôts officiels de Linux Mint.

sudo apt update && sudo apt install timeshift

Pour les autres distributions Linux basées sur Ubuntu, vous pouvez l’installer depuis le ppa en entrant la commande suivante dans un terminal :

sudo apt-add-repository -y ppa:teejee2008/ppa && sudo apt-get update && sudo apt-get install timeshift

Pour Debian, vous trouverez un fichier .deb correspondant à votre architecture sur la page releases du projet sur github. Vous trouverez aussi des fichiers .run pour les autres distributions Linux.

Désinstallation de Timeshift

Pour désinstaller Timeshift sur Debian, Ubuntu, Linux Mint et dérivés, en ligne de commande, faites :

sudo apt remove timeshift

Paramétrage de Timeshift

Timeshift

Lors du premier lancement de Timeshift, l’assistant de configuration se lance automatiquement. Il permet de faire un premier paramétrage. Mais vous pouvez aussi aller dans Paramètres pour reprendre tous les réglages.

Sélection du type d’instantané qui sera créés :

Timeshift - Paramètres - Type

RSYNC choix par défaut qui ira dans la plupart des cas. Une copie de fichier sera faites lors du premier instantané. Les suivants seront incrémentaux. C’est à dire que seuls les fichiers modifiés ou ajoutés seront copiés dans les instannés suivants.

BTRFS conviendra mieux si vous avez un système de fichiers Btrfs et que vous voulez profiter des avantages de ce dernier.

Emplacement des instantanés :

Timeshift - Paramètres - Emplacement

Si vous avez plusieurs disques, je recommande de sélectionner un autre disque que celui hébergeant le système. Ainsi vous ne perdrez pas vos sauvegardes si vous formatez votre disque principal.

Programmation de la création d’instantanés :

Timeshift - Paramètres - Planning

Ces paramètres permettent de déterminer l’intervalle de temps entre chaque instantané, ainsi que le nombre de versions à conserver. En ne cochant rien, les instantanés ne se feront qu’à la demande.

Sauvegarde des dossiers et données utilisateurs :

Timeshift - Paramètres - Utilisateurs

Par défaut Timeshift ne sauvegarde pas les dossiers utilisateurs dans les instantanés. A cela une bonne raison : lorsque vous restaurez un instantané, Timeshift remplacera vos données personnelles par celles de l’instantané, certainement plus anciennes…

Mais si vous voulez quand même les inclure vous pourrez le définir dans cette fenêtre en choisissant par utilisateur :

  • uniquement les fichiers cachés (fichiers de config entre autre…)
  • ou tout…

Définition de Patterns d’inclusion/exclusion

Timeshift - Paramètres - Filtre

Vous pourrez définir ici des fichiers/dossiers à inclure/exclure. Si vide, en cliquant sur Résumé vous verrez la liste des fichiers/dossiers exclus par défaut.

Timeshift - liste exclusion par défaut

Créer un instantané manuellement dans Timeshift

Timeshift créer

Pour cela cliquez sur Créer. S’il existe déjà un instantané, cela fera une sauvegarde incrémentielle par rapport au dernier existant.
En sélectionnant la ligne de l’instantané créé et en cliquant dans la colonne Commentaires, vous pourrez en ajouter un et ajouter des précisions .

Restaurer un instantané Timeshift

Sélectionner l’instantané puis cliquez sur Restaurer.

Timeshift Restaurer

Vous pouvez laisser toutes les options sur leur choix par défaut, ou bien, pour les plus experts les modifier…

Timeshift - Restaurer un cliché - 1

Pareil pour les Options du Bootloader.

Timeshift - Options du Bootloader

Lisez l’avertissement et si vous êtes prêt faite Suivant.

Timeshift - Restaurer un cliché - 2

Alors, Timeshift ferme votre session et copie les fichiers à restaurer. Une fois l’opération finie, le système redémarre.

Utiliser Timeshift en ligne de commande

Timeshift peut aussi s’utiliser en ligne de commande, par exemple sur un serveur distant. Voici les commandes principales :

sudo timeshift --check
sudo timeshift --create [OPTIONS]
sudo timeshift --restore [OPTIONS]
sudo timeshift --delete-[all] [OPTIONS]
sudo timeshift --list-{snapshots|devices} [OPTIONS]

Pour avoir la liste de toutes les options :

timeshift --help

Pour allez plus loin

Vous pouvez visiter le wiki du projet sur Github.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

11 Commentaires

  1. Bonjour,

    Pouvez-vous m’expliquer que différence il y’a entre la sauvegarde en RSYNC et Btrfs ?
    Quel des deux méthodes est la plus fiable ou la meilleur ?
    Y ‘a t-il un gain quelconque entre ces deux types de sauvegardes ?
    Merci d’avance pour votre aide 😉

    1. Bonjour jpdc91

      Il n’y a pas de meilleure méthode.

      Rsync est un logiciel de synchronisation de fichier ancien et fiable, largement utilisé pour la sauvegarde et la synchronisation de serveurs par exemple.
      Btrf est un système de fichier récent (2009). Une partie de la communauté voudrait qu’il remplace à terme ext3 et ext4. Parmi ses fonctionnalités, il y a :

      • le copy-on-write (copie sur écriture)
      • la prise en charge direct des instantanés (état d’un système à un instant donné)
      • le checksum (permet de vérifier l’empreinte d’un fichier).

      Par contre, il est moins rapide que ext4 pour le transfert de fichier…

      Donc dans TimeShift, le choix de la solution utilisée dépendra du formatage de votre système de fichier :

      • Si vous êtes en ext4 (ou ext3) sélectionnez rsync.
      • Par contre, si vous avez votre système formaté en Btrf, faites ce choix pour avoir les avantages de ce dernier dans la création et gestions des instantanés.

      Cordialement,

  2. Merci pour votre réponse très claire, vous rendez un super service à la communauté. J’ai donc suivi votre procédure, il se trouve que seul le dernier cliché est complet. Les clichés précedents ne comprennent aucune donnée vidéo ou autre dans les ‘home’, seuls certains fichiers cachés ou système y sont présents. Comme, par précaution j’avais fait un cliché une fois le nouveau système installé, il n’y a plus aucun fichier ancien dans les sauvegardes précedentes… Pas grave si l’on a un serveur, ennuyeux sur un ordi isolé. Merci encore pour votre réponse et votre gentillesse. FE

    1. Bonjour Felix,

      Timeshift ne garde pas toutes les sauvegardes, à part celle faites à la demande. Le nombre de version qu’il conserve dépend du paramétrage Planning où on indique le nombre de version à conserver par Mois/Semaine/Jour/Heure/Boot.
      En principe vous devriez retrouver vos fichiers dans chaque répertoire de cliché s’ils étaient existants et non exclus au moment de sa création… N’avez vous pas modifié les paramètres de Timeshift entre temps ?

  3. Bonjour,
    Je viens d’installer fedora 31 en version beta, et je souhaite restaurer uniquement les données home sur cette distribution via time shift que j’utilise depuis la fedora 29. j’ai donc une sauvegarde du 13 septembre (W), je ne suis pas certain du paramétrage chemin d’acces périphérique
    / dm-2(sbd2)~ ext4 (73 GB) (j’ai un doute sur ce paramètre)
    /boot conserver sur périph racine (je pense que c’est ok pour garder fed31)
    /home dm-2(sbd2)~ ext4 (2TB) (c’est ce que je veux restaurer)

    Merci de me donner votre avis sur ce cas qui peux aussi aider d’autres neophytes en timeshift

    1. Bonjour,

      TimeShift ne permet pas de faire de restauration partielle. Il restaure un instantané système complet. Un instantané système comprend :

      • un dossier racine /
      • un dossier /boot (généralement sur la même partition que /)
      • et un dossier /home. /home peut être dans sur la même partition que /, ou sur une partition différente. Dans ce cas, il faut indiquer à Timeshift laquelle pour qu’il restaure les fichiers au bon endroit. D’ailleurs, Timeshift, par défaut, ne sauvegarde de /home que les sous-dossiers direct (dossier des utilisateurs), mais pas leurs contenus, sauf si les paramètres d’instantanés ont été modifiés

      Toutefois, si vous voulez restaurer le dossier /home uniquement pour récupérer des documents (personnellement je déconseille d’utiliser TimeShift pour gérer les sauvegardes de documents de /home, il est plus prévu pour des sauvegardes de système…), plutôt que de restaurer un instantané, sélectionnez celui où se trouve les fichiers voulus puis faites parcourir. Ça ouvrira le navigateur de fichier avec des droits root à la racine de l’instantané. Alors cherchez et copiez manuellement les fichiers voulus.

      Cordialement,

  4. Salut Tux Masqué,

    Encore un super tuto, merci 🙂

    Je m’interroge juste sur l’espace disque que prennent ces sauvegardes.

    Par exemple, si le système (20 go) est installé sur un ssd de 60 go, quel place va prendre l’instantané sur ce ssd ? Et si par sécurité on veut conserver 3 instantanés différents, quelle taille feront-ils ?

    Autre question : si sur ce ssd on n’a que le répertoire root, le reste étant sur un disque dur, Timeshift gère-t-il ça tout seul ou faut-il configurer qq chose ?

    Je n’ai pour tout système de sauvegarde qu’une image disque de mon ssd sur un autre ssd dans un tiroir, alors je me dis qu’il serait peut-être temps de passer à un truc plus pratique 😉

    1. Bonjour Pablo,

      Merci 🙂 et ça fait plaisir de voir que vous consultez toujours mon site :mrgreen:

      Pour les réponses, voici :

      Question 1 :

      Si votre système (hors dossier /home/nom_utilisateur) fait 20 Go, alors le premier instantané fera 20 Go. Timeshift ne compresse pas ses sauvegardes. Mais, les autres instantanés seront beaucoup plus petits. En effet, Timeshift fait de la sauvegarde incrémentale. C’est à dire qu’à la suite de l’instantané initial, il ne sauvegarde que les fichiers nouveaux et ceux mis à jour. Pour le reste, il pointe vers les fichiers du premier instantané.

      Aussi, pas possible de vous donner une taille même approximative pour ces instantanés, ça dépendra des modifications faites sur votre système depuis la dernière sauvegarde.

      Question 2 :

      Sous Linux, si les répertoires /root, /home,… sont sur un autre disque que le reste du système, pour l’OS ça change rien. Leur emplacement reste /root ou /home,… Pour Timeshift, c’est pareil. Il voit une arborescence partant de / et ne tient pas compte des emplacements physiques pour trouver ce qu’il a à sauvegarder. Rien à configurer pour cela.

      J’espère que ça répond à vos questions.

      Cordialement.

      1. Ce site est très précieux et j’y passe souvent, surtout depuis que je « trafique » un peu Ubuntu. J’y trouve beaucoup de réponses, non pas qu’il n’y en ai pas ailleurs mais l’avantage est qu’ici c’est bien plus compréhensible. C’est donc à moi de vous remercier 😉

        Pour Timeshift, réponses limpides, comme toujours. Je pense que je vais l’essayer sur un ssd-test histoire de voir quelle taille prennent les instantanés. Puis si ça n’est pas trop gourmand, je l’installerai définitivement sur une config ou ils se feront sur un disque séparé, ce qui semble en effet plus prudent.

        Encore merci et longue vie au Tux Masqué 🙂

  5. Comment fixer l’heure de déclenchement ??

    Le lancement reste assez aléatoire, même si Timeshift est sensé se lancer toutes les heures, ce n’est pas le cas ??
    (Linux Mint 19)

    1. Bonjour,

      Le processus de création planifiée d’instantané Timeshift s’appuie sur CRON (gestionnaire de tâches planifiées sous Linux).
      Ce processus se lance toutes les heures (/etc/cron.d/timeshift-hourly). Et en fonction de votre configuration, les instantanés « jour », « semaine » et « mois » se feront au début de l’heure qui suit le démarrage de votre système.
      Mais attention, Timeshift ne créera un nouvel instantané que s’il y a eu des modifications à sauvegarder depuis le dernier créé. Par exemple, si vous avez planifié des instantanés toutes les heures mais que vos fichiers systèmes n’ont pas changé (pas eu de mise à jour, pas de nouveaux logiciels installés,…), il n’y aura pas de nouvel instantané créé. Aussi, par défaut votre répertoire /home n’est pas sauvegardé et donc des modifications dans ce dernier ne créeront pas nouvel instantané.