Как использовать команду FTP для передачи файлов в Linux

How to Use Linux FTP Command to Transfer Files

21 Июня 2020 | Терминал

В этом руководстве мы покажем вам, как использовать команду Linux ftp на практических примерах.

Как использовать команду FTP для передачи файлов в Linux

FTP (File Transfer Protocol) - это стандартный сетевой протокол, используемый для передачи файлов в удаленную сеть и из нее.

В большинстве случаев вы будете использовать настольный FTP-клиент для подключения к удаленному серверу и загрузки или загрузки файлов. Однако эта ftp команда полезна, когда вы работаете на сервере без графического интерфейса и хотите передавать файлы по FTP на удаленный сервер или с него.

Прежде чем вы начнете 

FTP-трафик не зашифрован. Для безопасной передачи данных используйте SCP или SFTP .

Чтобы иметь возможность передавать файлы, у вас должны быть как минимум права на чтение исходного файла и права на запись в целевой системе.

При передаче больших файлов рекомендуется запускать команду ftp внутри сеанса экрана или tmux .

Каталог, из которого вы запускаете ftp команду, является локальным рабочим каталогом.

Установление FTP-соединения 

  1. Чтобы открыть FTP-соединение с удаленной системой, вызовите ftp команду, а затем IP-адрес или имя домена удаленного сервера. Например, чтобы подключиться к FTP-серверу по адресу «192.168.42.77», введите:

    ftp 192.168.42.77 
  2. Если соединение установлено, появится сообщение с подтверждением, и вам будет предложено ввести имя пользователя FTP, в этом примере имя пользователя FTP linuxize :

    220---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
    220-You are user number 1 of 50 allowed.
    220-Local time is now 21:35. Server port: 21.
    220-This is a private system - No anonymous login
    220-IPv6 connections are also welcome on this server.
    220 You will be disconnected after 15 minutes of inactivity.
    Name (192.168.42.77:localuser): linuxize 
    You may see a different confirmation message depending on the FTP service running on the remote server.
     
  3. После ввода имени пользователя вам будет предложено ввести пароль:

    Password: 
  4. Если пароль правильный, на удаленном сервере появится сообщение с подтверждением и ftp> приглашение.

    230 OK. Current restricted directory is /
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> 
Если FTP-сервер, к которому вы обращаетесь, принимает анонимные учетные записи FTP, и вы хотите войти в систему как анонимный пользователь, используйте в anonymous качестве имени пользователя и свой адрес электронной почты в качестве пароля.

Общие команды FTP 

Большинство команд FTP аналогичны или идентичны командам, которые вы вводите в командной строке Linux.

Ниже приведены некоторые из наиболее распространенных команд FTP

  • help или ? - перечислить все доступные команды FTP.
  • cd  - изменить каталог на удаленной машине.
  • lcd  изменить каталог на локальной машине.
  • ls  - перечислить имена файлов и каталогов в текущем удаленном каталоге.
  • mkdir  - создать новый каталог в текущем удаленном каталоге.
  • pwd  - распечатать текущий рабочий каталог на удаленном компьютере.
  • delete  - удалить файл в текущем удаленном каталоге.
  • rmdir - удалить каталог в текущем удаленном каталоге.
  • get  - скопировать один файл с удаленного на локальный компьютер.
  • mget  - скопировать несколько файлов с удаленного на локальный компьютер.
  • put  - скопировать один файл с локального на удаленный компьютер.
  • mput  - скопировать один файл с локального на удаленный компьютер.

Загрузка файлов с помощью ftp команды

После входа в систему текущим рабочим каталогом является домашний каталог удаленного пользователя.

При загрузке файлов с помощью ftp команды они будут загружены в каталог, из которого вы ввели ftp команду.

Если вы хотите загрузить файлы в другой локальный каталог, переключитесь на него с помощью lcd команды.

Допустим, мы хотим скачать файлы в ~/ftp_downloads каталог:

lcd ~/ftp_downloads 

Чтобы загрузить один файл с удаленного сервера, используйте get команду. Например, чтобы загрузить файл с именем, backup.zip вы должны использовать следующую команду:

get backup.zip 

Вывод должен выглядеть примерно так:

200 PORT command successful
150-Connecting to port 60609
150 6516.9 kbytes to download
226-File successfully transferred
226 2.356 seconds (measured here), 2.70 Mbytes per second
6673256 bytes received in 2.55 seconds (2.49 Mbytes/s)
 

Чтобы загрузить несколько файлов одновременно, используйте mget команду. Вы можете предоставить список отдельных имен файлов или использовать символы подстановки:

mget backup1.zip backup2.zip 


При загрузке нескольких файлов вам будет предложено подтвердить для каждого файла.

mget backup1.zip? y
200 PORT command successful
150 Connecting to port 52231
226-File successfully transferred
226 0.000 seconds (measured here), 31.51 Kbytes per second
14 bytes received in 0.00058 seconds (23.6 kbytes/s)
mget backup2.zip? y
200 PORT command successful
150-Connecting to port 59179
150 7.2 kbytes to download
226-File successfully transferred
226 0.000 seconds (measured here), 16.68 Mbytes per second
7415 bytes received in 0.011 seconds (661 kbytes/s)
 

После завершения загрузки файлов с удаленного FTP-сервера закройте соединение с помощью команды bye или quit :

quit 
221-Goodbye. You uploaded 0 and downloaded 6544 kbytes.
221 Logout.
 

Загрузка файлов с помощью команды FTP

Чтобы загрузить файл из локального каталога на удаленный FTP-сервер, используйте put команду:

put image.jpg 

Вывод должен выглядеть примерно так:

200 PORT command successful
150 Connecting to port 34583
226-File successfully transferred
226 0.849 seconds (measured here), 111.48 Kbytes per second
96936 bytes sent in 0.421 seconds (225 kbytes/s)
 

Если вы хотите загрузить файл, которого нет в вашем текущем рабочем каталоге, используйте абсолютный путь к файлу.

Чтобы загрузить несколько файлов из локального каталога на удаленный FTP-сервер, выполните mput команду:

mput image1.jpg image2.jpg 
mput image1.jpg? y
200 PORT command successful
150 Connecting to port 41075
226-File successfully transferred
226 1.439 seconds (measured here), 102.89 Kbytes per second
151586 bytes sent in 1.07 seconds (138 kbytes/s)
mput image2.jpg? y
200 PORT command successful
150 Connecting to port 40759
226-File successfully transferred
226 1.727 seconds (measured here), 111.75 Kbytes per second
197565 bytes sent in 1.39 seconds (138 kbytes/s)
 

При загрузке нескольких файлов команда предложит вам подтвердить каждый файл, который вы хотите загрузить.

По завершении загрузки файлов на удаленный FTP-сервер закройте соединение с помощью bye или quit .

Вывод

Из этого руководства вы узнали, как использовать ftp команду для загрузки и выгрузки файлов на удаленный FTP-сервер.


    Комментарии

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Загрузка комментариев...