FTP-подключение Linux

Обновлено: 02.07.2024

Протокол передачи файлов (FTP) — это сетевой протокол, используемый для передачи файлов между клиентом и сервером в компьютерной сети. Самые первые FTP-приложения были созданы для командной строки еще до того, как появились операционные системы с графическим интерфейсом, и хотя существует несколько FTP-клиентов с графическим интерфейсом, разработчики все еще создают FTP-клиенты на основе CLI для пользователей, предпочитающих использовать старый метод.

Вот список лучших FTP-клиентов на основе командной строки для Linux.

1. FTP

Операционные системы Linux поставляются со встроенными FTP-клиентами, доступ к которым можно легко получить, введя команду ftp в терминале.

С помощью FTP вы можете подключаться к серверам анонимно (если эта функция включена на сервере) или с использованием ваших учетных данных пользователя, загружать/загружать файлы между вашим локальным компьютером и подключенными серверами, использовать псевдонимы и т. д.

Кроме того, при использовании FTP для передачи файлов между компьютерами соединение не является безопасным и данные не шифруются. Для безопасной передачи данных используйте sFTP (протокол безопасной передачи файлов) или SCP (безопасное копирование).

Проверить FTP-соединение

2. LFTP

LFTP – это бесплатная утилита командной строки с открытым исходным кодом, предназначенная для нескольких протоколов передачи файлов (например, sftp, fish, torrent) в Unix и подобных операционных системах.

Он включает в себя закладки, управление заданиями, поддержку библиотеки readline, встроенную команду зеркалирования и поддержку параллельной передачи нескольких файлов.

lftp доступен для установки из репозиториев по умолчанию с помощью диспетчера пакетов, как показано.

3. NcFTP

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

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

NcFTP доступен для установки из репозиториев по умолчанию с помощью диспетчера пакетов, как показано.

4. cbftp

ctftp — это гибкий FTP/FXP-клиент, который позволяет пользователям безопасно и эффективно передавать большие файлы без использования электронной почты. Обычно он работает в командной строке, но вы можете запустить его в полуграфическом интерфейсе с помощью ncurses.

Его функции включают в себя внутреннюю программу просмотра, которая поддерживает несколько кодировок, пропуск списка, удаленные команды для команд вызова UDP, таких как гонка, загрузка, fxp, raw, idle и т. д., а также шифрование данных с помощью AES-256 и другие.

5. ЯФК

Yafc – это FTP-клиент с открытым исходным кодом, разработанный в качестве замены стандартной программы FTP в системах Linux с поддержкой POSIX-совместимых систем.

Это совершенно бесплатное приложение с богатым списком функций, включающим рекурсивные функции get/put/fxp/ls/rm, создание очередей, завершение табуляции, псевдонимы и поддержку SSH2 и прокси.

Yafc можно установить из репозиториев по умолчанию с помощью диспетчера пакетов, как показано.

Есть ли у вас опыт работы с этими FTP-клиентами с командной строкой? Или вы знаете альтернативы, которые должны быть в этом списке? Не стесняйтесь оставлять свои комментарии ниже.

Если вам понравилась эта статья, подпишитесь на уведомления по электронной почте о руководствах по Linux. Если у вас есть вопросы или сомнения? обратитесь за помощью в разделе комментариев.

Если вы цените то, что мы делаем здесь, в TecMint, вам следует подумать о следующем:

TecMint – это самый быстрорастущий и пользующийся наибольшим доверием сайт сообщества, где можно найти любые статьи, руководства и книги по Linux в Интернете. Миллионы людей посещают TecMint! для поиска или просмотра тысяч опубликованных статей, доступных всем БЕСПЛАТНО.

Если вам нравится то, что вы читаете, купите нам кофе (или 2) в знак признательности.

Команда ftp запускает классический клиент передачи файлов из командной строки, FTP. Это интерактивный текстовый пользовательский интерфейс для использования стандартного протокола передачи файлов ARPANET. Он может передавать файлы в удаленную сеть и из нее.

На этой странице описывается версия ftp, предоставляемая системой управления пакетами в большинстве операционных систем GNU/Linux.

Синтаксис

Параметры

В командной строке можно указать хост-клиент и необязательный номер порта, с которым должен взаимодействовать ftp. Если это сделано, ftp немедленно попытается установить соединение с FTP-сервером на этом хосте; в противном случае ftp входит в интерпретатор команд и ожидает инструкций от пользователя. Когда ftp ожидает команды от пользователя, пользователю предоставляется подсказка «ftp>». Следующие команды распознаются ftp:

Аргументы команды, содержащие пробелы, могут быть заключены в кавычки ("").

Прерывание передачи файла

Чтобы прервать передачу файла, используйте клавишу прерывания терминала (обычно Ctrl-C). Отправка переводов немедленно прекращается.Получение передачи останавливается путем отправки команды протокола ftp ABOR на удаленный сервер и отбрасывания любых полученных данных. Скорость, с которой это достигается, зависит от поддержки удаленным сервером обработки ABOR. Если удаленный сервер не поддерживает команду ABOR, запрос «ftp>» не появится, пока удаленный сервер не завершит отправку запрошенного файла.

Последовательность клавиш прерывания терминала игнорируется, когда ftp завершил любую локальную обработку и ожидает ответа от удаленного сервера. Длительная задержка в этом режиме может быть вызвана описанной выше обработкой ABOR или непредвиденным поведением удаленного сервера, включая нарушения протокола ftp. Если задержка вызвана непредвиденным поведением удаленного сервера, локальную программу ftp необходимо закрыть вручную.

Соглашения об именах файлов

Файлы, указанные в качестве аргументов ftp-команд, обрабатываются по следующим правилам:

<р>1. Если указано имя файла «-», используется стандартный ввод (для чтения) или стандартный вывод (для записи).

<р>2. Если первым символом имени файла является «|», оставшаяся часть аргумента интерпретируется как команда оболочки. Затем ftp разветвляет оболочку, используя popen с предоставленным аргументом, и читает (записывает) из стандартного вывода (stdin). Если команда оболочки включает пробелы, аргумент должен быть заключен в кавычки; (например, "" ls -lt""). Особенно полезным примером этого механизма является "dir more".

<р>3. Если указанные выше проверки не пройдены, если включена функция "подстановки", локальные имена файлов расширяются в соответствии с правилами, используемыми в csh; ср. команда глобус. Если команда ftp ожидает один локальный файл (например, put), используется только первое имя файла, сгенерированное операцией "подстановки".

<р>4. Для команд mget и get с неуказанными именами локальных файлов локальным именем файла является имя удаленного файла, которое может быть изменено параметром case, ntrans или nmap. Результирующее имя файла может быть изменено, если runique включен.

<р>5. Для команд mput и put с неуказанными именами удаленных файлов имя удаленного файла является именем локального файла, которое может быть изменено параметром ntrans или nmap. Полученное имя файла может быть изменено удаленным сервером, если включена функция sunique.

Параметры передачи файлов

Спецификация FTP определяет множество параметров, которые могут повлиять на передачу файлов. Тип может быть одним из «ascii», «изображение» (двоичный), «ebcdic» и «локальный размер в байтах» (в основном для PDP-10 и PDP-20). ftp поддерживает типы передачи файлов ascii и image, а также локальный размер байта 8 для передачи в режиме tenex.

ftp поддерживает только значения по умолчанию для остальных параметров передачи файлов: режима, формы и структуры.

Окружающая среда

Команда ftp использует следующие переменные среды:

Примеры

Если ваше имя пользователя и пароль действительны и введены правильно, вы успешно вошли в систему:

После приглашения ftp> вы попадаете в каталог по умолчанию для пользователя, которого вы использовали для входа в систему. Первое, что вы, вероятно, захотите сделать, это посмотреть, что это за каталог. Чтобы увидеть текущий рабочий каталог, используйте команду pwd, как в Linux:

Число 257 — это числовой код. Все FTP-сообщения имеют связанный с ними кодовый номер, и по техническим причинам они включаются в сообщения с сервера. Сервер сообщает вам, что вы находитесь в каталоге /ftpdefaultdir. Посмотрим, какие там файлы, с помощью команды ls:

Это создает список файлов, как в Linux. Вы можете изменить удаленные каталоги с помощью cd. Если вы хотите изменить каталог, который вы используете на локальном компьютере, вы можете использовать lcd для «локального каталога изменения». Допустим, вы хотите получить файл с именем awesome.jpg с сервера и загрузить его в локальный каталог /home/myuser/images:

Ой! Это не совсем так. Изображения JPEG представляют собой двоичные файлы, а не файлы ASCII (текстовые).

FTP поддерживает два разных типа передачи файлов: ASCII и двоичный. При входе в систему сервер сообщил нам, что в настоящее время он находится в режиме ASCII. Давайте изменим это на двоичный:

bin — это сокращение от двоичного, и любая из этих команд переключается в двоичный режим. Теперь мы можем выполнить ту же передачу файлов, и файл проходит правильно.

Перейдем к удаленному каталогу all-images.

У этого каталога было сообщение "README", которое отображается FTP-сервером каждый раз, когда вы меняете его на текущий каталог. Затем сервер сообщает вам, что команда cd выполнена успешно. Теперь давайте загрузим каждый файл JPEG, используя подстановочный знак. Мы можем использовать команду mget, которая позволяет нам получить несколько файлов с помощью одной команды:

Теперь мы получаем все файлы JPEG с расширениями JPG, JPEG, jpg или jpeg.

Если у нас есть какие-либо файлы для загрузки на сервер, мы можем использовать команды put или mput для их загрузки. Когда мы закончим, мы можем выйти из системы, используя команду выхода.

Связанные команды

scp — безопасное копирование файлов через сетевое подключение.
sftp — проведение интерактивного FTP-сеанса через защищенное сетевое соединение.

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

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

 Как использовать команду ftp в Linux

  • Доступ к локальной системе и удаленному FTP-серверу (узнайте, как установить FTP-сервер в Ubuntu, CentOS 7 или Raspberry Pi).
  • Рабочее подключение к Интернету.
  • Доступ к окну терминала.

ВАЖНО: FTP-трафик не шифруется и поэтому считается небезопасным. Не рекомендуется передавать файлы через Интернет с помощью FTP. Чтобы узнать больше о безопасных альтернативах FTP, ознакомьтесь с нашими статьями о SFTP, TSL и SSL.

Синтаксис ftp-команд Linux

Команда Linux ftp использует следующий базовый синтаксис:

IP – это IP-адрес системы, к которой вы подключаетесь.

Для подключения с помощью команды ftp необходимо ввести учетные данные для входа

Ввод необходимых учетных данных позволяет войти в систему и запустить интерфейс FTP. В этом примере мы входим в систему как пользователь phoenixnap:

Ввод необходимых учетных данных для входа

Интерфейс FTP теперь активен и готов к выполнению команд:

Успешный вход активирует интерфейс FTP

Работа с каталогами в удаленной системе

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

Список каталогов

Интерфейс FTP позволяет просматривать содержимое каталога в удаленной системе с помощью команды ls:

При использовании команды без каких-либо параметров отображается содержимое текущего рабочего каталога удаленной системы. В данном примере это Домашний каталог:

 Использование команды ls для отображения содержимого каталога в удаленной системе

Примечание. Интерфейс FTP позволяет использовать стандартные параметры команды ls. Узнайте больше в нашем руководстве по команде Linux ls.

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

Например, список содержимого каталога Example:

Список содержимого определенного каталога в удаленной системе

Добавление имени текстового файла в конец команды ls сохраняет содержимое каталога в этот файл:

Для этого синтаксиса команды необходимо ввести Y и нажать Enter, чтобы подтвердить сохранение текстового файла:

Сохранение содержимого каталога в виде текстового файла

Открытие текстового файла показывает содержимое каталога:

Содержимое каталога в виде текстового файла

Команды dir и nlist являются альтернативой команде ls и работают так же. Интерфейс FTP также позволяет просматривать содержимое нескольких каталогов с помощью команды mls:

Например, в приведенном ниже примере перечислено содержимое Example и Example2:

 Вывод содержимого нескольких каталогов с помощью команды mls

Как и команда ls, команда mls позволяет пользователям сохранять содержимое в текстовом файле.Эта команда обрабатывает последний аргумент как имя текстового файла. Если вы хотите просмотреть содержимое каталога, не сохраняя его в текстовый файл, замените имя файла символом дефиса (-).

Команда mdir работает так же, как и команда mls, но предлагает более подробные выходные данные:

Изменить каталоги

Используйте команду cd, чтобы изменить текущий рабочий каталог в удаленной системе:

Например, переход в каталог Example:

 Изменение текущего рабочего каталога в удаленной системе

Используйте команду cdup, чтобы перейти к родительскому элементу текущего рабочего каталога. В этом примере мы перемещаемся из каталога Example в каталог Home:

 Переход к родительскому элементу текущего рабочего каталога

Создать каталоги

Использование команды mkdir позволяет создать каталог в удаленной системе:

В приведенном ниже примере мы создаем каталог с именем Example3:

 Создание нового каталога в удаленной системе

Загрузка файлов по FTP

Чтобы передать файл из удаленной системы на локальный компьютер, используйте команду get или recv.

В приведенном ниже примере мы передаем файл example_file.txt на локальный компьютер.

Передача файла из удаленной системы на локальный компьютер

Чтобы передать example_file.txt и сохранить его как example.txt на локальном компьютере, используйте:

Передача и переименование файла из удаленной системы на локальный компьютер

Для переноса файла из определенного каталога необходимо перейти в этот каталог:

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

Команда mget позволяет передавать несколько файлов одновременно. Например, перенос test01.txt, test02.txt и test03.txt из каталога Example:< /p>

Передача нескольких файлов из удаленной системы на локальный компьютер

Примечание. По умолчанию команда mget отображает интерактивную подсказку, предлагающую пользователям подтверждать передачу каждого файла. Используйте команду приглашения для включения и выключения этой функции.

Загрузить файлы через FTP

Используйте команду put или send для передачи файла с локального компьютера на удаленную систему. Обе команды используют один и тот же синтаксис:

Чтобы передать example01.txt в удаленную систему, используйте:

Передача файла с локального компьютера на удаленную систему

Чтобы загрузить example01.txt в удаленную систему как sample01.txt, используйте:

Переход в конкретный каталог позволяет передавать файлы из этого каталога:

Перенос файла из каталога на локальном компьютере в удаленную систему

Используйте команду mput для передачи нескольких файлов в удаленную систему. Например, файлы test04.txt, test05.txt и test06.txt можно передать с помощью:

Передача нескольких файлов с локального компьютера на удаленную систему

Примечание. При использовании команды mput создается интерактивная подсказка, в которой пользователю предлагается подтвердить передачу каждого файла. Используйте команду приглашения для включения и выключения этой функции.

Переименовать файлы

Используйте команду rename для переименования файлов на удаленном сервере. Команда rename использует следующий синтаксис:

Например, переименовав sample01.txt в sample_file01.txt:

Успешное выполнение команды приводит к следующему выводу:

Переименование файла в удаленной системе

Используйте команду rename, чтобы также изменить имена каталогов.

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

Переименование каталога в удаленной системе

Удалить файлы

Команда удаления позволяет удалить файл в удаленной системе. Он использует следующий синтаксис:

Например, удаление файла sample_file01.txt:

Удаление файла в удаленной системе

Использование команды mdelete позволяет удалять несколько файлов одновременно, добавляя имена файлов после команды:

Удаление нескольких файлов из удаленной системы с использованием имен файлов

Примечание. При использовании команды mdelete появляется интерактивный запрос на подтверждение удаления каждого файла. Используйте команду приглашения для включения и выключения этой функции.

Еще один способ — использовать команду mdelete с подстановочным знаком. Например, чтобы удалить все файлы .txt, используйте:

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

Закройте FTP-соединение

Используйте команду bye , exit или quit, чтобы разорвать FTP-соединение и выйти из интерфейса.

Использование команды разъединения закрывает соединение без выхода из интерфейса.

Завершение FTP-соединения

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

Если вы заинтересованы в передаче файлов через Интернет, узнайте больше о командах SFTP, более безопасной альтернативе FTP.

FTP или протокол передачи файлов — это сетевой протокол, который используется для передачи файлов в удаленное место и из него. Если вы хотите настроить FTP-сервер, ознакомьтесь с руководствами, упомянутыми ЗДЕСЬ и ЗДЕСЬ.

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

Итак, давайте начнем наше руководство по использованию команды Linux FTP в интерфейсе командной строки.

ПРИМЕЧАНИЕ. Команду FTP можно заменить командой SFTP. Все команды, упомянутые ниже в примерах, будут использовать FTP, но то же самое можно использовать и для sftp. Просто замените FTP на sftp, и все готово. Единственная разница между FTP и SFTP заключается в том, что FTP небезопасен и не зашифрован, а SFTP зашифрован.

Примеры команд Linux FTP для интерфейса командной строки

Подключиться к FTP-серверу

Чтобы подключиться к FTP-серверу, выполните следующую команду

ИЛИ

ИЛИ

Мы можем использовать либо доменное имя, либо IP-адрес, либо имя пользователя с IP-адресом/доменом.

Если вы используете анонимный вход, вас не попросят ввести учетные данные, и вы будете напрямую подключены к FTP-серверу, но если у вас включена аутентификация, вам сначала будет предложено ввести имя пользователя (если оно не было указано во время подключения). команда) и после ввода имени пользователя вам будет предложено ввести пароль, связанный с указанным пользователем.

После подключения к ftp приглашение bash также изменится,

ftp>

Отключение от сервера

Чтобы отключиться от FTP-сервера, мы можем использовать любую из трех команд

ftp> пока

ИЛИ

ftp> выход

ИЛИ

ftp> выйти

Команды для использования после подключения к FTP

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

cd - изменить каталог на ftp-сервере

lcd - изменить каталог на локальном сервере

ls - список файлов и каталогов на ftp-сервере

pwd - Распечатать текущий рабочий каталог на ftp-сервере

mkdir - создать новый каталог на ftp-сервере

rmdir — удалить каталог на ftp-сервере

удалить - удалить файл на ftp-сервере

get - скопировать один файл с ftp на локальный сервер

mget — скопировать несколько файлов с ftp-сервера на локальный сервер

put - скопировать один файл с локального сервера на ftp сервер

mput - скопировать один файл с локального сервера на ftp-сервер

помочь или ? - список всех доступных FTP-команд

Загрузка файла с FTP-сервера

После того, как вы окажетесь в месте, где находится файл, который необходимо загрузить, выполните следующую команду после подключения к FTP-серверу,

ftp> получить file_needed_to_download.zip

Если требуется загрузить несколько файлов, используйте ‘mget’,

ftp> mget file_1.zip file_2.zip

Загрузка файла на FTP-сервер

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

ftp> поместить file_needed_to_upload.zip

Если вам нужно поместить несколько файлов на ftp, используйте команду mput,

ftp> mput file_1.zip file_2.zip

На этом наше руководство по использованию Linux FTP (SFTP) в интерфейсе командной строки или CLI завершено. Если у вас есть какие-либо вопросы или вопросы относительно этого руководства, присылайте их в поле для комментариев ниже.

Мы предлагаем вам эксклюзивные предложения по бесплатной пробной версии серверов Linux с балансом в 100 долл. США. Перейдите по этим ссылкам, чтобы получить свои 100 долл. США,

Читайте также: