Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1729 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Modification de script backup

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Modification de script backup

n°1039390
hppp
Serveur@home
Posté le 04-05-2008 à 09:29:43  profilanswer
 

Salut a tous
 
J'ai trouvé un script de backup que je veux modifier pour moi:
 
Le voilà:

Code :
  1. #!/bin/bash
  2. #***********************************************************************#
  3. #             BACKUP SUR FTP OVH  par daniel Polli aka Dansteph         #
  4. #             ------------------                                        #
  5. # Ce script a lancer en cron tout les deux ou trois jours backup les    #
  6. # repertoire "/home" "/usr/local/apache/conf/" et "/var/named"          #
  7. # et les envois sur votre espace backup FTP. Editez les paramètres      #
  8. # ci-dessous.                                                           #
  9. #                                                                       #
  10. #***********************************************************************#
  11. #########################################################################
  12. # PARAMETRES A EDITER
  13. #########################################################################
  14. SERVER="XXX.XXX.XXX.X"       #Serveur backup d'OVH
  15. USER="XXX"               #Votre nom d'utilisateur
  16. PASS="XXX"        #Votre password
  17. EMAIL="XXX@XXX.com"          #Pour envoi mail si backup echoue
  18. MAILSIOK="O"        #Mettre "O" si on veut un mail aussi si backup ok
  19. SAVEDIR="/home"    #Backup de /home SANS slash a la fin
  20. SAVEDIR1="/usr/local/apache/conf" #Backup optionnel SANS slash a la fin
  21. SAVEDIR2="/var/named"          #Backup optionnel SANS slash a la fin
  22. #########################################################################
  23. #autres parametre a éditer seulement par confirmé------------------------
  24. FILENAME=`date +"%d"`_backupsite.tar      #nom du fichier "[jour]_backupsite.tar.gz" (.gz est ajouté après)
  25. TEMPDIR="/home/backupsite/"                         #repertoire temporaire de home pour creation tar
  26. EXCLUDEFILE="/home/backupsite/backup_exclude.txt"   #ce fichier doit contenir les rep a exclure du backup
  27. #fin parametres, rien pour vous plus bas---------------------------------
  28. STARTTIME=`date +%s`
  29. #pour traduire les codes d'erreur de ncftpput en texte
  30. declare -a CDERR
  31. CDERR[1]="Could not connect to remote host."
  32. CDERR[2]="Could not connect to remote host - timed out."
  33. CDERR[3]="Transfer failed."
  34. CDERR[4]="Transfer failed - timed out."
  35. CDERR[5]="Directory change failed."
  36. CDERR[6]="Directory change failed - timed out."
  37. CDERR[7]="Malformed URL."
  38. CDERR[8]="Usage error."
  39. CDERR[9]="Error in login configuration file."
  40. CDERR[10]="Library initialization failed."
  41. CDERR[11]="Session initialization failed."
  42. CDERR[142]="Delai depassé pour la connexion."
  43. #envoi des infos sur le log authpriv (le log "secure" sur OVH)
  44. DATE=`date +%H:%M:%S`
  45. logger -p authpriv.info "[$0] -->Debut de backup de $SAVEDIR a $DATE"
  46. echo "[$0] -->Debut de backup de $SAVEDIR a $DATE"
  47. #compression dun ou plusieurs repertoires choisi en parametre
  48. tar cfzX $TEMPDIR$FILENAME.gz $EXCLUDEFILE $SAVEDIR $SAVEDIR1 $SAVEDIR2
  49. RESULT=$?
  50. if [ "$RESULT" != "0" ]; then
  51.         DATE=`date +%H:%M:%S`
  52.         logger -p authpriv.info "[$0] -->ERREUR TAR à $DATE Backup NON effectué."
  53.         echo "[$0] -->ERREUR TAR à $DATE Backup NON effectué."
  54. echo "Erreur TAR le backup FTP sur OVH non effectue" | mail -s 'ERREUR BACKUP FTP OVH' $EMAIL
  55. exit $RESULT
  56. fi
  57. ncftpput -m -u $USER -p $PASS $SERVER "/" $TEMPDIR$FILENAME.gz
  58. RESULT=$?
  59. FILESIZE=`ls -l $TEMPDIR$FILENAME.gz | awk '{print $5}'`
  60. FILESIZE=$(($FILESIZE/1000000))
  61. rm -f $TEMPDIR$FILENAME.gz
  62. if [ "$RESULT" != "0" ]; then
  63. DATE=`date +%H:%M:%S`
  64. logger -p authpriv.info "[$0] -->ERREUR: ${CDERR[$RESULT]} à $DATE Backup NON effectué."
  65. echo "[$0] -->ERREUR: ${CDERR[$RESULT]} à $DATE Backup NON effectué."
  66. echo "[$0] -->ERREUR: ${CDERR[$RESULT]} à $DATE Backup NON effectué." | mail -s 'ERREUR BACKUP FTP OVH' $EMAIL
  67. else
  68. TOTALTIME=$(((`date +%s`-$STARTTIME)/60))
  69. DATE=`date +%H:%M:%S`
  70. logger -p authpriv.info "[$0] -->Fin de backup normal de $SAVEDIR a $DATE. Durée: $TOTALTIME mn. Taille: $FILESIZE Mb"
  71. echo "[$0] -->Fin de backup normal de $SAVEDIR a $DATE.  Durée: $TOTALTIME mn. Taille: $FILESIZE Mb"
  72. if [ "$MAILSIOK" = "O" ]; then
  73.  echo -e "Backup effectué à $DATE Status: OK\nDurée du backup: $TOTALTIME minutes\nFichier: $FILENAME.gz transféré avec une taille de $FILESIZE Mb" | mail -s 'BACKUP FTP OVH OK' $EMAIL
  74.         fi
  75. fi
  76. exit $RESULT


 
ça je peut le virer?

Code :
  1. #envoi des infos sur le log authpriv (le log "secure" sur OVH)
  2. DATE=`date +%H:%M:%S`
  3. logger -p authpriv.info "[$0] -->Debut de backup de $SAVEDIR a $DATE"
  4. echo "[$0] -->Debut de backup de $SAVEDIR a $DATE"


 
et je voulais savoir comment il fait pour récupérer RESULT=$? ? Merci de votre aide.

mood
Publicité
Posté le 04-05-2008 à 09:29:43  profilanswer
 

n°1039466
Mjules
Modérateur
Parle dans le vide
Posté le 04-05-2008 à 18:18:38  profilanswer
 

$? c'est le code de sortie de la commande précédente, i.e. le tar


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°1039493
hppp
Serveur@home
Posté le 04-05-2008 à 21:42:25  profilanswer
 

Mjules a écrit :

$? c'est le code de sortie de la commande précédente, i.e. le tar


Pour tous les programmes c'est même chose? sa renvoie 1 ou 0?

n°1039501
Mjules
Modérateur
Parle dans le vide
Posté le 04-05-2008 à 22:31:56  profilanswer
 

0 quand la commande se termine normalement
n>0 dans les autres cas.


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°1039504
trictrac
Posté le 04-05-2008 à 22:42:33  profilanswer
 

et si je peux me permettre une précision, le code de retour permet parfois de connaitre le type d'erreur.
Un bon exemple est la fin de 'man curl' ou ils decrivent le sens de chaque code.
Comme ca, tu peux adapter le traitement au type d'erreur


Message édité par trictrac le 04-05-2008 à 22:42:58
n°1039538
black_lord
Modérateur
Truth speaks from peacefulness
Posté le 05-05-2008 à 08:53:09  profilanswer
 

Mjules a écrit :

0 quand la commande se termine normalement
n>0 dans les autres cas.

 

Pas nécessairement, même si ce sont ces valeurs par convention...
ce serait plus n != 0 d'ailleurs (je connais pas mal de monde qui mets des return(-1) en erreur)


Message édité par black_lord le 05-05-2008 à 08:53:55

---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Codes et scripts

  Modification de script backup

 

Sujets relatifs
probleme script client OCS INVENTORYScript Partimage restauration automatique
[bash] modification page htmlDebian et exim4 envoi de mail extérieur depuis un script
Un script qui permet de lister tous les fichiersscript création de comptes à partir d'un fichier excel
[script] Date fichierscript avec commande SED
script pour effacer des dossiers de plus de X jours 
Plus de sujets relatifs à : Modification de script backup


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)