====== Différences ======

Cette page vous affiche les différences entre la révision choisie et la version actuelle de la page.

Lien vers cette vue comparative

sauvegarde [2013/12/24 10:45]
r.doiteau [Script]
sauvegarde [2019/05/11 14:35] (Version actuelle)
Ligne 208: Ligne 208:
  
 ===== Déroulement de la sauvegarde et de la restauration ===== ===== Déroulement de la sauvegarde et de la restauration =====
 +
 +== La Sauvegarde ==
 +
 +La sauvegarde se déroule en plusieurs étapes:
 +==Initialisation et créations des différents dossiers et fichiers:==
 +__script_init.sh__:​
 +Les dossiers crées sont: 
 +                         ​-mnt/​home => point de montage du FreeNas.
 +                         ​-mnt/​sauvegarde/​complete => la sauvegarde complète sera placée ici.
 +                         ​-mnt/​sauvegarde/​incrementale => les sauvegardes incrémentielles seront placées ici.
 +                         ​-mnt/​sauvegarde/​script => les scripts seront placés ici.
 +
 +Le script Initialisation créer les fichiers scripts suivants dans le dossier mnt/​sauvegarde/​script:​
 +
 +{{::​script.png|}}
 +
 +__ConfNas.txt__:​ Contient l'​adresse ip du serveur FreeNas et la où il est monté.
 +__sauvegarde.sh__:​ Programme principale de la sauvegarde qui fait appel au différents fonctions et variables nécessaires. Il contient également l'aide à l'​utilisateur.
 +__script_conf.sh__:​ Inscrit dans le fichier ConfNas.txt la configuration du FreeNas (adresse Ip et point de montage.)
 +__script_listfichier.sh__:​ Lit le fichier de log et l'​affiche.
 +__script_restauration.sh__:​ Fonctions et variables nécessaires à la restauration de la sauvegarde.
 +__script_sauvegarde.sh__:​ Fonctions et variables nécessaires à la sauvegarde.
  
 ==== Fichier complet d'​installation ==== ==== Fichier complet d'​installation ====
  
 {{::​sauv.tar|}} {{::​sauv.tar|}}
 +
 +===== ReadMe =====
 +
 +<​code=bash>​
 +
 +##################################################################​
 +# PROJET : SCRIPT DE SAUVEGARDE ​                                 #
 +# FICHIER : README.txt ​                                          #
 +# EQUIPE : M.BAILLEUL R.DOITEAU S.CHEVRIER M.CHANTELOUP ​         #
 +##################################################################​
 +
 +
 ++------------------------------+
 +|------- ​    ​RESUME ​    ​-------|
 ++------------------------------+
 +
 +Ce programme sauvegarde les répertoires utilisateurs tout les jours de façon incrémentale et fait une sauvegarde complète une fois par semaine.
 +Il envoie un mail à l'​administrateur avec le détail de la sauvegarde.
 +
 +
 ++------------------------------+
 +|------- ​   SOMMAIRE ​   -------|
 ++------------------------------+
 +
 +Installation
 +|_Prérequis
 +|_Installation du programme
 +Configuration
 +|_Configuration du programme
 +Utilisation
 +|_Usage
 +
 +
 ++------------------------------+
 +|------- ​ INSTALLATION ​ -------|
 ++------------------------------+
 +
 +---- Prérequis ----
 +
 +Il est nécessaire d'​avoir un serveur de fichier (FreeNas), un serveur de sauvegarde (sous Debian 7) et des machines clientes (Windows 7 et/ou Debian 7)
 +Tout ceci dans le même réseau.
 +
 +
 +---- Installation du programme ----
 +
 +- Télécharger le fichier sauv.tar
 +- Le décompresser avec la commande: tar xvf sauv.tar, il décompresse l'​archive à l'​emplacement du fichier sauv.tar.
 +- Allez dans PROJET_SAUVEGARDE.
 +- Lancer la commande: bash script_init.sh,​ il crée les dossiers et fichiers nécessaire au fonctionnement des sauvegardes et initialise l'​environnement.
 +
 +
 ++------------------------------+
 +|------- ​ CONFIGURATION ​ ------|
 ++------------------------------+
 +
 +---- Configuration du programme ----
 +
 +- Pour lancer la configuration de la sauvegarde, lancer la commande: sauvegarde.sh -C -i "​votre_ip_serveur"​ -m "​votre_répertoire_source"​
 +- L'​installation à configurée crontab, de façon à ce que le script de sauvegarde soit lancé tous les jours.
 +- Pour modifier la fréquence ou pour desactiver la sauvegarde, il faut éditer /​etc/​crontab et commenter la dernière ligne ou la modifier en fonctions de la configuration souhaitée
 +
 +
 ++------------------------------+
 +|------- ​ UTILISATION ​ --------|
 ++------------------------------+
 +
 +
 +---- Usage ----
 +>​sauvegarde.sh -h
 +
 +Les options obligatoires :
 +
 +
 +  -C , -i , -m , Configuration du serveur de fichier
 +       [-i] XXX.XXX.XXX.XXX ​    IP du serveur de fichiers
 +       [-m] /rep                Définit l'​emplacement du répertoire source
 +
 +
 +  -R, [-u],​[-r],​[-f],​[-e],​[-d], ​ Restauration
 +       [-u] user                 suivi du nom de l'​utilisateur
 +       [-r] repertoire ​          suivi du nom du repertoire
 +       [-f] fichier ​             suivi du nom du fichier
 +       [-e] .ext                 suivi de l'​extension
 +       [-d] date                 suivi de la date de récupération souhaité
 +
 +
 +  -S, [-c]  Sauvegarde des Répertoire personnels
 +       ​[-c] ​                     force la sauvegarde complète
 +
 +
 +Exemple d'​utilisation :
 +  # Configuration du serveur de fichier
 +    bash sauvegarde.sh -C -i 192.168.1.1 -m /mnt/vol0
 +  # Sauvegarde des répertoires utilisateurs
 +    bash sauvegarde.sh -S
 +    - Pour forcer une sauvegarde complete
 +    bash sauvegarde.sh -S -c
 +  # Restauration :
 +    - De tous les fichier de l'​utilisateur '​util1'​ avec l'​extension .doc sauvegardé le 22/10/2013
 +    bash sauvegarde.sh -R -u util1 -f *.doc -d 10-22
 +    - Du repertoire personnel de util2
 +    bash sauvegarde.sh -R -u util2
 +</​code>​
  
 ===== Détails des différents scripts ===== ===== Détails des différents scripts =====
 +
 +==script_init.sh==
 +
 +<​code=bash>​
 +#!/bin/sh
 +##################################################################​
 +# PROJET : SCRIPT DE SAUVEGARDE ​                                 #
 +# FICHIER : script_init.sh ​                                      #
 +# EQUIPE : M.BAILEUL R.DOITEAU S.CHEVRIER M.CHANTELOUP ​          #
 +##################################################################​
 +
 +
 +REPSAVE=/​mnt/​sauvegarde
 +REPSAUVALL=$REPSAVE/​complete
 +REPSAUVINC=$REPSAVE/​incrementale
 +REPLOG=$REPSAVE/​journal
 +REPSCRIPT=$REPSAVE/​script
 +REPHOME=/​mnt/​home
 +
 +#########################################################​ CREATION REPERTOIRE ############################################################​
 +
 +mkdir $REPSAVE
 +mkdir $REPSAUVALL
 +mkdir $REPSAUVINC
 +mkdir $REPLOG
 +mkdir $REPSCRIPT
 +mkdir $REPHOME
 +
 +##############################################################​ COPIE SCRIPT ##############################################################​
 +
 +cp ./​data/​script_sauvegarde.sh $REPSCRIPT/​script_sauvegarde.sh
 +cp ./​data/​script_restauration.sh $REPSCRIPT/​script_restauration.sh
 +cp ./​data/​script_conf.sh $REPSCRIPT/​script_conf.sh
 +cp ./​data/​script_listfichier.sh $REPSCRIPT/​script_listfichier.sh
 +cp ./​data/​sauvegarde.sh $REPSCRIPT/​sauvegarde.sh
 +
 +chmod 755 $REPSCRIPT/​sauvegarde.sh
 +
 +################################################################​ CRONTAB #################################################################​
 +
 +echo "0 2 * * * root bash /​mnt/​sauvegarde/​script/​sauvegarde.sh -S" >>/​etc/​crontab
 +
 +################################################################​ COMMANDE ################################################################​
 +
 +echo "Pour renseigné l'​adresse IP et le repertoire source de votre sauvegadre"​
 +echo "​Executez cette commande :"
 +echo "bash sauvegarde.sh -C -i (l'ip du serveur) -m (repertoire source)"​
 +
 +##################################################################​ MSMTP #################################################################​
 +aptitude install msmtp -y --assume-yes
 +
 +(echo "​account default"​
 +echo "tls on"
 +echo "host smtp.gmail.com"​
 +echo "port 587"
 +echo "from doiteau.romain@gmail.com"​
 +echo "auth on"
 +echo "user doiteau.romain"​
 +echo "​password ********"​
 +echo "​tls_starttls on"
 +echo "​tls_certcheck on"
 +echo "​tls_trust_file /​etc/​ssl/​certs/​ca-certificates.crt"​
 +) > /​root/​.msmtprc
 +
 +##################################################################​ PATH ##################################################################​
 +
 +varPATH=$PATH
 +echo "​export PATH=/​mnt/​sauvegarde/​script:​$varPATH"​ >> /​root/​.bashrc
 +su
 +exit</​code>​
 +
  
 ==ConfNas.txt== ==ConfNas.txt==
 
sauvegarde.1387878326.txt.gz · Dernière modification: 2019/05/11 14:35 (modification externe)     Haut de page