logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

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
utilisateurs:philou92:tutos:sauvegarde-systeme-leger [03/07/2017 22:47]
Philou92 [Mes sources d'inspiration]
utilisateurs:philou92:tutos:sauvegarde-systeme-leger [03/07/2017 22:58]
Philou92 [Utilisation]
Ligne 35: Ligne 35:
 Il permet de récupérer les configurations des paquets du système. Bien que je n'ai pas eu à m'en servir, ce serait bête de ne pas les avoirs sous la main le jour ou votre barbu local vous dira c'est c.. de ne pas les avoirs sauvegarder... Il permet de récupérer les configurations des paquets du système. Bien que je n'ai pas eu à m'en servir, ce serait bête de ne pas les avoirs sous la main le jour ou votre barbu local vous dira c'est c.. de ne pas les avoirs sauvegarder...
  
-N'​oubliez pas qu'​en ​matière de sauvegarde le mieux est l'ami du bien. ;-)+<note tip>​En ​matière de sauvegarde le mieux est l'ami du bien. ;-)</​note>​
  
 Pour l'​installer <code root>​apt-get update && apt-get install debconf-utils</​code>​ Pour l'​installer <code root>​apt-get update && apt-get install debconf-utils</​code>​
Ligne 53: Ligne 53:
 ===== Utilisation ===== ===== Utilisation =====
  
 +Récupérer l'UUID du disque de sauvegarde :
 +blkid
  
 +repérez votre disque comme ici :
 +LABEL="​Sauvegarde"​ UUID="​8486c62b-ad6f-4966-990e-822f729a01c3"​ TYPE="​ext4"​ PARTUUID="​f239042f-01"​
 +
 +editez votre fichier /etc/fstab avec votre éditeur favori (nano, vim) et ajoutez la ligne suivante
 +#​UUID=8486c62b-ad6f-4966-990e-822f729a01c3 /​mnt/​sauvegarde ​ ext4  defaults,​nofail
 +    ,​noauto ​   0     
 +
 +La ligne est pour l'​instant commentée
 +
 +
 +
 +Créer le fichier suivant : sauvegarde.service dans le répertoire /​etc/​systemd/​system/​
 +
 +[Unit]
 +Description=backupbidule
 +Before=shutdown.target reboot.target halt.target
 +
 +[Service]
 +Type=oneshot
 +ExecStart=/​bin/​true
 +ExecStop=/​root/​backup/​rsync-backup.sh
 +RemainAfterExit=yes
 +
 +[Install]
 +WantedBy=multi-user.target
 +
 +
 +systemctl daemon-reload
 +systemctl enable sauvegarde.service
 +systemctl start sauvegarde.service
 +
 +
 +créer le groupe sauvegarde
 +addgroup sauvegarde
 +Ajout du groupe « sauvegarde » (GID 1003)...
 +Fait.
 +
 +-ajouter un ou plusieurs <​USER>​ habilité(s) à déclencher une sauvegarde ponctuelle au groupe "​sauvegarde"​.
 +adduser <​USER>​ sauvegarde
 +Ajout de l'​utilisateur « <​USER>​ » au groupe « sauvegarde »...
 +Ajout de l'​utilisateur <​USER>​ au groupe sauvegarde
 +Fait.
 +
 +-Créer le répertoire /​usr/​local/​sauvegarde/​
 +cd /usr/local
 +mkdir sauvegarde
 +-A l'​intérieur faire un 
 +touch rsync-backup-user.date
 +touch rsync-backup-user.sh avec les droits d'​exécution pour root uniquement et ajouter le script suivant :
 +#! /bin/sh
 +touch /​usr/​local/​sauvegarde/​rsync-backup-user.date
 +exit
 +-ajouter les deux fichier au groupe sauvegarde
 +chgrp sauvegarde rsync-backup-user.date
 +chgrp sauvegarde rsync-backup-user.sh
 +-modifiez les droits des deux fichiers comme suit:
 +chmod 750 rsync-backup-user.sh
 +chmod 660 rsync-backup-user.date
 +- vérifiez les droits :
 +ls -al
 +drwxr-sr-x ​ 2 root staff      4096 juin  29 22:05 .
 +drwxrwsr-x 11 root staff      4096 juin  29 22:03 ..
 +-rw-rw---- ​ 1 root sauvegarde ​   0 juin  29 22:03 rsync-backup-user.date
 +-rwxr-x--- ​ 1 root sauvegarde ​  68 juin  29 22:05 rsync-backup-user.sh
 +
 +**************************************
 +
 +créer le répertoire /​root/​backup/​
 +A l'​intérieur
 +Faire un touch rsync-backup.log
 +Faire un touch rsync-backup.date
 +
 +créer le fichier rsync-backup.sh avec les droits d'​exécution pour root uniquement et ajouter le script suivant:
 +(modifier la ligne 27 avec l'UUID de votre disque)
 +
 +#! /bin/sh
 +nom_hote=`hostname`
 +SOURCE="/"​
 +MONTAGE="/​mnt/​sauvegarde"​
 +DESTINATION1="/​mnt/​sauvegarde/​BANK1"​
 +DESTINATION2="/​mnt/​sauvegarde/​BANK2"​
 +BANKSTATUS="/​mnt/​sauvegarde/​BANK.status"​
 +JOURNAL="/​root/​backup/​rsync-backup.log"​
 +LASTDATE="/​root/​backup/​rsync-backup.date"​i
 +NBJOUR=$((($(date -u +%s) - $(date -ur $LASTDATE ​ +%s))/​86400))
 +APPELUSER="/​usr/​local/​sauvegarde/​rsync-backup-user.date"​
 +NBJOURUSER=$((($(date -u +%s) - $(date -ur $APPELUSER +%s))/​86400))
 +
 +
 +if [ $NBJOUR -lt 7 ]; 
 +then
 + echo "​`date` Pas le moment"​ >> $JOURNAL
 + if [ $NBJOURUSER -lt 7 ]; 
 + then
 + touch -t 201701010000 $APPELUSER
 + else
 + exit
 + fi
 +fi
 +
 +#​rsync_backup_conf='/​root/​backup/​rsync-backup.conf'​
 +mount UUID=8486c62b-ad6f-4966-990e-822f729a01c3 $MONTAGE
 +if [ -f $BANKSTATUS ]; then
 + echo "​`date` Montage disque OK" >> $JOURNAL
 + VALSAUVEGARDE=`cat $BANKSTATUS`
 + if [ "​$VALSAUVEGARDE"​ = "​BANK1" ​ ]; then
 + DESTINATION=$DESTINATION2
 + VALSAUVEGARDE="​BANK2"​
 + elif [ "​$VALSAUVEGARDE"​ = "​BANK2" ​ ]; then
 + DESTINATION=$DESTINATION1
 + VALSAUVEGARDE="​BANK1"​
 + else
 + echo "​`date` Echec sauvegarde SYSTEME:​ Contenu $BANKSTATUS non conforme"​ >> $JOURNAL
 + umount $MONTAGE
 + exit
 + fi
 +else
 + echo "​`date` Echec sauvegarde SYSTEME:​ fichier $BANKSTATUS introuvable"​ >> $JOURNAL
 + exit
 +fi
 +
 +
 +if [ -d $DESTINATION ] ;
 +then
 + rsync_backup_include='/​root/​backup/​rsync-backup-include'​
 + dpkg --get-selections > $DESTINATION/​dpkg-selections.list
 + # nécéssite l'​installation du paquet debconf-utils
 + debconf-get-selections > $DESTINATION/​debconf-selections
 + /​usr/​bin/​rsync -av --delete-after $SOURCE $DESTINATION --exclude-from=$rsync_backup_include --exclude='​**' ​
 + touch $LASTDATE
 + echo "​`date` Sauvegarde SYTEME OK: sur $DESTINATION"​ >> $JOURNAL
 + echo $VALSAUVEGARDE > $BANKSTATUS
 +# umount $MONTAGE
 +else
 + echo "​`date` Echec sauvegarde SYSTEME:​ répertoire $DESTINATION introuvable"​ >> $JOURNAL
 + umount $MONTAGE
 + exit 
 +fi
 +#exit 0
 +
 +
 +# Variables d'​environnement
 +SOURCE="/​home"​
 +DESTINATION="/​mnt/​sauvegarde"​
 +ACTUEL="/​mnt/​sauvegarde/​backuphome/​Actuel"​
 +BACKUP="/​mnt/​sauvegarde/​backuphome/​$(date +'​%d-%m-%Y'​)"​
 +T="​$DESTINATION/​backuphome/​.superpointeur.txt"​
 +LISTEEXCLUSIONS="/​root/​backup/​rsync-backup-include2"​
 +
 +# Codes d'​erreur
 +E_REPABSENT=65
 +E_POINTEURABSENT=66
 +
 +echo $DESTINATION
 +
 +# test 1
 +if [ -d $DESTINATION/​backuphome ] && [ -d $DESTINATION/​.backuphome ]  ; 
 + then # les répertoires existent ​
 + echo "​répertoires trouvés"​
 +
 + else 
 +
 + echo "​`date` Echec sauvegarde HOME: répertoires de sauvegarde introuvables."​ >> $JOURNAL
 + # Vérifier si le support de sauvegarde est monté
 + umount $MONTAGE
 + exit $E_REPABSENT
 +fi # fin test 1
 +
 +# Test 2
 +if [ -e "​$T"​ ] ;
 + then # le répertoire d'​archivage sécurisé est déjà monté
 + echo "​`date` Echec sauvegarde HOME Le dossier sécurisé est déjà monté."​ >> $JOURNAL
 + # Démonter le répertoire sécurisé avant l'​utilisation du script."​
 + umount $MONTAGE
 + exit $E_POINTEURABSENT
 +
 + else # Il faut monter le répertoire d'​archivage sécurisé
 + chmod 750 $DESTINATION/​backuphome
 + #​Déchiffrage du répertoire
 + cat /​home/​virtualdebian/​Documents/​.clefsauvegarde | encfs --stdinpass -v "​$DESTINATION/​.backuphome"​ "​$DESTINATION/​backuphome"​
 + # Coffre ouvert la sauvegarde sécurisée va démarrer!
 + # crée le répertoire Backup du jour
 + mkdir -p "​$BACKUP"​
 + # crée la sauvegarde
 + /​usr/​bin/​rsync -av --delete --exclude-from $LISTEEXCLUSIONS --backup --backup-dir="​$BACKUP"​ "​$SOURCE"​ "​$ACTUEL"​ --exclude='​**'​
 + # supprime le répertoire backup s'il est vide
 + rmdir --ignore-fail-on-non-empty "​$BACKUP"​
 + # démonte le répertoire en clair
 + fusermount -u "​$DESTINATION/​backuphome"​
 + chmod 440 $DESTINATION/​backuphome
 + echo "​`date` Sauvegarde HOME OK" >> $JOURNAL
 + umount $MONTAGE
 +fi # fin test 2 
 +
 +exit 0
 +
 +**************
 +
 +faire un touch rsync-backup-include et ajouter les lignes suivantes :
 +
 +# La commande rsync utilisée inclue / (root) et exclue tout. Cela ne sauvegarde rien. Le fichier rsync-backup-include permet d'​inclure ce que l'on veur sauvegarder.
 +# (note : pour plus d'​information voir la page de manuel de rsync dans les sections : FILTER RULES, INCLUDE/​EXCLUDE PATTTERN RULES, MERGE-FILE FILTviER RULES)
 +# à la visite d'un dossier, penser à exclure ce que l'on ne veut pas sauvegarder avant de mettre la règle contenant les *
 +# + [pattern] inclu un motif
 +# - [pattern] exclu un motif
 +# '​*'​ remplace tout et s'​arrête au premier slash.
 +# '​**'​ remplace tout, incluant les slashs.
 +# + /dossier/ visite un dossier mais ne sauvegarde rien
 +# + /dossier/ sauvegarde tous les fichiers et dossiers mais de manière non récursive (les dossiers seront vides)
 +# + /dossier/** sauvegarde tous le contenu du dossier récursivement
 +# exclure les fichiers
 +- /initrd.img
 +- /vmlinuz
 +- /​home/​virtualdebian/​.cache
 +- /​home/​test/​.cache
 +
 +
 +# sauvegarder le contenu du dossier /etc
 ++ /etc/
 ++ /etc/**
 +
 +# sauvegarder le contenu du dossier /var
 ++ /var/
 ++ /var/spool/
 ++ /​vat/​spool/​**
 ++ /​var/​backups/​
 ++ /​var/​backups/​**
 ++ /var/lib/
 ++ /var/lib/**
 ++ /var/games/
 ++ /​var/​games/​**
 ++ /var/lock/
 ++ /​var/​lock/​**
 ++ /var/log/
 ++ /var/log/**
 ++ /var/mail/
 ++ /​var/​mail/​**
 ++ /var/opt/
 ++ /var/opt/**
 ++ /var/cache/
 ++ /​var/​cache/​apt/​
 ++ /​var/​cache/​apt/​**
 +
 +# sauvegarder le contenu du dossier /usr
 ++ /usr/
 ++ /usr/local/
 ++ /​usr/​local/​**
 +
 +# sauvegarder le contenu de /root
 ++ /root/
 ++ /root/**
 +
 +# sauvegarder le contenu de /home
 ++ /home/
 ++ /home/**
 +
 +
 +# exclure tout (comme ça on est sûr)
 +- **
 +
 +*****************
 +
 +faire un touch rsync-backup-include2 et ajouter les lignes suivantes :
 +
 +# La commande rsync utilisée inclue / (root) et exclue tout. Cela ne sauvegarde rien. Le fichier rsync-backup-include permet d'​inclure ce que l'on veur sauvegarder.
 +# (note : pour plus d'​information voir la page de manuel de rsync dans les sections : FILTER RULES, INCLUDE/​EXCLUDE PATTTERN RULES, MERGE-FILE FILTER RULES)
 +# à la visite d'un dossier, penser à exclure ce que l'on ne veut pas sauvegarder avant de mettre la règle contenant les *
 +# + [pattern] inclu un motif
 +# - [pattern] exclu un motif
 +# '​*'​ remplace tout et s'​arrête au premier slash.
 +# '​**'​ remplace tout, incluant les slashs.
 +# + /dossier/ visite un dossier mais ne sauvegarde rien
 +# + /dossier/ sauvegarde tous les fichiers et dossiers mais de manière non récursive (les dossiers seront vides)
 +# + /dossier/** sauvegarde tous le contenu du dossier récursivement
 +# exclure les fichiers
 +- /initrd.img
 +- /vmlinuz
 +- /​home/​virtualdebian/​.cache
 +- /​home/​test/​.cache
 +
 +
 +# sauvegarder le contenu de /home
 ++ /home/
 ++ /home/**
 +
 +
 +# exclure tout (comme ça on est sûr)
 +- **
 +
 +*********
 +Créer un fichier .clefsauvegarde dans le répertoire <​USER>​ de confiance :
 +/​home/<​USER>/​Documents/​.clefsauvegarde
 +
 +Affecter les droits unique de lecture pour root.
 +en root :
 +chmod 400 /​home/<​USER>/​Documents/​.clefsauvegarde
 +Ajouter le mot de passe en texte à l'​intérieur.
  
  
Ligne 59: Ligne 358:
 Les excellents tuto dont je me suis largement inspiré :  Les excellents tuto dont je me suis largement inspiré : 
  
-rsync-backup ​du fantastique site debian-facile ​[[https://​debian-facile.org/​doc:​systeme:​rsync:​backup]].+rsync-backup [[https://​debian-facile.org/​doc:​systeme:​rsync:​backup]]. 
 + 
 +J'ai repris beaucoup de principes de ce tuto, notamment l'​admirable et instructive façon d'​utiliser rsync (merci à gksam). 
 + 
 +Deux tutos expliquant comment faire une sauvegarde - restauration ​ complète du système (donc lourde) :
  
-Deux tutos expliquant comment faire une sauvegarde - restauration ​ complète du système (donc lourde). 
 [[https://​wiki.debian-fr.xyz/​Restauration_ou_Reconstruction_de_sa_Debian_-_Racine_et_Home_s%C3%A9par%C3%A9s]] [[https://​wiki.debian-fr.xyz/​Restauration_ou_Reconstruction_de_sa_Debian_-_Racine_et_Home_s%C3%A9par%C3%A9s]]
  
 [[https://​wiki.debian-fr.xyz/​Sauvegarder_sa_Debian_en_vue_d%27une_R%C3%A9installation_ou_Reconstruction_-_Racine_et_Home_s%C3%A9par%C3%A9s]] [[https://​wiki.debian-fr.xyz/​Sauvegarder_sa_Debian_en_vue_d%27une_R%C3%A9installation_ou_Reconstruction_-_Racine_et_Home_s%C3%A9par%C3%A9s]]
  
-Le tuto encfs de ubuntu+Le tuto encfs de ubuntu ​
 [[https://​doc.ubuntu-fr.org/​encfs]] [[https://​doc.ubuntu-fr.org/​encfs]]
utilisateurs/philou92/tutos/sauvegarde-systeme-leger.txt · Dernière modification: 01/05/2023 22:43 par Philou92

Pied de page des forums

Propulsé par FluxBB