Script backup



  • Bonjour les copains.
    J’ai un petits soucis.
    J’ai réalisé des scripts de backup sur un serveur ftp .
    J’ai mis mes scripts dans le répertoire /etc/cron.daily.
    Le backup se passe bien. Par contre la rotation des sauvegardes ne fonctionne pas.*
    Du coup je me retrouve avec une flopé de .tar.
    J’ai réalisé un script également de sauvegarde en local, et un script de rotation. Le script de backup fonctionne. Mais la rotation ne fonctionne que si je passe en ligne de commande. Si je le met dans le cron la tache ne fonctionne pas.
    Voici mon script de backup sur ftp dont la rotation ne fonctionne pas :

    FTPU="XXXXX"
    FTPP="XXXXX"
    FTPS="192.168.1.12"
    
    NOW=$(date +"%d-%m-%Y")
     
    ### local directory to backup ###
    FILE="/home/libertempo/Backup"
    retention=`date +%d-%B-%Y --date='7 day ago'` 
    lftp -u $FTPU,$FTPP -e "cd LIBERTEMPO;mkdir $NOW;cd $NOW;mirror -R $FILE /LIBERTEMPO/$NOW;quit" $FTPS
    # Rotation des sauvegardes
    lftp ftp://$FTPU:$FTPP@$FTPS -e "rm -rf $retention;quit"
    


  • De souvenir rm -rf n’est pas une commande ftp.
    Mais le plus simple c’est d’avoir les logs.

    Après sache qu’un très bon outil existe tel que backup manager
    https://doc.ubuntu-fr.org/backup-manager



  • :oups: pas trop l’habitude d’utiliser lftp, du coup je ne connaissais pas ses commandes 😜

    Pour moi @Elberton c’est $retention qu’il ne comprend pas

    Je préfère le décortiquer en reprenant tes variables :

    # Format de la date
    format_date='%d-%B-%Y'
     
    # Variable de date du jour, en fonction du format choisi
    date=`date +${format_date}`;
     
    # Le nombre de jour que tu souhaite archiver
    jretention="7";
     
    # Calcul du nombre de jour, remontant à plus de 7 jour(s)
    retention=`date --date "-${jretention} days" +${format_date}`;
    
    lftp ftp://${FTPU}:${FTPP}@${FTPS} -e "rm -rf ${retention} ;ls ; quit";
    

    Pour avoir des logs rajoute

    # Le chemin du rapport
    rapport='/home/cabanelibre/rapport.log';
    
    lftp ftp://${FTPU}:${FTPP}@${FTPS} -e "rm -rf ${retention} ;ls ; quit" >> ${rapport};
    


  • ok ça marche.
    par contre je te dirai sa mardi car je suis sur un autre site et j’ai pas accès à la bécane à distance.



  • Pour tester et faire du debug que ce soit ne perl, python ou bash j’utilise les options adéquat, regarde pour lancer ton script avec du bash -x nom_de_ton_script, si en plus tu mets de jolie echo tout plein tu verra à quelle étape à coup sûr il se plante.
    N’hésite pas non plus à te faire des sorties d’erreur propre avec des conditions.

    De ce côté j’aime bien le perl car il permet d’exporter le résultat assez simplement d’une commande shell dans un log, tu peux ainsi renvoyer l’output de ta commande directement dans ton fichier de log et avoir le déroulé d’un rsync par exemple complet.

    D’ailleurs pourquoi faire du ftp plutot que de t’appuyer sur rsync, tu as une option pour la destruction :

    http://www.noah.org/wiki/Rsync_backup

    Burp : je viens de voir l’autre fil de discussion, oki je comprends pourquoi ftp.

    Du coup beaucoup plus complexe pour les non utilisateurs de python il y a la possibilité d’utiliser la libftp de python pour faire ça.

    Sinon viteuf lftp doit pouvoir répondre à tes besoins en exécutant un scripts via ftp justement :

    Un exemple trouvé sur le net à vérifier :

    https://blog.m0le.net/2012/02/17/le-petit-script-de-backup-de-nono/



  • J’ai réinstallé mon serveur car j’ai fait craché mon apache. Je vais voir si je peux installer urbackup client vu que j’en ai un srv. Mais comme il va être sur une dame je dois testé



  • @elberton a dit dans Script backup :

    il va être sur une dame je dois testé

    Il va être dessus :diable: ?

    Sinon pour du backup j’ai testé Borg et bareos, le premier est vraiment sympa (tout en SSH) le deuxième est déjà bien plus prise de tête à mettre ne place te à configurer, mais tous est scriptable donc …



  • lftp fonctionne nickel pour moi 😏



  • pas une dame, une dmz je voulais dire. C’est le correcteur orthographique du tél…



  • C’est bon pour toi ? @Elberton qu’on mette résolu ou pas ?

    ça me fait penser qu’il va falloir que je fasse les brochures d’explication d’utilisation de ce nouvelle iceberg :oups: