GNU/Linux >> Tutoriels Linux >  >> Linux

Comment sauvegarder et restaurer des données à l'aide de Retic sous Linux

Ce guide explique ce qu'est Restic, comment installer Restic dans diverses distributions Linux et enfin comment sauvegarder et restaurer des données à l'aide de Restic dans les systèmes d'exploitation Linux.

Restic - Une application de sauvegarde rapide, sécurisée et efficace

Restique est un programme de sauvegarde rapide, open source, sécurisé et multiplateforme. Il permet d'enregistrer plusieurs révisions de fichiers et de répertoires dans un référentiel crypté stocké sur différents backends.

Restic utilise la cryptographie pour garantir la confidentialité et l'intégrité de vos données. Il crypte les données avec AES-256 en mode compteur et authentifiez-le avec Poly1305-AES code d'authentification de message cryptographique.

Sauvegarder et restaurer des données avec Ristic est simple et très rapide ! Il ne transfère que les fichiers modifiés (sauvegarde incrémentielle) tout comme Rsync .

En utilisant Restic, nous pouvons facilement sauvegarder des fichiers et des répertoires sur un disque local ou un système distant, ou un stockage en nuage. Restic prend en charge les backends de stockage cloud populaires tels qu'AWS, Azure, BackBlaze, Google Cloud, OpenStack et quelques autres.

Restic est écrit en utilisant Go langage de programmation et son code source est disponible gratuitement sur GitHub. C'est une application de sauvegarde multiplateforme. Il prend en charge GNU/Linux, macOS, FreeBSD, openBSD et Microsoft Windows.

Installer Restic sous Linux

Restic est packagé pour les systèmes d'exploitation Linux populaires.

Installer Restic dans Alpine Linux :

$ sudo apk add restic

Installez Restic dans Arch Linux, EndeavourOS, Manjaro Linux :

Restic est disponible dans les dépôts par défaut d'Arch Linux. Assurez-vous que la [Community] le référentiel est activé et installez Restic dans Arch Linux et ses variantes comme EndeavourOS, Manjaro Linux en utilisant Pacman comme indiqué ci-dessous.

$ sudo pacman -S restic

Installer Restic depuis AUR :

Restic est également disponible en AUR. Ainsi, vous pouvez l'installer à l'aide de n'importe quel assistant AUR, tel que Paru ou Oui , dans les systèmes basés sur Arch.

$ paru -S restic-git

Ou,

$ yay -S restic-git

Installez Restic dans Debian, Ubuntu, Linux Mint, Pop_OS ! :

$ sudo apt-get install restic

Installer Restic dans Fedora :

$ sudo dnf install restic

Installez Retic dans RHEL, CentOS, AlmaLinux et Rocky Linux :

$ sudo dnf copr enable copart/restic
$ sudo dnf install restic

Installer Restic dans Solus :

$ sudo eopkg install restic

Installer Restic dans Nix OS :

$ nix-env --install restic

Installez Restic dans openSUSE :

$ sudo zypper install restic

Installez restic avec Linuxbrew :

$ brew install restic

Installer Restic depuis la source :

Pour les autres systèmes d'exploitation, vous pouvez le compiler et l'installer comme ci-dessous. Tout d'abord, assurez-vous d'avoir installé Go langue sur votre système.

  • Comment installer le langage Go sous Linux

Une fois Go installé, git clone restic github repository :

$ git clone https://github.com/restic/restic

Cette commande clonera tout le contenu du référentiel restic dans le répertoire de travail actuel.

Cd dans le répertoire restic :

$ cd restic

Et, installez Restic comme ci-dessous :

$ allez lancer build.go

Vérifiez la version de Restic installée :

Version restic $ restic 0.12.0 compilé avec go1.14.12 sur linux/amd64

Mettre à jour Restic

Si vous avez installé Restic à partir de référentiels officiels, il peut s'agir d'une version un peu ancienne.

Pour mettre à jour Restic vers la dernière version, exécutez :

$ sudo restic auto-mise à jour

Vérifiez maintenant sa version avec la commande :

Version restic $ restic 0.12.1 compilé avec go1.16.6 sur linux/amd64

Sauvegarder et restaurer des données à l'aide de Restic sous Linux

Restic prend en charge les backends suivants pour stocker la sauvegarde :

  1. Répertoire local,
  2. serveur sftp (via SSH),
  3. Serveur HTTP REST,
  4. AWS S3,
  5. OpenStack Swift,
  6. BackBlaze B2,
  7. Stockage Microsoft Azure Blob
  8. Google Cloud Storage
  9. Et bien d'autres services via le rclone .

Voyons maintenant comment sauvegarder et restaurer des données dans un répertoire local.

Créer un nouveau référentiel local

Tout d'abord, créons un référentiel pour stocker la sauvegarde. Par exemple, je vais créer un référentiel nommé mybackup dans mon répertoire $HOME.

$ restic init --repo ~/mybackup

Saisissez deux fois le mot de passe du référentiel. Vous devez vous souvenir du mot de passe pour accéder à ce référentiel ultérieurement. Sinon, vous perdrez définitivement les données stockées dans le référentiel. Vous êtes prévenu !

entrez le mot de passe pour le nouveau référentiel :saisissez à nouveau le mot de passe :créé le référentiel restic c1c5bcfdb8 sur /home/sk/mybackupVeuillez noter que la connaissance de votre mot de passe est nécessaire pour accéder au référentiel. La perte de votre mot de passe signifie que vos données sont irrémédiablement perdues.

Comme vous le voyez dans la sortie ci-dessus, un référentiel restic local avec l'ID c1c5bcfdb8 est créé à /home/sk/mybackup emplacement.

Il est maintenant temps de sauvegarder vos données dans le référentiel nouvellement créé.

Sauvegarder les données dans le répertoire local à l'aide de Retic

Je vais sauvegarder l'intégralité de ~/mydata répertoire (y compris le répertoire lui-même) vers le référentiel ~/mybackup en utilisant la commande :

$ restic -r ~/mybackup backup ~/mydata

Saisissez le mot de passe de votre référentiel :

Exemple de résultat :

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correctaucun instantané parent trouvé, lira tous les fichiersFichiers :7 nouveaux, 0 modifiés, 0 non modifiésDirs :4 nouveaux, 0 modifiés, 0 non modifiésAjouté au référentiel :21,919 Miotraités 7 fichiers , 21,913 Mio en 0:00instantané 7457d80e enregistré

Comme vous pouvez le voir, restic a créé la sauvegarde du répertoire donné, c'est-à-dire mydata . De plus, j'ai créé un instantané de la sauvegarde actuelle avec un nom unique 7457d80e .

Décomposons la commande ci-dessus et voyons ce que fait chaque option.

  • restic :La commande restic
  • -r :Indique le référentiel
  • ~/mybackup :Nom du référentiel
  • backup - Sous-commande Restic pour sauvegarder des fichiers/dossiers
  • ~/mydata - Le répertoire à sauvegarder.

Ajoutez plus de fichiers/dossiers dans le répertoire de sauvegarde. Par exemple, j'ai ajouté un nouveau fichier nommé vi editor.pdf dans ~/mydata annuaire. Maintenant, exécutez à nouveau la même commande restic :

$ restic -r ~/mybackup backup ~/mydata entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct en utilisant l'instantané parent 7457d80eFiles :1 nouveau , 0 modifié, 7 non modifiéDirs :0 nouveau, 3 modifié, 1 non modifiéAjouté au référentiel :50,123 Ko ont traité 8 fichiers, 21,957 Mio en 0:00instantané 963d4de3 enregistré

Restic continuera à créer de nouveaux instantanés avec un nom unique à chaque fois que nous l'exécuterons.

Étant donné que Restic effectue une sauvegarde incrémentielle, les sauvegardes suivantes seront assez rapides que les sauvegardes précédentes. Nous pouvons continuer à ajouter les données dans le dossier de sauvegarde et exécuter la sauvegarde pour créer de nombreux instantanés.

Non seulement les répertoires, Restic nous permet également de sauvegarder des fichiers individuels.

$ restic -r ~/mybackup backup ~/mydata/vi\ editor.pdf 

Exemple de résultat :

entrez le mot de passe pour le référentiel :référentiel c1c5bcfd ouvert avec succès, le mot de passe est correctaucun instantané parent trouvé, lira tous les fichiersFichiers :1 nouveau, 0 modifié, 0 non modifiéDirs :3 nouveaux, 0 modifiés, 0 non modifiéAjouté au référentiel :47,129 Kiotraité 1 fichiers , 45,139 Kio en 0:00instantané 59439d78 enregistré

Comme vous le voyez, un nouvel instantané nommé 59439d78 est créé dans le référentiel.

Répertorier les instantanés

Pour répertorier les instantanés disponibles dans un référentiel local, exécutez :

$ restic -r ~/mybackup instantanés

Exemple de résultat :

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correctID Heure Host Balises Chemins------------------------------ ----------------------------------------7457d80e 2021-08-13 12:51 :58 ostechnix /home/sk/mydata963d4de3 2021-08-13 12:57:55 ostechnix /home/sk/mydata------------------------- ---------------------------------------------2 instantanés

Comme vous le voyez, j'ai 2 instantanés, à savoir 7457d80e et 963d4de3 .

Vérifier la différence entre deux instantanés

Pour vérifier la différence entre deux instantanés, nous pouvons utiliser diff comme ci-dessous :

$ restic -r ~/mybackup diff 7457d80e 963d4de3 

Cette commande compare les deux instantanés donnés et répertorie les différences, c'est-à-dire quels fichiers sont ajoutés, combien de fichiers et de répertoires sont supprimés du référentiel.

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct en comparant l'instantané 7457d80e à 963d4de3 :+ /home/sk/mydata/vi editor.pdf Fichiers :1 nouveau, 0 supprimé, 0 modifiéDirs :0 nouveau, 0 suppriméAutres :0 nouveau, 0 suppriméData Blobs :1 nouveau, 0 suppriméTree Blobs :4 nouveaux, 4 supprimés Ajouté :50,123 Ko Supprimé :4,511 Ko

Comme vous le voyez, j'ai ajouté un nouveau fichier pdf dans la sauvegarde.

Exclure des fichiers et des dossiers

Il est également possible d'exclure certains fichiers ou répertoires. Par exemple, la commande suivante exclura tous les .doc tapez les fichiers :

$ restic -r ~/mybackup backup --exclude=*.doc ~/mydata

Alternativement, vous pouvez mettre l'emplacement réel de tous les fichiers et dossiers que vous souhaitez exclure de la sauvegarde dans un fichier et spécifier son chemin dans la commande de sauvegarde.

Par exemple, créez un fichier nommé exclure :

$ vi exclude.txt

Ajoutez les fichiers ou dossiers que vous souhaitez exclure :

*.txtostechnix.zipmydata/movies

Maintenant, démarrez le processus de sauvegarde en utilisant la commande :

$ restic -r ~/backup backup --exclude-file=exclude.txt ~/mydata

Pour plus de détails sur la restic backup commande, veuillez exécuter :

Sauvegarde $ restic help

Maintenant, nous avons réussi à sauvegarder nos données. Nous verrons ensuite comment restaurer les données à partir de la sauvegarde locale.

Restaurer les données à l'aide de Restic

La restauration des données est facile !

Tout d'abord, répertoriez les instantanés disponibles dans le référentiel à l'aide de la commande :

$ restic -r ~/mybackup instantanés

Pour restaurer les données d'un instantané spécifique, par exemple 7457d80e , exécutez :

$ restic -r ~/mybackup restore 7457d80e --target ~/mydata

Exemple de résultat :

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct. home/sk/mesdonnées

Nous venons de restaurer les données de l'instantané 7457d80e vers ~/mesdonnées répertoire.

Pour restaurer un seul fichier à partir de l'instantané, nous faisons :

$ restic -r ~/mybackup restore 7457d80e --target ~/mydata file.json

Pour plus de détails, cochez la case restore section d'aide aux commandes.

$ restic aide à restaurer

Monter le référentiel pour afficher les données de sauvegarde

Vous pouvez parcourir la sauvegarde comme un système de fichiers normal. Cela est pratique lorsque vous souhaitez afficher le contenu du référentiel.

Tout d'abord, créez un point de montage :

$ mkdir ostechnix

Ensuite, montez votre dépôt sur ostechnix point de montage comme indiqué ci-dessous.

$ restic -r ~/mybackup mount ostechnix/

Cette commande montera le référentiel Restic dans votre système de fichiers local.

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct. 

Maintenant, ouvrez votre gestionnaire de fichiers et vous verrez que votre référentiel y est monté. Accédez au dossier des instantanés et vérifiez les données.

Lorsque vous avez terminé, appuyez sur Ctrl-c pour quitter ou démonter le point de montage du gestionnaire de fichiers.

Pour plus de détails, consultez la section d'aide :

$ restic help mount

Supprimer les instantanés

Tout d'abord, répertoriez tous les instantanés disponibles dans un référentiel :

$ restic -r ~/mes instantanés de sauvegarde entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct. -------------------------------------7457d80e 2021-08-13 12:51:58 ostechnix / home/sk/mydata963d4de3 2021-08-13 12:57:55 ostechnix /home/sk/mydata---------------------------- ------------------------------------------2 instantanés

Pour supprimer un instantané, par exemple 963d4de3 , exécutez :

$ restic -r ~/mybackup forget 963d4de3

Exemple de résultat :

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct[0:00] 100,00 % 1 / 1 fichiers supprimés

Vérifiez si l'instantané est supprimé ou non :

$ restic -r ~/mes instantanés de sauvegarde entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd a été ouvert avec succès, le mot de passe est correct. -------------------------------------7457d80e 2021-08-13 12:51:58 ostechnix / home/sk/mesdonnées--------------------------------------------- -------------------------1 instantanés

Le cliché est parti ! Cependant, les données référencées par les fichiers dans cet instantané sont toujours stockées dans le référentiel.

Pour nettoyer les données non référencées, exécutez :

$ restic -r ~/mybackup prune

Exemple de résultat :

entrez le mot de passe pour le référentiel :le référentiel c1c5bcfd s'est ouvert avec succès, le mot de passe est correctchargement des index...chargement de tous les instantanés...recherche des données encore utilisées pour 1 instantanés[0:00] 100,00 % 1/1 instantanésrecherche des packs utilisés. ..collecte des packs pour suppression et reconditionnement[0:00] 100,00 % 8 / 8 packs traités à reconditionner :0 blobs / 0 Bcela supprime 0 blobs / 0 Bà supprimer :5 blobs / 50,279 Kioprune total :5 blobs / 50,279 KiBrestants :25 blobs / 21.919 MiBtaille inutilisée après élagage :0 B (0,00 % de la taille restante)reconstruction de l'index[0:00] 100,00 % 6 / 6 packs traitéssuppression des fichiers d'index obsolètes[0:00] 100,00 % 3 / 3 fichiers suppriméssuppression de 2 anciens packs[0 :00] 100.00% 2 / 2 fichiers supprimésfait

Après avoir supprimé tous les instantanés et les données associées, vous pouvez supprimer le référentiel.

$ rm -fr ~/masauvegarde/

Conclusion

Vous savez maintenant comment installer et utiliser le programme de sauvegarde Retic pour sauvegarder vos données importantes. Nous avons seulement expliqué comment sauvegarder des fichiers et des dossiers dans un répertoire local avec Restic. Il y a plus! Dans nos prochains guides, nous verrons comment sauvegarder des données sur un système distant et un stockage en nuage.

Je vous recommande également de consulter la documentation officielle de Restic pour une utilisation plus détaillée.


Linux
  1. Comment installer et tester Ansible sur Linux

  2. Comment sauvegarder et restaurer les paramètres d'application à l'aide de Mackup sur un système Linux nouvellement installé

  3. Comment sauvegarder et restaurer le référentiel SVN sous Linux

  4. Comment sauvegarder et restaurer les données et les configurations de RabbitMQ

  5. Comment construire et installer GLFW 3 et l'utiliser dans un projet Linux

Comment installer et utiliser PuTTY sous Linux

Comment sauvegarder et restaurer le système Linux avec Timeshift

Comment sauvegarder et restaurer des fichiers à l'aide de BorgBackup sous Linux

Comment sauvegarder des fichiers et des répertoires à l'aide de Rsync sous Linux

Comment utiliser Timeshift pour sauvegarder et restaurer Linux

Comment cloner et restaurer une partition Linux à l'aide de la commande dd