Curl зависает при загрузке с ftp

Я пытаюсь загрузить файл с ftp-сервера с помощью curl :

 curl --user kshitiz:pAssword ftp://@11.111.11.11/myfile.txt -o /tmp/myfile.txt -v 

curl подключается к серверу и зависает:

 * Hostname was NOT found in DNS cache * Trying 11.111.11.11... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Connected to 11.111.11.11 (11.111.11.11) port 21 (#0) < 220-You Are Attempting To Access a Private < 220-Network. Unauthorized Access is Strictly < 220-Forbidden. Violators Will be Prosecuted! < 220-- Management < 220 This is a private system - No anonymous login > USER kshitiz < 331 User kshitiz OK. Password required > PASS pAssword < 230-OK. Current directory is / < 230 4432718 Kbytes used (54%) - authorized: 8192000 Kb > PWD < 257 "/" is your current location * Entry path is '/' 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0> EPSV * Connect data stream passively * ftp_perform ends with SECONDARY: 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:02 --:--:-- 0< 229 Extended Passive mode OK (|||10653|) * Hostname was NOT found in DNS cache * Trying 11.111.11.11... * Connecting to 11.111.11.11 (11.111.11.11) port 10653 0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0* Connected to 11.111.11.11 (11.111.11.11) port 21 (#0) > TYPE A 0 0 0 0 0 0 0 0 --:--:-- 0:04:02 --:--:-- 0^C 

Однако соединение с ftp и извлечение файла:

 Status: Connecting to 11.1.1.11:21... Status: Connection established, waiting for welcome message... Response: 220-You Are Attempting To Access a Private Response: 220-Network. Unauthorized Access is Strictly Response: 220-Forbidden. Violators Will be Prosecuted! Response: 220-- Management Response: 220 This is a private system - No anonymous login Command: USER kshitiz Response: 331 User kshitiz OK. Password required Command: PASS ****** Response: 230-OK. Current directory is / Response: 230 4432718 Kbytes used (54%) - authorized: 8192000 Kb Status: Server does not support non-ASCII characters. Status: Connected Status: Starting download of /myfile.txt Command: CWD / Response: 250 OK. Current directory is / Command: PWD Response: 257 "/" is your current location Command: TYPE I Response: 200 TYPE is now 8-bit binary Command: PASV Response: 227 Entering Passive Mode (10,9,4,66,39,139) Command: RETR myfile.txt Response: 150 Accepted data connection Response: 226-File successfully transferred Response: 226 0.000 seconds (measured here), 3.39 Kbytes per second Status: File transfer successful, transferred 1 B in 1 second 

В чем заключена команда TYPE A ? Почему не работает завиток, когда ftp делает?

  • Включить предыдущую циклическую команду в командной строке ftp
  • vsftpd закрывает соединение с кодом 421 при перечислении содержимого каталога
  • Почему SCP зависает при копировании файлов размером более 1405 байтов?
  • Есть ли альтернатива FileZilla Server (GUI-based) в Linux?
  • Почему я не могу передать файл через wget (FTP) с помощью функции exec () в PHP?
  • php: компиляция с openssl, ftp, ldap, поддержка curl в debian gnu / linux
  • vsftpd - ftp пользователь не может создавать папки
  • наводнения pure-ftpd / var / log / messages
  • 3 Solutions collect form web for “Curl зависает при загрузке с ftp”

    Добавление --disable-epsv переключателя --disable-epsv проблему.

    Небольшое объяснение:

    Я просто прошел через много часов, пытаясь разобраться в чужих проблемах с FTP. Способ представления проблемы заключался в том, что после входа в систему, когда клиент FTP попытался указать список каталогов (или любую другую команду), он просто зависает. EPSV является «расширенным пассивным режимом» и является более новым расширением исторического пассивного режима FTP (PASV) … последние FTP-клиенты сначала пытаются выполнить EPSV, а затем использовать только традиционный PASV, если он терпит неудачу. … если брандмауэр блокирует EPSV, клиент будет считать, что команда успешна [ и продолжает ждать ответа ].

    Подробнее читайте здесь .

    Пример документа «здесь» после создания ~ / .netrc с коннекторами / пользователями / паролями.

      #!/bin/bash ftp 11.1.1.11 << eof ascii get /tmp/myfile.txt bye eof 

    Питти, вы не можете использовать lftp, это отличный клиент, и я не вижу разницы в безопасности между вашими паролями в ~ / .netrc или наличием их в скрипте, если вы дадите ему правильные разрешения.

    Проблема заключается в том, что ftp-сервер работает на IP-адресе 11.111.11.11.

    Это вечно вечно …

    ftp 11.111.11.11

    Сначала получите ваш ftp-сервер, работающий с простым ftp-клиентом.

    Вероятно, это также исправит вашу команду curl.

    Linux и Unix - лучшая ОС в мире.