Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 03/12/2012, à 20:41

biospip

[RÉSOLU] sauvegarde incrémentale par FTP d'un site SPIP

Bonjour,

biospip a écrit :

Màj du 09/12/2012 : Voici le script que j'utilise (suite à ce fil de forum) pour réaliser des sauvegardes de mon site SPIP :

#! /bin/sh

# 1er backup

lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/tmp/dump /home/user/websites/backups/biotechno_fr/ ; quit" ftp.90plan.ovh.net

# 2eme backup

lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/tmp/saveauto /home/user/websites/backups/biotechno_fr/ ; quit" ftp.90plan.ovh.net

# 3eme backup

lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/IMG /home/user/websites/backups/biotechno_fr/" ftp.90plan.ovh.net

Remplacer user par votre nom d'utilisateur Ubuntu et MonLogin,MonMotDePasse par les identifiant et mot de passe FTP. Ici biotechno_fr correspond au nom du site sauvegardé.

Dans ce cas de figure nous utilisons en plus, sur SPIP, le plugin SaveAuto paramétré pour enregistrer les sauvegardes automatiques de la base de données dans le répertoire /tmp/saveauto/ de l'hébergement.

Notez l'absence d'un «quit» à la fin du 3ème backup. Ceci est uniquement pour pouvoir visualiser le résultat du script avant de refermer la console. Dans le cas de l'utilisation de ce script avec cron, il convient d'ajouter cette  sortie de la commande lftp.

À noter également que lftp n'est pas installé par défaut dans Ubuntu mais qu'un simple

sudo apt-get install lftp

suffit à l'installer.



j'ai le script suivant, qui fonctionne nickel (récupéré je ne sais où sur internet) :

lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/IMG /home/patrice/websites/backups/biotechno_fr/" ftp.90plan.ovh.net

pour récupérer le dossier IMG de mon site SPIP et

lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/tmp/dump /home/patrice/websites/backups/biotechno_fr/" ftp.90plan.ovh.net

pour récupérer les sauvegardes de BDD du même site

J'ai placé ces scripts dans des raccourcis exécutables sur non bureau (dans l'optique de les intégrer au launcher Unity mais je n'y arrive pas) :

#!/usr/bin/env xdg-open

[Desktop Entry]
Version=1.0
Type=Application
Terminal=true
Icon[fr_FR]=gnome-panel-launcher
Name[fr_FR]=Sauvegarde Biotechno IMG
Exec=lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/IMG /home/patrice/websites/backups/biotechno_fr/" ftp.90plan.ovh.net
Name=Sauvegarde Biotechno IMG
Icon=gnome-panel-launcher

Bref, ce que je cherche à faire :

  • enchaîner automatiquement les 2 scripts

  • lancer automatiquement et régulièrement ce nouveau script

  • avec le script précédent je peux récupérer un répertoire entier. Je cherche aussi à récupérer (au sein d'un autre répertoire) tous les fichiers commençant par sauvegarde_auto.... sans récupérer les autres fichiers et sous répertoires.

Si quelqu'un sait comment je peux m'y prendre je suis évidemment preneur,

bien cordialement,

Patrice HARDOUIN

Dernière modification par biospip (Le 09/12/2012, à 15:23)


profil utilisateur Ubuntu-fr : http://doc.ubuntu-fr.org/utilisateurs/biospip

Hors ligne

#2 Le 04/12/2012, à 02:13

Maisondouf

Re : [RÉSOLU] sauvegarde incrémentale par FTP d'un site SPIP

Pour les enchaîner, il suffit de les mettre tous les deux dans un fichier scripte, lequel fichier pourra être lancé automatiquement par 'cron' ou manuellement en créant un lanceur sur le bureau.
Donc création de 'full-backup.sh'

#! /bin/sh
# 1er backup
lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/IMG /home/patrice/websites/backups/biotechno_fr/" ftp.90plan.ovh.net
# 2ème ...
lftp -u MonLogin,MonMotDePasse -e "mirror -en --verbose /www/tmp/dump /home/patrice/websites/backups/biotechno_fr/" ftp.90plan.ovh.net

Ensuite création d'une tâche 'cron' nommée full-backup dans /etc/cron.d.
Fichier '/etc/cron.d/full-backup' a créer avec 'gksudo gedit'. (cf http://doc.ubuntu-fr.org/cron)

 xx xx xx xx xx   root    sh  /chemin/du/scripte/reel/a/lancer/full-backup.sh

Notes que j'ai mis 'root' comme utilisateur qui lance le scripte, regardes avant si ça ne pose pas de problèmes en lançant le scripte manuellement avec 'sudo'.


Et enfin pour le lanceur de bureau, il faut lancer dans un terminal.

gnome-desktop-item-edit --create-new /home/<TonUser>/Desktop

ou

gnome-desktop-item-edit --create-new /home/<TonUser>/Bureau

suivant ta config.


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#3 Le 04/12/2012, à 20:36

biospip

Re : [RÉSOLU] sauvegarde incrémentale par FTP d'un site SPIP

Bonjour,
Merci pour cette réponse (il fallait juste que je rajoute la commande «quit» en fin de ligne lftp pour pouvoir passer à la commande suivante).

et si quelqu'un a un axe de réponse pour le dernier point je suis également preneur :

  • avec le script précédent je peux récupérer un répertoire entier. Je cherche aussi à récupérer (au sein d'un autre répertoire) tous les fichiers commençant par sauvegarde_auto.... sans récupérer les autres fichiers et sous répertoires.

Dernière modification par biospip (Le 06/12/2012, à 13:16)


profil utilisateur Ubuntu-fr : http://doc.ubuntu-fr.org/utilisateurs/biospip

Hors ligne

#4 Le 06/12/2012, à 03:19

Maisondouf

Re : [RÉSOLU] sauvegarde incrémentale par FTP d'un site SPIP

Si tu compliques les choses, va falloir commencer à regarder du coté de 'rsync' en mode backup (-b).
Il accepte toutes sortes de filtres (avec une syntaxe à ch...) et il est très efficace.

Ou alors 'duplicity' qui est installé en standard dans Ubuntu.... Rien que le 'help' fait peur. wink

papounet@amd8papou:~$ duplicity --help
Usage: 
  duplicity [full|incremental] [options] source_dir target_url
  duplicity [restore] [options] source_url target_dir
  duplicity verify [options] source_url target_dir
  duplicity collection-status [options] target_url
  duplicity list-current-files [options] target_url
  duplicity cleanup [options] target_url
  duplicity remove-older-than temps [options] target_url
  duplicity remove-all-but-n-full count [options] target_url
  duplicity remove-all-inc-of-but-n-full count [options] target_url

Backends and their URL formats:
  cf+http://container_name
  file:///some_dir
  ftp://user[:password]@other.host[:port]/some_dir
  ftps://user[:password]@other.host[:port]/some_dir
  hsi://user[:password]@other.host[:port]/some_dir
  imap://user[:password]@other.host[:port]/some_dir
  rsync://user[:password]@other.host[:port]::/module/some_dir
  rsync://user[:password]@other.host[:port]/relative_path
  rsync://user[:password]@other.host[:port]//chemin_absolu
  s3://other.host/bucket_name[/prefix]
  s3+http://bucket_name[/prefix]
  scp://user[:password]@other.host[:port]/some_dir
  ssh://user[:password]@other.host[:port]/some_dir
  tahoe://alias/directory
  webdav://user[:password]@other.host/some_dir
  webdavs://user[:password]@other.host/some_dir
  gdocs://user[:password]@other.host/some_dir

Commands:
  cleanup <target_url>
  collection-status <target_url>
  full <source_dir> <target_url>
  incr <source_dir> <target_url>
  list-current-files <target_url>
  restore <target_url> <source_dir>
  remove-older-than <temps> <target_url>
  remove-all-but-n-full <count> <target_url>
  remove-all-inc-of-but-n-full <count> <target_url>
  verify <target_url> <source_dir>

Options:
  -h, --help            show this help message and exit
  --allow-source-mismatch
  --archive-dir=chemin  
  --asynchronous-upload
  --dry-run             
  --encrypt-key=identifiant_clé_gpg
  --encrypt-secret-keyring=chemin
  --encrypt-sign-key=identifiant_clé_gpg
  --exclude=motif_shell
  --exclude-device-files
  --exclude-filelist=nom_de_fichier
  --exclude-filelist-stdin
  --exclude-globbing-filelist=nom_de_fichier
  --exclude-if-present=nom_de_fichier
  --exclude-other-filesystems
  --exclude-regexp=expression_régulière
  --extra-clean         
  --file-prefix=FILE_PREFIX
  -r chemin, --file-to-restore=chemin
  --force               
  --ftp-passive         
  --ftp-regular         
  --full-if-older-than=temps
  --gio                 
  --gpg-options=options
  --ignore-errors       
  --imap-mailbox=boîte_aux_lettres_IMAP
  --include=motif_shell
  --include-filelist=nom_de_fichier
  --include-filelist-stdin
  --include-globbing-filelist=nom_de_fichier
  --include-regexp=expression_régulière
  --log-fd=descripteur_fichier
  --log-file=nom_de_fichier
  --name=nom_sauvegarde
  --no-encryption       
  --no-compression      
  --no-print-statistics
  --null-separator      
  --num-retries=nombre  
  --numeric-owner       
  --old-filenames       
  --pydevd              
  --rename=RENAME       
  -t temps, --restore-time=temps, --time=temps
  --rsync-options=options
  --s3-european-buckets
  --s3-use-rrs          
  --s3-use-new-style    
  --s3-unencrypted-connection
  --s3-multipart-chunk-size=nombre
  --s3-use-multiprocessing
  --scp-command=SCP_COMMAND
  --sftp-command=SFTP_COMMAND
  --short-filenames     
  --sign-key=identifiant_clé_gpg
  --ssh-askpass         
  --ssh-options=options
  --tempdir=chemin      
  --timeout=secondes    
  --time-separator=caract.
  --use-agent           
  --use-scp             
  -v [0-9], --verbosity=[0-9]
  -V, --version         
  --volsize=nombre      
papounet@amd8papou:~$ 

Mais avec quelques tests, je suis sur qu'il te rendra tous les services que t'as besoin..


ASUS M5A88-v EVO avec AMD FX(tm)-8120 Eight-Core Processor,  OS principal Precise 12.04.1 LTS 63bits½
Bricoleur, menteur, inculte, inadapté social et mythomane, enfin d'après certains....
"the secret of my form is summed up in two words, no sport" (Winston Churchill)

Hors ligne

#5 Le 06/12/2012, à 13:17

biospip

Re : [RÉSOLU] sauvegarde incrémentale par FTP d'un site SPIP

OK merci,

je vais me plonger dans les docs.

bien cordialement


profil utilisateur Ubuntu-fr : http://doc.ubuntu-fr.org/utilisateurs/biospip

Hors ligne