Anciennes révisionsLiens de retourExporter en PDFHaut de page Share via Share via... Twitter LinkedIn Facebook Pinterest Telegram WhatsApp Yammer RedditDerniers changementsSend via e-MailImprimerPermalien × .netrc source: http://www.gninneh.dk/2007/04/25/using-ftp-in-terminal-without-entering-password/ The ftp-client looks for a file called .netrc with information about the server to be logged in to. Say, you normally type ftp ftp.yourdomain.com, then you just enter the following in a text file which you save to the name .netrc in ~. gedit ~/.netrc machine ftp.yourdomain.com login your_user_name password your_password Rsync du pauvre avec lftp lftp cp ~/.netrc.akademia ~/.netrc lftp -e "open radeff.red;mirror -R /home/radeff/soft/joomla/patches/1.5/last /web/cms/joomla;exit" source: http://forum.ubuntu-fr.org/viewtopic.php?id=103208 user@computer$ lftp -e “open ftpperso.free.fr ; user ton.login.à.free.fr ; mirror -n -R ton_dossier_local ton_dossier_distant ; bye” Ou encore, pour mettre à jours certains dossiers précis : user@computer$ lftp -e “open ftpperso.free.fr ; user ton.login.à.free.fr ; mirror -n -R ton_dossier_local1 ton_dossier_distant1 ; mirror -n -R ton_dossier_local2 ton_dossier_distant2 ; bye” Bref, c'est assez simple, et sympa à mettre dans un cron ou un truc du genre. Par ailleurs, si ça devient un peu long, lftp peut utiliser des fichiers de script plutôt que de passer par l'option -e Note Fred: d'abord configurer son (l)ftp pour avoir un accès sans mot de passe (voir supra), puis faire un script comme celui-ci lftp “radeff.red” -e “mirror -n -R /home/radeff/akademia/path /web/path” puis mettre un bouton gnome pour l'exécuter d'un simple clic et c'est OK Script bash Encore une autre solution, un script sh source: #!/bin/sh Server=www.truc.ch Username=sys_truc Password=bidule ftp -n $Server <<End-Of-Session user $Username $Password binary bell dir pwd cd test pwd dir Mirroring FTP Source http://wiki.monserveurperso.com/wakka.php?wiki=MirroringFTP Mirroring par FTP Souhaitant faire une copie de sauvegarde d'un de mes comptes ftp, j'ai regardé quel type de solution pouvait être mis en place. Dans le cas présent, je me suis intéresse à wget (aspirateur aux nombreuses options) et à lftp (client ftp puissant). Façon wget On vérifie tout d'abord que wget est disponible : linuxbox# wget Si non alors on procéde à son installation… linuxbox# apt-get install wget Ceci étant, pour me connecter au ftp je vais taper la commande suivante : linuxbox# wget –mirror ftp://user:pass@IP_ou_Nomdusite/public_html/* l'option –mirror est un équivalent de l'activation des options suivantes : -r -N -l inf –no-remove-listing. Une autre solution est possible en utilisant l'option –recursive de wget : wget –recursive ftp://user:pass@IP_ou_Nomdusite/public_html/* Ceci étant, il est envisageable d'utiliser une telle commande pour programmer des mise à jours régulière en cron. Façon lftp lftp A présent, si l'on souhaite faire la même chose avec un client ftp comme lftp, rien de plus simple, lui aussi propose une option mirror. On vérifie si lftp est installé. linuxbox# lftp Si non on fait un apt-get… linuxbox# apt-get install lftp Pour établir une connexion : linuxbox# lftp IP_ou_Nomdusite En sortie nous avons ceci : lftp IP_ou_Nomdusite:~> lftp IP_ou_Nomdusite:~> USER toto On rentre le mot de passe du compte : Mot de passe: Pour voir le contenu du site : lftp IP_ou_Nomdusite:~> ls Voici un exemple de ce que vous devriez obtenir : drwxr-xr-x 4096 Jun 15 03:10 . drwxr-xr-x 4096 Jun 15 03:10 .. drwxr-xr-x 4096 Jun 15 03:26 public_html Si vous souhaitez exécuter une commande en local on rajoute ! devant la commande, dans le cas présent, je liste le contenu du répertoire courant : lftp IP_ou_Nomdusite:~> !ls Si je souhaite faire un mirroir du répertoire public_html, il suffit de taper la commande suivante : lftp IP_ou_Nomdusite:~> mirror public_html/ Dans le cas présent, le répertoire courant local contiendra mon mirroir. Sinon je peux définir l'endroit où il sera stocker comme ceci lftp IP_ou_Nomdusite:~> mirror public_html/ /home/toto/copie_ftp/ NOTE : pour avoir un complément d'information concernant la commande MIRROR, vous pouvez obtenir l'aide : lftp IP_ou_Nomdusite:~> help mirror Si vous souhaitez pouvoir sauvegarder les fichiers cachés commençant par un point, vous pouvez définir ceci : set ftp:list-options -a soit directement comme ceci : lftp IP_ou_Nomdusite:~> set ftp:list-options -a Soit en éditant le fichier de configuration /etc/lftp.conf et en ajoutant la ligne : set ftp:list-options -a Ceci permettant de lister les fichiers cachés et donc de les inclures dans le mirroir. Si vous avez déjà une copie de votre mirroir localement, vous pouvez souhaiter récupérer les nouveaux fichiers. Option : -n : –only-newer Miroir inversé Si vous souhaitez faire une miroir inversé c'est-à-dire envoyer les fichiers qui se trouve en local vers le site distant, vous utiliserez l'option -R (–reverse) : lftp IP_ou_Nomdusite:~> mirror -R /home/toto/copie_ftp/ public_html/ Tout comme pour wget, nous pouvons parfaitement envisager l'utilisation d'un script qui permettra d'automatiser la mise à jour du miroir. Voir aussi: http://tutorials.papamike.ca/pub/lftp.html#scheduling ncftp ncftp - A user-friendly and well-featured FTP client sudo apt-get ncftp … je l'ai pas encore testé … Cela à l'air très bien … si on ne dispose pas d'accès ssh et si on ne veut pas utiliser curlftp. info/ftp_without_password_prompt.txt Dernière modification : 2018/07/18 09:45de radeff S'identifier