RDIFF-BACKUP - Un outil de sauvegarde incrémentiel à distance pour Linux
- 3834
- 1139
- Mohamed Brunet
rdiff-backup est un script Python puissant et facile à utiliser pour une sauvegarde incrémentielle locale / à distance, qui fonctionne sur tout système d'exploitation POSIX tel que Linux, Mac OS X ou Cygwin. Il rassemble les caractéristiques remarquables d'un miroir et une sauvegarde incrémentielle.
De manière significative, il préserve les sous-répertoires, les fichiers de développement, les liens durs et les attributs de fichiers critiques tels que les autorisations, la propriété UID / GID, les temps de modification, les attributs étendus, les ACL et les fourches de ressources. Il peut fonctionner dans un mode efficace à la bande passante sur un tuyau, de la même manière que l'outil de sauvegarde RSYNC populaire.
rdiff-backup sauvegarde un seul répertoire vers un autre sur un réseau utilisant SSH, ce qui implique que le transfert de données est crypté ainsi sécurisé. Le répertoire cible (sur le système distant) finit par une copie exacte du répertoire source, mais les différences inversées supplémentaires sont stockées dans un sous-répertoire spécial dans le répertoire cible, ce qui permet de récupérer les fichiers perdus il y a quelque temps.
Dépendances
Pour utiliser RDIFF-Backup dans Linux, vous aurez besoin des packages suivants installés sur votre système:
- Python v2.2 ou plus tard
- libsync v0.9.7 ou plus tard
- Les modules pylibacl et pyxattr python sont facultatifs mais nécessaires pour la liste de contrôle d'accès POSIX (ACL) et le support d'attribut étendu respectivement.
- rdiff-backup-statistics nécessite Python v2.4 ou plus tard.
Comment installer rdiff-backup à Linux
Important: Si vous opérez sur un réseau, vous devrez installer RDIFF-Backup les deux systèmes, de préférence les deux installations de RDiff-Backup devront être exactement la même version.
Le script est déjà présent dans les référentiels officiels des distributions Linux grand public, exécutez simplement la commande ci-dessous pour installer Rdiff-Backup ainsi que ses dépendances:
Intall rdiff-backup sur Ubuntu
À installer Rdiff-backup sur Ubuntu focal ou Debian Bullseye ou plus récent (a 2.0).
$ sudo apt-get updue $ sudo apt-get install libsync-dev rdiff-backup
À installer Rdiff-backup Sur les arrière-plans d'Ubuntu pour les versions plus anciennes (a besoin d'un recul 2.0).
$ sudo add-att-repository ppa: rdiff-backup / rdiff-backup-backports $ sudo apt update $ sudo apt install rdiff-backu
Sur Centos / Rhel 8
Pour installer RDIFF-Backup sur Centos et Rhel 8 (de COPR).
$ sudo yum install yum-plagin-copp epel-lilease $ sudo yum copr activer Frankcrawford / rdiff-backup $ sudo yum install rdiff-backup
Sur Centos / Rhel 7
Pour installer RDIFF-Backup sur Centos et Rhel 7 (de COPR).
$ sudo yum install yum-plagin-copp epel-lilease $ sudo yum copr activer Frankcrawford / rdiff-backup $ sudo yum install rdiff-backup
Sur Centos / Rhel 6
$ sudo yum install Centos-Release-Scl $ sudo yum install rh-python36 gcc libacl-devel $ scl active rh-python36 bash $ sudo pip install rdiff-backup pyxattr pylibacl $ echo 'eecd scl active rh-python36 - rdiff-backup "[Protégé par e-mail]" '| sudo tee / usr / bin / rdiff-backup $ sudo chmod + x / usr / bin / rdiff-backup
Sur Fedora
Pour installer Rdiff-Backup sur Fedora 32+.
$ sudo dnf installer rdiff-backup
Comment utiliser Rdiff-Backup dans Linux
Comme je l'ai mentionné auparavant, rdiff-backup Utilise SSH pour se connecter à des machines distantes sur votre réseau, et l'authentification par défaut dans SSH est la méthode du nom d'utilisateur / mot de passe, qui nécessite normalement une interaction humaine.
Cependant, pour automatiser des tâches telles que les sauvegardes automatiques avec des scripts et au-de.
Une fois que vous avez configuré la connexion sans mot de passe SSH, vous pouvez commencer à utiliser le script avec les exemples suivants.
Fichiers de sauvegarde dans différentes partitions
L'exemple ci-dessous sauvegardera le /etc
répertoire dans un Sauvegarde Répertoire sur une autre partition:
$ sudo rdiff-backup / etc / media / aaronkilik / data / backup / mint_etc.sauvegardeFichiers de sauvegarde dans différentes partitions
Pour exclure un répertoire particulier ainsi que ses sous-répertoires, vous pouvez utiliser le --exclure
Option comme suit:
$ sudo rdiff-backup --exclude / etc / cockpit --exclude / etc.sauvegarde
Nous pouvons inclure tous les fichiers de périphérique, les fichiers FIFO, les fichiers de socket et les liens symboliques avec le --incluez des fichiers spéciaux
Option comme ci-dessous:
$ sudo rdiff-backup - include-spécial-files --exclude / etc / cockpit / media / aaronkilik / data / backup / mint_etc.sauvegarde
Il existe deux autres drapeaux importants que nous pouvons définir pour la sélection des fichiers; --taille maximale
taille qui exclut les fichiers plus grands que la taille donnée en octets et --taille mini-file
Taille qui exclut les fichiers plus petits que la taille donnée en octets:
$ sudo rdiff-backup - max-file-size 5m --include-spécial-files --exclude / etc / cockpit / media / aaronkilik / data / backup / mint_etc.sauvegarde
Sauvegarder les fichiers distants sur le serveur Linux local
Aux fins de cette section, nous utiliserons:
Serveur distant (Tecmint): 192.168.56.102 serveur de sauvegarde local (sauvegarde): 192.168.56.dix
Comme nous l'avons dit précédemment, vous devez installer la même version de rdiff-backup Sur les deux machines, essayez maintenant de vérifier la version sur les deux machines comme suit:
$ rdiff-backup -vVérifiez la version RDIFF sur les serveurs
Sur le serveur de sauvegarde, créez un répertoire qui stockera les fichiers de sauvegarde comme tel:
# MKDIR -P / Backups
Maintenant, à partir du serveur de sauvegarde, exécutez les commandes suivantes pour faire une sauvegarde des répertoires / var / log /
et /racine
à partir du serveur Linux distant 192.168.56.102 dans / sauvegardes
:
# rdiff-backup [Protégé par e-mail] :: / var / log / / backups / 192.168.56.102_logs.Sauvegarde # rdiff-backup [Protégé par e-mail] :: / root / / backups / 192.168.56.102_rootfiles.sauvegarde
La capture d'écran ci-dessous affiche le fichier racine sur le serveur distant 192.168.56.102 Et les fichiers sauvegardés sur le serveur arrière 192.168.56.dix:
Répertoire distant de sauvegarde sur le serveur localPrenez note du rdiff-backup-data répertoire créé dans le sauvegarde
Répertoire vu dans la capture d'écran, il contient des données vitales concernant le processus de sauvegarde et les fichiers incrémentiels.
Maintenant, sur le serveur 192.168.56.102, Des fichiers supplémentaires ont été ajoutés au répertoire racine comme indiqué ci-dessous:
Vérifiez le répertoire de sauvegardeExécutons la commande de sauvegarde une fois de plus pour obtenir les données modifiées, nous pouvons utiliser le -v [0-9]
(Lorsque le nombre spécifie le niveau de verbosité, la valeur par défaut est 3 qui est silencieuse) Option pour définir la fonction de verbosité:
# rdiff-backup -v4 [e-mail protégé] :: / root / / backups / 192.168.56.102_rootfiles.sauvegardeSauvegarde incrémentielle avec résumé
Et pour énumérer le nombre et la date des sauvegardes incrémentielles partielles contenues dans le / Backups / 192.168.56.102_rootfiles.sauvegarde Répertoire, nous pouvons courir:
# rdiff-backup -L / Backups / 192.168.56.102_rootfiles.sauvegarde/
Automatisation de la sauvegarde RDIFF-Back à l'aide de Cron
Nous pouvons imprimer des statistiques de résumé après une sauvegarde réussie avec le --statistiques d'impression
. Cependant, si nous ne définissons pas cette option, les informations seront toujours disponibles dans le fichier de statistiques de session. En savoir plus concernant cette option dans la section statistique de la page de l'homme.
Et le -schéma à distance Flag nous permet de spécifier une autre méthode de connexion à un ordinateur distant.
Maintenant, commençons par créer un sauvegarde.shot
script sur le serveur de sauvegarde 192.168.56.dix comme suit:
# cd ~ / bin # via sauvegarde.shot
Ajoutez les lignes suivantes dans le fichier de script.
#!/ bin / bash #colon -restrict read-only / "'[e-mail protégé] :: / var / journaux / sauvegardes / 192.168.56.102_logs.Retour #Checking Rdiff-Backup Commande Success / Erreur Statut = $? Si [$ statut != 0]; puis #APPEND Message d'erreur dans ~ / Backup.Fichier journal Echo "Rdiff-Backup Code de sortie: $ Status - Commande Sans succès" >> ~ / Sauvegarde.enregistrer; sortie 1; FI #Remove Fichiers de sauvegarde incrémentiel plus d'un mois rdiff-backup --Force --Remove-in-plus-on que 1M / Backups / 192.168.56.102_logs.dos
Enregistrez le fichier et sortez, puis exécutez la commande suivante pour ajouter le script au crontab sur le serveur de sauvegarde 192.168.56.dix:
# crontab -e
Ajoutez cette ligne pour exécuter votre script de sauvegarde quotidiennement à minuit:
0 0 * * * / root / bin / sauvegarde.sh> / dev / null 2> & 1
Enregistrez le crontab et fermez-le, maintenant nous avons réussi à automatiser le processus de sauvegarde. Assurez-vous que cela fonctionne comme prévu.
Lisez la page Rdiff-Backup Man pour des informations supplémentaires, des options et des exemples d'utilisation exhaustifs:
# man rdiff-backup
Page d'accueil de Rdiff-Backup: http: // www.nongnu.org / rdiff-backup /
C'est tout pour le moment! Dans ce tutoriel, nous vous avons montré comment installer et essentiellement utiliser Rdiff-Backup, un script Python facile à utiliser pour une sauvegarde incrémentielle locale / distante dans Linux. Partagez vos réflexions avec nous via la section de rétroaction ci-dessous.
- « Kali Linux 1.1.0 Sortie - Guide d'installation avec des captures d'écran
- Comment installer des mises à jour du noyau sur Ubuntu sans redémarrer »