Journal ncftp

Posté par  .
Étiquettes : aucune
0
15
avr.
2003
Jusqu'à hier soir j'étais vraiment fan de ncftp, en particulier avec l'option -R sur get et put qui permet de rapatrier facilement toute une arborescence entre mes deux machines.
Or je me suis apercu hier en voulant faire une sauvegarde par ftp sur un répertoire avec plein de petits sous-répertoires imbriqués que le get -R ne va pas chercher plus loin que le 2ème sous-répertoire!
Résultat j'ai du ressortir gftp (donc graphique) pour faire le téléchargement.
Après différents tests, je ne crois pas que ce soit un bug de la version que j'utilise parceque ca fait la même chose sur différentes distribs que j'ai pu tester, mais j'ai trouvé aucune explication dans les docs que j'ai trouvé...
Est-ce que je suis le seul à avoir ce problème (ou que ca dérange...)?
Est-ce que c'est une limitation extérieure à ncftp (je pense pas vu que le d/l s'est bien passé avec gftp, mais bon...)
Sinon qu'est-ce que vous me conseilleriez comme client ftp en ligne de commande qui supporte le d/l récursif?
  • # Re: ncftp

    Posté par  (site web personnel) . Évalué à 6.

    wget ?

    Si c'est que pour du d/l parce que comme son nom l'indique, c wGET et il n'y a pas wput... dommage d'ailleurs.
    Par ailleurs, tant qu on y est si quelqu'un connait un outil genre wget qui gere le SCP avec la possibilité de reprendre un telechargement interrompu ca m'interesserait. De meme si il existe une sorte de wput pour le FTP/SCP ce serait bien utile !
  • # Re: ncftp

    Posté par  (site web personnel) . Évalué à 4.

    le get -R ne va pas chercher plus loin que le 2ème sous-répertoire!

    Ce n'est pas reproductible chez moi. J'utilise ncFtp 3.1.5 (slack 8.1 et 9.0) et je rapatrie au moins jusqu'au niveau 4. Par exemple, j'ai repompe la slack 9.0 en faisant un "get -r slackware-9.0" sur mon miroir coreen et j'ai bien des choses comme:

    slackware-9.0/source/a/bash/patches/bash205b-004.gz

    J'ajoute que pour moi, ca marche aussi bien sur Internet qu'en reseau local.

    Après différents tests, je ne crois pas que ce soit un bug de la version que j'utilise parceque ca fait la même chose sur différentes distribs que j'ai pu tester

    Peut-etre, mais c'est quelle version, quelles distribs ? C'est ca qui est important si tu veux de l'aide. Enfin, c'est pas forcement un probleme du soft:

    man ncftp|grep -A 2 -B 2 "get -R"

    /me retourne a ses manips
    • [^] # Re: ncftp

      Posté par  . Évalué à 1.

      t'as fais un script ?
      • [^] # Re: ncftp

        Posté par  (site web personnel) . Évalué à 1.

        Je ne suis pas sur de bien comprendre a quoi se rapporte ta question. Le seul script que je vois dans ce contexte, c'est celui que j'utilise pour mettre a jour mon slackware-current local:

        ngc891@darkstar:~/tmp$ cat > ftpslack <<"EOF"
        >open ftp.linux.sarang.net
        >binary
        >cd mirror/os/linux/distribution/slackware
        >get -r slackware-current
        >close
        >quit
        >EOF
        ngc891@darkstar:~/tmp$ cat > getslack <<"EOF"
        >#!/bin/bash
        >cat ftpslack|ncftp
        >EOF
        ngc891@darkstar:~/tmp$ chmod +x getslack
        ngc891@darkstar:~/tmp$ getslack

        Il y a surement un moyen pour tout mettre dans un seul fichier mais j'ai jamais pris le temps de chercher. Je suis un dilettante de l'info.

        A noter que passer par un script n'est pas tout a fait equivalent. Le "get -r" fonctionne pareil mais il n'y a plus de prompt. C'est donc plus rapide mais il faut se mefier. Il n'ecrase que ce qui est modifie. C'est comme un rsync a part qu'il n'efface pas en local ce qui n'existe plus sur le serveur.
        Bref, ce script est un truc pour gros faineant qui ne veut pas se retaper les commandes a chaques fois.

        Ca repond a ta question ?

        PS: le script n'est pas un copie-colle car je ne suis pas sur ma becane (et pas sur linux): il y a peut-etre des bourdes ici ou la.
    • [^] # Re: ncftp

      Posté par  . Évalué à 1.

      Moi aussi c'est ncftp 3.1.5, mais sous Debian unstable (et testing, c'est le même). Les tests que j'ai faits se passaient tous sur le réseau local. man ncftp|grep -A 2 -B 2 "get -R" J'avais vu ca effectivement, c'est ca qui me faisait me demander si c'était un problème avec mon serveur (pure-ftp), mais comme ca marche avec gftp je pensais que c'était bon de ce côté-là.
  • # Re: ncftp

    Posté par  . Évalué à 1.

    J'ai découvert ncftp très récemment, et je le trouve très bien aussi.
    Cependant, je l'utilise actuellement derriere un proxy, et j'arrive bien à faire du put et du get, mais un 'ls' ne passe pas. J'ai essayé les modes passive on et off, mais cela ne change rien. Quelqu'un peut-il m'expliquer où je me gourre ?
  • # Re: ncftp

    Posté par  (site web personnel) . Évalué à 1.

    ce que j'aime dans ncftp, c'est sa superbe gestion du ^C. Genre tu timeout sur un ftp, tu veux coupé violement avec ^C, il te demande de bookmark et ensuite il tente de quitter le ftp proprement, donc ca freeze, ^C? il redemande de bookmark... Ce truc j'ai jamais pu le digérer :) Maintenant j'utilise yafc, comme ça je fais aussi du sftp tranquilement =)
    • [^] # Re: ncftp

      Posté par  (site web personnel) . Évalué à 1.

      [...] tu veux coupé violement [...]

      bon, deja tu cherches :-)

      il te demande de bookmark [...] il redemande de bookmark

      Par defaut, ncFtp te demande si tu souhaites bookmarker le site que tu as visite a chaque fois que tu clotures une session.

      Ca n'a donc rien a voir avec le ^C

      Si ce comportement ne te convient pas tu changes le parametre en question dans ncFtp (desole, je ne l'ai plus en tete) et tu utilises les fonctions bookmark et bookmarks.

      Ce truc j'ai jamais pu le digérer :)

      C'etait surement un bookmark pas frais (un 404). Tiens, d'ailleurs signet c'est plus joli comme mot, il est un peu passe a l'as celui-la.
      • [^] # Re: ncftp

        Posté par  (site web personnel) . Évalué à 1.

        pourquoi est-ce que le fait d'avoir à mettre en signet le site m'empecherait de sortir de ncftp? c'est plutôt ça mon probleme... Car le fait de sauver là ou je vais j'aime bien, mais j'aime bien arrrivé à sortir du programme sans avoir à faire un kill -9 dans la fenetre d'à coté
  • # Re: ncftp

    Posté par  . Évalué à -3.

    faut utiliser lftp qui met un peu la misere an ncftp en termes de fonctionnalités .

    "mirror ." pour un get recursif
    "mirror -R " pour un pu recursif ( un des seul outils a ma connaissance qui sait le faire )

    de plus mirror , c est intelligent , il downloade pas les fichiers deja telechargés et resume ceux qui sont pas finis .( c est pas rsync mais pour du ftp ya pas mieux )
    • [^] # Re: ncftp

      Posté par  . Évalué à 1.

      Ah très bien. Il me semblait aussi que lftp supportait ce genre de chose, mais il était tard et j'ai bètement essayé get -R et ca marchait pas (forcément...) et j'ai laissé tomber. Par contre en ce qui concerne le mirror intelligent j'ai eu quelques problèmes avec ce genre de choses avec LeechFTP sous Windows pour d/l depuis ma machine linux un gros répertoire de 120 sous-répertoires avec dans 50 d'entre eux 1 fichier qui avait changé. Naïvement j'ai tenté de d/l tout le répertoire, et ben il a fait semblant et au final les fichiers distants différents avaient pas mis à jour les fichiers locaux. Par contre en le faisant sous-répertoire par sous-répertoire ca fonctionnait (en tout cas la plupart du temps). J'ai l'impression que ca foirait parcequ'il se basait uniquement sur la taille des répertoires ou des fichiers pour déterminer ce qui avait changé. Est-ce que lftp le fait plus subtilement? Est-ce que t'as déja eu des problèmes de ce style avec lftp?
  • # Re: ncftp

    Posté par  (site web personnel) . Évalué à 3.

    Utilises lftp (aussi en ligne de commandes):

    http://lftp.yar.ru/(...)

    Il est beaucoup plus riche en fonctionalités (RTFM ie le man qui est monstrueux) et plus libre en plus... (lftp est GPL contrairement à ncftp est issu d'un projet commercial)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.