Comment utiliser le programme Restic Backup sur Linux

Contenu

Protégez vos fichiers précieux et vos photos irremplaçables avec le programme de sauvegarde restic. Il est rapide, crypté et vous pouvez l'utiliser directement à partir de la ligne de commande Linux. Voici comment le configurer.

La valeur des sauvegardes

Tout le matériel a une durée de vie limitée. Mécanique Disques durs (Disques durs) et disques SSD (SSD) ils ne durent pas en permanence. Il y a aussi des accidents. Les ordinateurs portables peuvent être perdus, voler ou descendre les escaliers.

On disait autrefois que la valeur d'un système de sauvegarde efficace ne devient évidente qu'une fois les données perdues. Lorsque des pannes ou des pertes surviennent, vous devez disposer d'un moyen rapide et facile de récupérer vos fichiers et informations. Si une organisation perd des données, les implications sont sérieuses. Cela pourrait même compromettre la continuité des activités. Même dans un environnement domestique, la perte de données peut être une expérience douloureuse. Les sauvegardes sont les seules sauvegardes raisonnables.

Et en même temps de tout le reste, la perte accidentelle ou malveillante de données personnellement identifiables est considérée comme une violation en vertu de certaines lois sur la protection des données, comme la Règlement général sur la protection des données (RGPD).

Il y a quelques considérations à prendre en compte lors de la sélection d'un logiciel de sauvegarde. Où voulez-vous que vos sauvegardes soient stockées? Sur un lecteur amovible, sur une autre machine via votre Réseau local (LAN) ou en stockage cloud? Apparemment, vous devez utiliser un programme de sauvegarde qui peut écrire et restaurer à partir du stockage de données que vous souhaitez utiliser.

Les sauvegardes doivent être chiffrées, surtout s'ils doivent être stockés hors site ou dans le cloud. S'ils sont cryptés, ils ne peuvent pas être lus ou restaurés par des personnes non autorisées.

Le programme doit être rapide. Vous ne voulez pas attendre toute la journée la fin d'une sauvegarde ou d'une restauration. Certains programmes stockent une image de sauvegarde de base et stockent ensuite les différences entre l'image de base et la machine source pour chaque sauvegarde ultérieure. Cela accélère considérablement la procédure de sauvegarde. Il utilise également moins d'espace pour vos sauvegardes.

restic fait tout ça. C'est sans frais, Open source, autorisé par 2-Clause de licence BSDet en développement actif. Le code source est activé GitHub.

Où sauvegarder

Dans ce billet, nous stockerons nos sauvegardes sur un autre ordinateur de notre réseau. Ça c'est génial, car il fournit des transferts de fichiers rapides et il est facile de sauvegarder et de restaurer à partir de. Dans un cadre du monde réel, en outre, une sauvegarde est requise vers un autre emplacement hors site. Si vos systèmes actifs et vos sauvegardes se trouvent au même endroit et qu'un sinistre survient à cet endroit (un incendi, un vol ou une inondation), votre poule cuisinera à moins que vous n'ayez une sauvegarde hors site.

Comment pourrions-nous attendre, restic peut sauvegarder sur un lecteur externe qui peut être retiré des locaux et, encore mieux, peut directement sauvegarder sur le stockage en Cloud.

Hors du cadre, agité vous pouvez sauvegarder sur:

  • Un répertoire local ou un lecteur amovible local.
  • Un ordinateur en réseau via Protocole de transfert de fichiers SSH (SFTP). Cette, résolument, a besoin de Couverture sûre (SSH).
  • Serveur HTTP REST.
  • AWS S3.
  • OpenStack Swift.
  • RetourBlaze B2.
  • Stockage Microsoft Azure Blob.
  • Stockage en Cloud Google.

Si vous devez effectuer une sauvegarde vers une destination de données qui ne figure pas sur cette liste, vous pouvez combiner la puissance par rclone avec restic et revenir à l'un des 40 plus ou moins destinations prises en charge par rclone.

Les sauvegardes réseau SFTP nécessitent l'installation et la configuration de SSH sur le serveur de sauvegarde. C'est la machine où les sauvegardes seront stockées. Si vous configurez des clés SSH sur le serveur de sauvegarde et la machine à sauvegarder, vous ne serez pas invité à saisir le mot de passe SSH à chaque fois que vous exécuterez une sauvegarde.

Une façon d'automatiser vos sauvegardes est de créer scripts courts ou fonctions shell et utilisez cron pour les exécuter à des moments précis. L'utilisation de clés SSH vous permettra d'éviter le problème de fournir un mot de passe pour les sauvegardes sans surveillance.

EN RELATION: Comment créer et installer des clés SSH à partir du shell Linux

Installation de restic

L'application restic se trouve dans les dépôts des principales distributions Linux, donc l'installer est une simple ligne en utilisant le gestionnaire de paquets de chaque distribution.

Pour installer restic sur Ubuntu, scribe:

sudo apt installer restic

La commande à utiliser dans Fedora est:

sudo dnf installer restic

À Manjaro, nous utilisons pacman:

sudo pacman -Sy restic

Configuration du restic

Assurez-vous que SSH est configuré sur la machine du serveur de sauvegarde et que vous pouvez établir une connexion à distance depuis la machine à sauvegarder. C'est la machine cliente. Dans notre réseau de test, le client s'appelle “le client s'appelle” le client s'appelle “le client s'appelle”.

Dans la terminologie de restic, les sauvegardes sont stockées sous forme d'instantanés dans un référentiel. Chaque sauvegarde crée un nouveau snapshot. Nous devons créer une place pour le référentiel sur le serveur.

Nous devons créer un répertoire sur le serveur de sauvegarde pour héberger le référentiel. Historiquement, le client s'appelle “/ le client s'appelle”. Nous allons donc y placer notre référentiel.

Sur le serveur de sauvegarde, lancer cette commande. Vous pouvez nommer le répertoire du référentiel comme vous le souhaitez. le client s'appelle “le client s'appelle” le client s'appelle.

sudo mkdir / srv / restic

Nous devons nous assurer que ce répertoire est accessible pour la personne qui gérera les sauvegardes. S'ils étaient plusieurs, il serait logique de créer un groupe d'utilisateurs et de lui donner accès à l'annuaire.

sudo chown dave:dave /srv/restic

Vérifions la configuration dans le répertoire:

ls -hl /srv

Nous pouvons maintenant passer à la machine cliente et créer le référentiel sur le serveur à partir de là. Remplacez votre nom d'utilisateur, le nom du serveur de sauvegarde et le nom du répertoire du référentiel pour correspondre à vos options. Vous pouvez utiliser le adresse IP du serveur de sauvegarde si vous préférez.

Nous utilisons le -r (dépôt) pour spécifier le chemin vers le référentiel que nous allons créer. Le resto initla commande initialise le référentiel.

restic -r sftp:[email protected]:/srv/restic init

Vous serez invité à saisir le mot de passe du compte utilisateur sur le serveur de sauvegarde. Si vous avez configuré des clés SSH entre le serveur et le client, vous n'aurez pas besoin de faire cette étape.

De plus, il vous sera demandé le mot de passe du référentiel et plus tard il vous sera demandé de le confirmer. Ce mot de passe doit être utilisé pour interagir avec le référentiel à l'avenir. Ne le perds pas! Vous ne pourrez pas sauvegarder ou restaurer vos données si vous perdez votre mot de passe.

Il ne faut qu'un instant pour créer et initialiser le référentiel.

Créer une sauvegarde

Créer une sauvegarde est très simple. Nous utilisons le backup commande avec restic, dites-lui ce que nous voulons sauvegarder et vers quel référentiel envoyer la sauvegarde.

sauvegarde restic Documents/noyau/ -r sftp:[email protected]:/srv / restic

Vous devez fournir le mot de passe utilisateur et le mot de passe du référentiel. Pendant l'exécution de la sauvegarde, les noms des fichiers en cours de copie sont affichés, ainsi que des statistiques qui vous indiquent combien de fichiers seront copiés au total, combien ont été copiés jusqu'à présent et quel pourcentage de la sauvegarde est terminée. Les instantanés sont cryptés via le Standard d'encryptage avancé AES-256.

Parce que c'était la première sauvegarde dans ce référentiel, tous les fichiers qui ont été sauvegardés étaient nouveaux. Nous avons dit que restic était rapide: les sauvegardes ont été faites de plus de 70.000 fichiers dans 23 secondes. C'est tout le code source du noyau Linux.

Sur une autre machine de test, J'ai fait une sauvegarde de plus de 350.000 fichiers totalisant plus de 170 Gibraltar dans une heure et demie.

J'ai créé un nouveau fichier sur le client dans le répertoire source et exécuté une autre sauvegarde. La commande est la même que précédemment.

sauvegarde restic Documents/noyau/ -r sftp:[email protected]:/srv / restic

L'arborescence du répertoire source a été analysée pour les modifications, le nouveau fichier a été détecté et sauvegardé. Cette deuxième petite sauvegarde a pris trois secondes pour se terminer, y compris l'analyse des autres fichiers pour les modifications.

Jetons un coup d'œil aux deux instantanés que nous avons dans le référentiel. La commande restic pour cela est snapshots.

restic -r sftp:[email protected]:/instantanés srv/restic

Chaque instantané s'est vu attribuer un identifiant hexadécimal comme identification unique. La date et l'heure de création de chaque instantané sont affichées. Il affiche également le nom de l'ordinateur à partir duquel la sauvegarde a été effectuée et le chemin d'accès aux données qui ont été sauvegardées.

Ensuite, j'ai créé un deuxième nouveau fichier et créé une autre sauvegarde. De nouveau, la ligne de commande est la même qu'avant.

Comme avec notre sauvegarde de recharge précédente, cette petite mise à jour a pris trois secondes pour terminer.

À ce point, vous êtes probablement fatigué d'entrer le mot de passe du référentiel. Nous pouvons résoudre ce problème avant d'utiliser le snapshots commande pour afficher notre collection de trois instantanés. Ouvrez un éditeur et tapez le mot de passe du référentiel dedans, le client s'appelle “Entrer” le client s'appelle. le client s'appelle “.passe_reste” le client s'appelle.

Pour s'assurer que personne d'autre ne peut voir le mot de passe, changer les bits de mode d'accès aux fichiers à l'aide de chmod :

chmod 600 .passe_reste

Cela signifie que personne d'autre que vous ne peut saisir le fichier.

Maintenant, nous pouvons le transmettre au reste de la ligne de commande en utilisant le -p (fichier de mot de passe). Si vous avez également configuré des clés SSH entre le client et le serveur, vous n'aurez pas non plus à saisir le mot de passe du compte utilisateur. Vous pouvez facilement automatiser vos sauvegardes avec cron une fois que l'interaction humaine a été supprimée de la procédure.

instantanés restic -r sftp:[email protected]:/srv/restic -p .rest_pass

On ne nous demande plus le mot de passe du référentiel, qui est genial. Nous n'avons pas besoin de nous en souvenir et nous ne pouvons pas l'orthographier mal.

Travailler avec des instantanés

Le resto diff La commande vous permet de voir les différences entre deux instantanés. Utilisez les identifiants uniques des deux instantanés que vous souhaitez comparer. Vous pouvez voir les ID des instantanés lorsque vous utilisez le restic snapshot commander.

restic diff -r sftp:[email protected]:/srv/restic -p .rest_pass 8f98cd29 8700e4bf

Les différences entre les instantanés sont affichées sous forme de colonnes de statistiques.

Le resto check La commande effectue un test de vérification avec tous les instantanés du référentiel.

contrôle restic -r sftp:[email protected]:/srv/restic -p .rest_pass

Pour supprimer un instantané, doit dire à restic que forget cela et pour prune cette. Vous devez utiliser l'ID unique de l'instantané pour identifier l'instantané à supprimer.

restic oublier --prune -r sftp:[email protected]:/srv/restic -p .rest_pass e506e089

Restauration des données

Quand il est temps de restaurer vos données de sauvegarde, c'est aussi simple que de créer la sauvegarde. Vous devez spécifier l'instantané à restaurer. Vous pouvez utiliser l'ID unique d'un instantané ou vous pouvez utiliser le latest balise pour utiliser l'instantané le plus récent dans le référentiel.

Vous devez également fournir un répertoire pour les données restaurées à copier à l'aide du target option.

restic restaurer la dernière --target ~/restored-data -r sftp:[email protected]:/srv/restic -p .rest_pass

La restauration est aussi rapide que le retour. Vérification dans le répertoire de destination, nous pouvons voir que l'arborescence des répertoires et les fichiers ont été restaurés pour nous.

ls

Faire des copies de sauvegarde, dormir tranquille

La perte de données est un obstacle sérieux. Une solution de sauvegarde robuste signifie que vous avez une chose de moins à vous soucier. Avec restic, vous pouvez automatiser vos sauvegardes vers des référentiels locaux et dans le cloud et dormir paisiblement.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.