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

12 set 2022 4 min di lettura
Как использовать команду FTP для передачи файлов в Linux
Indice dei contenuti

Введение

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

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

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

Предпосылки

При передаче данных по ftp соединение не шифруется. Для безопасной передачи данных используйте SCP.

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

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

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

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

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

ftp 192.168.43.55

Если соединение установлено, появится подтверждающее сообщение и будет предложено ввести имя пользователя FTP, в этом примере имя пользователя FTP — noviello:

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.43.55:localuser): noviello

В зависимости от службы FTP, запущенной на удаленном сервере, может появиться другое подтверждающее сообщение.

После того, как вы введете свое имя пользователя, вам будет предложено ввести пароль:

Password:

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

230 OK. Current restricted directory is /Remote system type is UNIX.
 Using binary mode to transfer files.
 ftp>

Если FTP-сервер, на который вы входите, принимает анонимные учетные записи ftp и вы хотите войти в систему как анонимный пользователь, используйте anonymous в качестве имени пользователя и свой адрес электронной почты в качестве пароля.

Загрузка файлов командой 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 аналогичны или идентичны командам, которые вы вводите в командной строке Linux.

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

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

Вывод

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

Buy me a coffeeBuy me a coffee

Supportaci se ti piacciono i nostri contenuti. Grazie.

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.