Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
rsnapshot [Le 28/01/2024, 14:16] geole [Désinstallation] |
rsnapshot [Le 16/11/2024, 09:52] (Version actuelle) 92.184.145.133 correction |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Xenial Bionic Focal Jammy sauvegarde}} | + | {{tag>Focal Jammy sauvegarde}} |
====== rsnapshot ====== | ====== rsnapshot ====== | ||
Ligne 5: | Ligne 5: | ||
**rsnapshot** est une application en ligne de commande de sauvegarde écrite en PERL, et basée sur [[rsync]] qui est lui-même un outil standard, puissant et fiable. | **rsnapshot** est une application en ligne de commande de sauvegarde écrite en PERL, et basée sur [[rsync]] qui est lui-même un outil standard, puissant et fiable. | ||
- | rsnapshot gère les sauvegardes de manière incrémentielle, et permet à la fois de conserver différentes versions d'un fichier (il n'écrase pas les anciennes versions), et d'éviter la duplication physique des fichiers inchangés.\\ | + | **rsnapshot** gère les sauvegardes de manière incrémentielle, en prenant des instantanés (//snapshots// en anglais), et permet à la fois de conserver différentes versions d'un fichier (il n'écrase pas les anciennes versions), et d'éviter la duplication physique des fichiers inchangés.\\ |
Ceci est rendu possible par un emploi intelligent des [[:lien_physique_et_symbolique|liens physiques]] : même si on trouve l'intégralité des fichiers dans chaque répertoire de sauvegarde (un nouveau répertoire est créé à chaque sauvegarde) ils ne prennent qu'une seule fois leur place sur le disque tant qu'ils restent inchangés (et ne sont "réellement" effacés que si on supprime absolument tous les liens physiques). | Ceci est rendu possible par un emploi intelligent des [[:lien_physique_et_symbolique|liens physiques]] : même si on trouve l'intégralité des fichiers dans chaque répertoire de sauvegarde (un nouveau répertoire est créé à chaque sauvegarde) ils ne prennent qu'une seule fois leur place sur le disque tant qu'ils restent inchangés (et ne sont "réellement" effacés que si on supprime absolument tous les liens physiques). | ||
Ligne 15: | Ligne 15: | ||
C’est un logiciel libre sous licence **[[wpfr>Licence_publique_générale_GNU|GNU GPL]]**. | C’est un logiciel libre sous licence **[[wpfr>Licence_publique_générale_GNU|GNU GPL]]**. | ||
+ | |||
+ | ==== Quand utiliser rsnapshot ? ==== | ||
+ | |||
+ | On trouve de nombreuses applications qui proposent des fonctionnalités proches de **rsnapshot** et des "instantanés". Certains émettent même l'idée qu'il s'agirait d'une "corbeille évoluée". | ||
+ | |||
+ | **rsnapshot** permet de conserver des fichiers, dans des versions différentes capturées dans le temps. | ||
+ | |||
+ | Pour du texte ou du code informatique, c'est aussi ce que font des [[wpfr>Gestion_de_versions|gestionnaires de version]], comme [[:Git]] ou [[wpfr>Apache_Subversion|SVN]]. Et ils le font mieux : ces gestionnaires de version capturent chaque version d'un fichier lorsqu'il est modifié, et proposent des fonctionnalités avancées de fusion, de récupération d'une portion spécifique du texte, etc. | ||
+ | |||
+ | En comparaison **rsnapshot** a un intérêt particulier quand on travaille sur des fichiers multimédia par exemple (Git n'est pas efficace du tout pour sauvegarder plusieurs versions d'une vidéo, il ferait perdre un énorme espace de stockage).\\ | ||
+ | Par conséquent **rsnapshot** est très utile pour conserver des versions de fichiers indépendamment de leur type. C'est donc l'idéal pour sauvegarder son espace [[:arborescence#considerations_avancees|home]] par exemple. | ||
+ | |||
+ | Par rapport aux outils ordinaires de sauvegarde, disposer d'instantanés permet de retrouver une version antérieure, sauvegardée à une date spécifique, d'un document. Une sauvegarde ordinaire ne protège pas d'une bêtise enregistrée, mais seulement d'une perte accidentelle. | ||
===== Pré-requis ===== | ===== Pré-requis ===== | ||
Ligne 100: | Ligne 113: | ||
rsnapshot -t alpha | rsnapshot -t alpha | ||
- | Pour exécuter manuellement [[:logrotate]] pour un intervalle donné (rien de plus simple ;-) ) | + | Pour exécuter manuellement la création d'un instantané, qui déclenche aussi leur [[#rotation des instantanés|rotation]] pour un intervalle donné (rien de plus simple ;-) ) : |
rsnapshot alpha | rsnapshot alpha | ||
Ligne 130: | Ligne 143: | ||
# 0 3 * * 1 root /usr/bin/rsnapshot gamma | # 0 3 * * 1 root /usr/bin/rsnapshot gamma | ||
# 30 2 1 * * root /usr/bin/rsnapshot delta </code> | # 30 2 1 * * root /usr/bin/rsnapshot delta </code> | ||
- | Consulter la signification des champs [[http:cron|ici]] pour une adaptation. | + | Consulter la signification des champs [[:cron|ici]] pour une adaptation. |
En résumé: | En résumé: | ||
* alpha se lance toutes les quatre heures tout le temps au heures exactes à partir de 0 heure. | * alpha se lance toutes les quatre heures tout le temps au heures exactes à partir de 0 heure. | ||
* beta se lance tous les jours à 3 heures trente. | * beta se lance tous les jours à 3 heures trente. | ||
- | * gamma se lance tous les lundi à 0 heure 30. | + | * gamma se lance tous les lundi à 3 heures. |
* delta se lance tous les premiers du mois à 2 heures 30. | * delta se lance tous les premiers du mois à 2 heures 30. | ||
Ligne 149: | Ligne 162: | ||
https://linux.claudeclerc.fr/linuxaddict:administrer:sauvegarder | https://linux.claudeclerc.fr/linuxaddict:administrer:sauvegarder | ||
- | ==== Le changement de niveau sauvegarde ==== | + | |
+ | ==== Rotation des instantanés ==== | ||
Le principe: Le N° le plus vieux ayant atteint la limite fixée est supprimé, puis les numéros sont incrémentés de 1 par la commande **mv** et le numéro le plus ancien du niveau inférieur devient le numéro zéro du niveau courant s'il a atteint la limite toujours par la commamde mv. Sinon rien ne se passe. C'est donc particulièrement rapide. | Le principe: Le N° le plus vieux ayant atteint la limite fixée est supprimé, puis les numéros sont incrémentés de 1 par la commande **mv** et le numéro le plus ancien du niveau inférieur devient le numéro zéro du niveau courant s'il a atteint la limite toujours par la commamde mv. Sinon rien ne se passe. C'est donc particulièrement rapide. | ||
<code bash> | <code bash> | ||
Ligne 172: | Ligne 187: | ||
[2024-01-28T13:45:01] mv /var/cache/rsnapshot/beta.6/ /var/cache/rsnapshot/gamma.0/ | [2024-01-28T13:45:01] mv /var/cache/rsnapshot/beta.6/ /var/cache/rsnapshot/gamma.0/ | ||
[2024-01-28T13:45:01] /usr/bin/rsnapshot gamma: completed successfully</code> | [2024-01-28T13:45:01] /usr/bin/rsnapshot gamma: completed successfully</code> | ||
- | |||
- | |||
===== Consultation des fichiers archivés ===== | ===== Consultation des fichiers archivés ===== | ||
Ligne 217: | Ligne 230: | ||
456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.1/localhost/home/a/fichier | 456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.1/localhost/home/a/fichier | ||
456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.2/localhost/home/a/fichier | 456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.2/localhost/home/a/fichier | ||
- | 456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.5/localhost/home/a/fichier | ||
456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.0/localhost/home/a/fichier | 456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.0/localhost/home/a/fichier | ||
- | 456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.4/localhost/home/a/fichier | ||
456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.3/localhost/home/a/fichier | 456198 -rw-rw-r-- 7 a a 22072524800 Jan 22 18:41 /var/cache/rsnapshot/alpha.3/localhost/home/a/fichier | ||
</code> | </code> | ||
- | |||
- | |||
- | |||
- | |||
- | La surveillance | ||
- | <code bash>Jan 28 12:00:01 a CRON[8704]: (root) CMD (/usr/bin/rsnapshot alpha ; echo Lancement horaire de rsnapshot) | ||
- | Jan 28 12:00:08 a rsnapshot[8717]: /usr/bin/rsnapshot alpha: completed successfully | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN A. | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN A | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Firing regular transaction 10468 for <rsnapshot.org IN A> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN AAAA. | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN AAAA | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Firing regular transaction 1730 for <rsnapshot.org IN AAAA> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Added positive unauthenticated non-confidential cache entry for rsnapshot.org IN A 300s on wlx0002728d7f31/INET6/fd0f:ee:b0::1 | ||
- | Jan 28 12:38:50 a systemd-resolved[1676]: Regular transaction 10468 for <rsnapshot.org IN A> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:38:51 a systemd-resolved[1676]: Not caching negative entry for: rsnapshot.org IN AAAA, cache mode set to no-negative | ||
- | Jan 28 12:38:51 a systemd-resolved[1676]: Regular transaction 1730 for <rsnapshot.org IN AAAA> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN A. | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Positive cache hit for rsnapshot.org IN A | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Regular transaction 34154 for <rsnapshot.org IN A> on scope dns on wlx0002728d7f31/* now complete with <success> from cache (unsigned; non-confidential). | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN AAAA. | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN AAAA | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Firing regular transaction 124 for <rsnapshot.org IN AAAA> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Not caching negative entry for: rsnapshot.org IN AAAA, cache mode set to no-negative | ||
- | Jan 28 12:39:55 a systemd-resolved[1676]: Regular transaction 124 for <rsnapshot.org IN AAAA> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:42:54 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN A. | ||
- | Jan 28 12:42:54 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN A | ||
- | Jan 28 12:42:54 a systemd-resolved[1676]: Firing regular transaction 37607 for <rsnapshot.org IN A> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Added positive unauthenticated non-confidential cache entry for rsnapshot.org IN A 56s on wlx0002728d7f31/INET6/fd0f:ee:b0::1 | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Regular transaction 37607 for <rsnapshot.org IN A> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN AAAA. | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN AAAA | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Firing regular transaction 21514 for <rsnapshot.org IN AAAA> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Not caching negative entry for: rsnapshot.org IN AAAA, cache mode set to no-negative | ||
- | Jan 28 12:42:55 a systemd-resolved[1676]: Regular transaction 21514 for <rsnapshot.org IN AAAA> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN A. | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN A | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Firing regular transaction 19359 for <rsnapshot.org IN A> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Added positive unauthenticated non-confidential cache entry for rsnapshot.org IN A 300s on wlx0002728d7f31/INET/192.168.1.254 | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Regular transaction 19359 for <rsnapshot.org IN A> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN AAAA. | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN AAAA | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Firing regular transaction 45169 for <rsnapshot.org IN AAAA> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Not caching negative entry for: rsnapshot.org IN AAAA, cache mode set to no-negative | ||
- | Jan 28 12:46:45 a systemd-resolved[1676]: Regular transaction 45169 for <rsnapshot.org IN AAAA> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:48:35 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN A. | ||
- | Jan 28 12:48:35 a systemd-resolved[1676]: Positive cache hit for rsnapshot.org IN A | ||
- | Jan 28 12:48:35 a systemd-resolved[1676]: Regular transaction 23523 for <rsnapshot.org IN A> on scope dns on wlx0002728d7f31/* now complete with <success> from cache (unsigned; non-confidential). | ||
- | Jan 28 12:48:35 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN AAAA. | ||
- | Jan 28 12:48:35 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN AAAA | ||
- | Jan 28 12:48:35 a systemd-resolved[1676]: Firing regular transaction 60336 for <rsnapshot.org IN AAAA> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:48:36 a systemd-resolved[1676]: Not caching negative entry for: rsnapshot.org IN AAAA, cache mode set to no-negative | ||
- | Jan 28 12:48:36 a systemd-resolved[1676]: Regular transaction 60336 for <rsnapshot.org IN AAAA> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:51:46 a systemd-resolved[1676]: Removing cache entry for rsnapshot.org IN A (expired 1s ago) | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN A. | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN A | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Firing regular transaction 30985 for <rsnapshot.org IN A> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Looking up RR for rsnapshot.org IN AAAA. | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Cache miss for rsnapshot.org IN AAAA | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Firing regular transaction 12072 for <rsnapshot.org IN AAAA> scope dns on wlx0002728d7f31/* (validate=yes). | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Added positive unauthenticated non-confidential cache entry for rsnapshot.org IN A 300s on wlx0002728d7f31/INET/192.168.1.254 | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Regular transaction 30985 for <rsnapshot.org IN A> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential). | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Not caching negative entry for: rsnapshot.org IN AAAA, cache mode set to no-negative | ||
- | Jan 28 12:58:37 a systemd-resolved[1676]: Regular transaction 12072 for <rsnapshot.org IN AAAA> on scope dns on wlx0002728d7f31/* now complete with <success> from network (unsigned; non-confidential).</code> | ||
- | |||
===== Désinstallation ===== | ===== Désinstallation ===== | ||
Ligne 295: | Ligne 241: | ||
* **(en)** [[http://rsnapshot.org|Site officiel]] | * **(en)** [[http://rsnapshot.org|Site officiel]] | ||
- | |||
---- | ---- | ||
- | + | //Contributeurs : [[:utilisateurs:macmonac]], [[:utilisateurs:krodelabestiole]].// | |
- | //Contributeurs principaux : [[utilisateurs:macmonac|macmonac]].// | + |