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 :
- Répertoire local,
- serveur sftp (via SSH),
- Serveur HTTP REST,
- AWS S3,
- OpenStack Swift,
- BackBlaze B2,
- Stockage Microsoft Azure Blob
- Google Cloud Storage
- 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érentielbackup
- 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 mountSupprimer 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ésPour supprimer un instantané, par exemple 963d4de3 , exécutez :
$ restic -r ~/mybackup forget 963d4de3Exemple 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ésVé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ésLe 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 pruneExemple 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ésfaitAprè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.