Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
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 Prochaine révision Les deux révisions suivantes | ||
doc:systeme:rsync:backup [13/07/2013 09:40] gksam [Créer le script de sauvegarde] modification du paramètre Required-Stop |
doc:systeme:rsync:backup [25/07/2014 13:04] paskal [Introduction] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
====== Sauvegarde incrémentielle avec rsync ====== | ====== Sauvegarde incrémentielle avec rsync ====== | ||
- | Tags : {{tag>en-chantier à-tester à-placer}} | + | Tags : {{tag>en-chantier à-tester}} |
- | (//testé // - **gksam** 09-07-2013) | + | (//testé // - **gksam** 25-07-2013) |
Le retour sur le forum est ici : [[http://debian-facile.org/viewtopic.php?id=7061 | Lien vers le forum concernant ce tuto]] | Le retour sur le forum est ici : [[http://debian-facile.org/viewtopic.php?id=7061 | Lien vers le forum concernant ce tuto]] | ||
Ligne 13: | Ligne 13: | ||
* Commentaires : le but est de sauvegarder sa machine sans y penser. | * Commentaires : le but est de sauvegarder sa machine sans y penser. | ||
- | * Débutant, à savoir : [[manuel:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) |
===== Introduction ===== | ===== Introduction ===== | ||
- | <file> | + | <code> |
/mnt/sauvegarde/ | /mnt/sauvegarde/ | ||
├── machine1 | ├── machine1 | ||
Ligne 42: | Ligne 42: | ||
│ ├── root | │ ├── root | ||
│ └── var | │ └── var | ||
- | </file> | + | </code> |
L'architecture du dossier de sauvegarde est comme ci-dessus. | L'architecture du dossier de sauvegarde est comme ci-dessus. | ||
Ligne 58: | Ligne 58: | ||
Donc, dans une console, exécuter la commande suivante. | Donc, dans une console, exécuter la commande suivante. | ||
<code> | <code> | ||
- | $ dpkg --list 'rsync' && echo "rsync est installé" || echo "rsync n'est pas installé" | + | $ ( dpkg --list 'rsync' 2>&1 > /dev/null ) && echo "rsync est installé" || echo "rsync n'est pas installé" |
</code> | </code> | ||
Ligne 69: | Ligne 69: | ||
===== Créer le script de sauvegarde ===== | ===== Créer le script de sauvegarde ===== | ||
- | ==== Créer le fichier rsync-backup.sh dans le dossier /etc/init.d ==== | + | ==== Créer le fichier rsync-backup dans le dossier /etc/init.d ==== |
Dans une console en root, exécuter la commande suivante. | Dans une console en root, exécuter la commande suivante. | ||
<code> | <code> | ||
- | # touch /etc/init.d/rsync-backup.sh | + | # touch /etc/init.d/rsync-backup |
</code> | </code> | ||
- | ==== Modifier les droits du fichier rsync-backup.sh pour qu'il devienne exécutable ==== | + | ==== Modifier les droits du fichier rsync-backup pour qu'il devienne exécutable ==== |
Dans une console root, exécuter la commande suivante. | Dans une console root, exécuter la commande suivante. | ||
<code> | <code> | ||
- | # chmod 755 /etc/init.d/rsync-backup.sh | + | # chmod 755 /etc/init.d/rsync-backup |
</code> | </code> | ||
- | ==== Copier le contenu du fichier rsync-backup.sh ==== | + | ==== Copier le contenu du fichier rsync-backup ==== |
Pour éditer le fichier, dans une console en root, exécuter la commande suivante. | Pour éditer le fichier, dans une console en root, exécuter la commande suivante. | ||
<code> | <code> | ||
- | # nano /etc/init.d/rsync-backup.sh | + | # nano /etc/init.d/rsync-backup |
</code> | </code> | ||
Ligne 120: | Ligne 120: | ||
# retourner 2 en cas d'échec | # retourner 2 en cas d'échec | ||
[ ! -w $point_montage ] && return 2; | [ ! -w $point_montage ] && return 2; | ||
+ | |||
+ | # si le dossier up-to-date n'existe pas alors créer le dossier up-to-date | ||
+ | [ ! -d $point_montage/$nom_hote/up-to-date ] && mkdir -p $point_montage/$nom_hote/up-to-date | ||
+ | |||
+ | # si le dossier increment n'existe pas alors créer le dossier increment | ||
+ | [ ! -d $point_montage/$nom_hote/increment ] && mkdir -p $point_montage/$nom_hote/increment | ||
# exécuter la commande rsync de sauvegarde | # exécuter la commande rsync de sauvegarde | ||
Ligne 130: | Ligne 136: | ||
# supprimer les anciennes sauvegarde | # supprimer les anciennes sauvegarde | ||
- | find $point_montage/$nom_hote/increment/* -maxdepth 0 -type d -ctime +$nb_jours -exec rm -rf {} \; || return 4 | + | find $point_montage/$nom_hote/increment/ -mindepth 1 -maxdepth 1 -type d -ctime +$nb_jours -exec rm -rf {} \; |
return 0 | return 0 | ||
Ligne 199: | Ligne 205: | ||
envoyer_mail "échec de la commande rsync" | envoyer_mail "échec de la commande rsync" | ||
exit 1 | exit 1 | ||
- | ;; | ||
- | |||
- | 4) log_end_msg 0 | ||
- | log_warning_msg "problème de suppression des increments" | ||
- | exit 0; | ||
;; | ;; | ||
esac | esac | ||
Ligne 425: | Ligne 426: | ||
ctrl+o suivi de ctrl+x | ctrl+o suivi de ctrl+x | ||
- | ===== Ajouter le lancement automatique de la sauvegade (cron) ===== | + | ===== Ajouter le lancement automatique de la sauvegarde (cron) ===== |
==== Éditer le fichier contenant les cron ==== | ==== Éditer le fichier contenant les cron ==== | ||
Ligne 442: | Ligne 443: | ||
<code> | <code> | ||
- | 0 4 * * * invoke-rc.d rsync-backup.sh stop | + | 0 4 * * * /usr/sbin/invoke-rc.d rsync-backup stop |
</code> | </code> | ||
Ligne 456: | Ligne 457: | ||
<code> | <code> | ||
- | # update-rc.d rsync-backup.sh stop 0 | + | # update-rc.d rsync-backup stop 0 |
</code> | </code> | ||
Ligne 468: | Ligne 469: | ||
<code> | <code> | ||
- | # invoke-rc.d rsync-backup.sh stop | + | # invoke-rc.d rsync-backup stop |
</code> | </code> | ||
Ligne 490: | Ligne 491: | ||
<code> | <code> | ||
- | # update-rc.d rsync-backup.sh remove | + | # update-rc.d rsync-backup remove |
# supprimer la tâche dans crontab | # supprimer la tâche dans crontab | ||
# crontab -e | # crontab -e | ||
- | # rm /etc/init.d/rsync-backup.sh | + | # rm /etc/init.d/rsync-backup |
# rm /etc/rsync-backup-include | # rm /etc/rsync-backup-include | ||
# rm /etc/rsync-backup.conf | # rm /etc/rsync-backup.conf |