guigeek Posté(e) le 7 janvier 2008 Partager Posté(e) le 7 janvier 2008 Bonjour a toutes et tous, Je cherche a utiliser le service dl.free.fr pour archive mes sauvegardes. Pour ce faire, je fais via un outil de Backup un Zip protegé de ma sauvegarde incrémentale. Le but du jeu est de déposer ce fichier sur mon syno (/volume1/dlfree/fichiers) et via le cron, Lancer un script qui l'upload sur dl.free.fr, puis supprime le fichier. N'étant pas (encore) un expert sous Linux, j'aurais besoin de l'aide de base d'un linuxien... En effet, j'ai bien formaté la commande à lancer (via wput qui est un bonheur), mais je n'arrive pas à la mettre dans un script. Ce que je voudrais que mon script fasse : ----- cd /volume1/dlfree/fichiers/ wput /r /a /o"\volume1\dlfree\log\dllog.log" * ftp//"XXX@XXX.fr":password@dl.free.fr ------- (c'est con, hein...) Quand je tape les commandes sur la console, ca marche sans problèmes (youpi )... Je le met dans un fichier en ajoutant #!/bin/sh au début, soit ------ #!/bin/sh cd /volume1/dlfree/fichiers/ wput /r /a /o"\volume1\dlfree\log\dllog.log" * ftp//"XXX@XXX.fr":password@dl.free.fr ------ je le rends executable, je le lance, il me réponds : Can't cd to /volume1/dlfree/fichiers/ Je précise que je suis en root, et que tous les répertoires sont en rw et que j'ai essayé de le lancer en le mettant dans /usr/sbin, et aussi sous forme sh <nom du script>... J'ai essayé de passer le répertoire dans la commande wput à la place de l'étoile, mais ca marche pas, car il essaye de faire des CWD sur le ftp, ce que dl.free.fr n'aime pas trop (et un -nd dans la commande n'y change rien...)... Je suis sûr que c'est un truc tout con, mais quand on sait pas.... on cherche 6h tout seul avec internet, puis... Ben on demande... Help !!! Lien vers le commentaire Partager sur d’autres sites More sharing options...
ikeke Posté(e) le 7 janvier 2008 Partager Posté(e) le 7 janvier 2008 ------ #!/bin/sh cd /volume1/dlfree/fichiers/ wput /r /a /o"\volume1\dlfree\log\dllog.log" * ftp//"XXX@XXX.fr":password@dl.free.fr ------ Bonjour, essaie de mettre #!/bin/ash à la place je ne suis pas un pro du codage donc je dis peut etre une betise mais je sais que dans etc/passwd on voit que root utilise ash comme shell, donc peut etre que .... Lien vers le commentaire Partager sur d’autres sites More sharing options...
guigeek Posté(e) le 7 janvier 2008 Auteur Partager Posté(e) le 7 janvier 2008 essaie de mettre #!/bin/ash à la place Merci, je tente ca ce soir, c'est bloqué au taf... Je te tiens au courant Lien vers le commentaire Partager sur d’autres sites More sharing options...
fredlime Posté(e) le 7 janvier 2008 Partager Posté(e) le 7 janvier 2008 Bonjour, Je ne connais pas cette commande ‘wput’, je vais tester de mon coté mais a première vu, tu as mis des anti slash pour le fichier log ?? \volume1\dlfree\log\dllog.log ????? il ne faudrait pas, plutot . /volume1/dlfree/log/dllog.log Regarde. A+ Fred. Lien vers le commentaire Partager sur d’autres sites More sharing options...
guigeek Posté(e) le 7 janvier 2008 Auteur Partager Posté(e) le 7 janvier 2008 Bonjour, Je ne connais pas cette commande 'wput', je vais tester de mon coté mais a première vu, tu as mis des anti slash pour le fichier log ?? Autant pour moi, je l'ai recopié de tete... c'est bien des slash. Pour Wput, l'essaye pas, tu pourra plus t'en passer, c'est une tuerie Lien vers le commentaire Partager sur d’autres sites More sharing options...
fredlime Posté(e) le 7 janvier 2008 Partager Posté(e) le 7 janvier 2008 Re, Alors, j’ai testé et c’est vraiment intéressant ce service, chez free pour des petites sauvegardes perso ! Voici la syntaxe qui fonctionne chez moi. wput –R –o”fichier.log” nom_du_fichier_a_sauvegarder ftp://monmail@free.fr:mot_de_passe@dl.free.fr:21/ avec : -R (en majuscule) pour effacer ce fichier a sauvegardé après un Upload réussi. A utiliser en connaissance de cause, ATTENTION ! CE PARAMETRE EFFACE LES FICHIERS SOURCES ! –o”fichier.log” Pour ecrire un fichier log. ne pas mettre d’espace entre le ‘o’ et le guillemet. nom_du_fichier_a_sauvegarder doit être 1 seul fichier (unique tar ou zip par exemple). Sinon cela ne fonctionne pas avec ce service gratuit de chez FREE. Par contre, sur un autre FTP perso par exemple, vous pouvez vous positionner sur un dossier et mettre « * » pour transférer tous les dossiers et fichiers qui s’y trouvent. monmail@free.fr = doit être votre mail ou un email valide. mot_de_passe = peut importe lequel maxi 20 caractères. C’est juste pour la session ouverte lors de la dépose du fichier. Après quoi, on reçoit un mail avec un lien pour reprendre cette archive ou l’effacer. Très intéressant donc ! A+ Fred. Lien vers le commentaire Partager sur d’autres sites More sharing options...
guigeek Posté(e) le 7 janvier 2008 Auteur Partager Posté(e) le 7 janvier 2008 Re, Alors, j'ai testé et c'est vraiment intéressant ce service, chez free pour des petites sauvegardes perso ! Voici la syntaxe qui fonctionne chez moi. wput –R –o"fichier.log" nom_du_fichier_a_sauvegarder ftp://monmail@free.fr:mot_de_passe@dl.free.fr:21/ avec : -R (en majuscule) pour effacer ce fichier a sauvegardé après un Upload réussi. A utiliser en connaissance de cause, ATTENTION ! CE PARAMETRE EFFACE LES FICHIERS SOURCES ! –o"fichier.log" Pour ecrire un fichier log. ne pas mettre d'espace entre le 'o' et le guillemet. nom_du_fichier_a_sauvegarder doit être 1 seul fichier (unique tar ou zip par exemple). Sinon cela ne fonctionne pas avec ce service gratuit de chez FREE. Par contre, sur un autre FTP perso par exemple, vous pouvez vous positionner sur un dossier et mettre « * » pour transférer tous les dossiers et fichiers qui s'y trouvent. monmail@free.fr = doit être votre mail ou un email valide. mot_de_passe = peut importe lequel maxi 20 caractères. C'est juste pour la session ouverte lors de la dépose du fichier. Après quoi, on reçoit un mail avec un lien pour reprendre cette archive ou l'effacer. Très intéressant donc ! A+ Fred. perso ma ligne de commande complète est : wput -b -R -a/volume1/dlfree/log/dlfree.log * ftp://"login@monmail.fr":password@dl.free.fr avec quelques variantes par rapport a ce que tu proposes : -b : en background, ne s'arrete pas quand on ferme la session. * : traite tous les fichiers séquenciellement (on peut mettre*.zip ou autre) Voili voila... Bon, concernant mon post initial, l'astuce de ikeke ne marche pas... fichier a lancer : nom : send_dlfree ------ #!/bin/ash cd /volume1/dlfree/fichiers/ wput -b -R -a/volume1/dlfree/log/dlfree.log * ftp://"XXX@YYY.fr":ZZZZ@dl.free.fr ------- Je le lance avec : sh send_dlfree réponse : sh send_dlfree : not found: send_dlfree: 2: send_dlfree: cd: 3: can't cd to /volume1/dlfree/fichiers/ : not found: send_dlfree: 4: Resuming in background. et il télécharge les fichiers dans le fichier où je suis... Je rappelle que mon but est de scheduler ça via le cron... Help again... une fois le point résolu, promis, je fais un tuto propre Lien vers le commentaire Partager sur d’autres sites More sharing options...
fredlime Posté(e) le 7 janvier 2008 Partager Posté(e) le 7 janvier 2008 Bonsoir, Je n’ai pas le temps de voire ce soir, demain certainement. Mais je verrai plusieurs problèmes possibles sur ta ligne de commande. Le fait de lancer plusieurs sauvegardes de fichiers en mode ‘batch’ risque de bloquer le service de FREE, qui a mon avis limite le nombre de requête simultané. Ton SYNO également peut avoir un problème de ressource. Si tu as des fichiers qui comporte des espaces, j’imagine facilement que la commande ‘wput’ interprète ces fichiers comme plusieurs fichiers, et plante la commande. Mais là, il faut aussi tester. Je n’ai pas mis de guillemet entre mon email perso et j’ai terminé ma commande avec un slash a la fin. Voila, a la différence de toi, j’ai testé cette après midi une sauvegarde a une heure fixe (crontab) en fessant une archive ‘tar’ de mon site perso, puis j’ai sauvegardé cette archive chez FREE avec ‘wput’. Et c’est nickel. A+ Fred. Lien vers le commentaire Partager sur d’autres sites More sharing options...
guigeek Posté(e) le 8 janvier 2008 Auteur Partager Posté(e) le 8 janvier 2008 Salut Fred, J'ai fait plus de test hier soir et j'ai réussi a faire ce que je veux (voir début de ce post). Je posterai un Tuto dès que je trouve un peu de temps. Le fait de lancer plusieurs sauvegardes de fichiers en mode 'batch' risque de bloquer le service de FREE, qui a mon avis limite le nombre de requête simultané. Non, les fichiers sont traités les uns après des autres. Je traite en ce moment même 81 fichiers de 750Mo, et toutes les 3 heures, je recois mon mail de confirmation Plus que 10 jours ... Si tu as des fichiers qui comporte des espaces, j'imagine facilement que la commande 'wput' interprète ces fichiers comme plusieurs fichiers, et plante la commande. Mais là, il faut aussi tester. Je n'ai pas mis de guillemet entre mon email perso et j'ai terminé ma commande avec un slash a la fin. Je te confirme qu'avec des espaces, il aime pas. Donc soit il faut vaire une routine qui remplace les espace par des underscore, soit faut pas en mettre Voila, a la différence de toi, j'ai testé cette après midi une sauvegarde a une heure fixe (crontab) en fessant une archive 'tar' de mon site perso, puis j'ai sauvegardé cette archive chez FREE avec 'wput'. je l'ai aussi mise dans la crontab, sans la fesser (c'est du pénal). A bientot pour le tuto Cheers Et c'est nickel. Lien vers le commentaire Partager sur d’autres sites More sharing options...
dolkin Posté(e) le 30 avril 2008 Partager Posté(e) le 30 avril 2008 bonjour a tous !! J'essaye la commande suivante : wput -N * ftp://login:password@serveur/repertoire/ hors le -N me provoque un segmentation fault. Connaissez vous ce PB ? Si je ne met pas le -N ça fonctionne, mais je ne veux pas retransferer a chaque fois tout le contenu, mais seulement, les modificiations.. Merci d'avance. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.