Утилита nc
— универсальный инструмент командной строки Linux, предназначенный для передачи файлов по протоколам TCP / UDP. Эта команда также позволяет устранять неполадки в сети.
В этой статье мы покажем, как скопировать файл с одного ПК на другой с помощью команд nc
и pv
.
Содержание:
- Установка nc и pv в Linux
- Настройка сетевых портов в Linux
- Передача файла между двумя компьютерами
- Выводы
Установка nc и pv в Linux
Инструменты nc
и pv
доступны для установки из стандартных репозиториев большинства популярных дистрибутивов Linux. Поэтому для их инсталляции достаточно выполнить одну из следующих команд.
Для Debian / Ubuntu:
Для RHEL / CentOS:
Читайте также: Команда pv в Linux с примерами.
Настройка сетевых портов в Linux
Для передачи файлов через сеть может потребоваться открыть порты на хостах отправителя и получателя. Мы будем отправлять файл с Ubuntu на CentOS Linux через порт 5555. Поэтому разрешим доступ к этому сетевому порту на обоих узлах с помощью следующих команд.
Для Debian / Ubuntu:
Для RHEL / CentOS:
Передача файла между двумя компьютерами
В качестве примера скопируем большой текстовый файл largefile.txt
в ОС Ubuntu Linux и отправим его на компьютер под управлением CentOS Linux.
Важно: лучше не использовать инструмент nc
для передачи данных через публичные сети, поскольку утилита не применяет никаких способов аутентификации. Поэтому злоумышленники могут легко перехватить данные в незащищенных сетях.
Отправка данных с Ubuntu Linux
Чтобы отправить документ largefile.txt
, выполним в терминале:
Давайте детальнее разберем использованную команду:
pv
— утилита для отслеживания прогресса передачи данных;largefile.txt
— название / путь к файлу, который нужно отправить;|
— символ конвейера, который позволяет передать вывод одной команды в качестве входных данных для другой;-l
— параметр, указывающий утилитеnc
работать в режиме прослушивания, то есть ожидать входящего подключения;-p
— опция, которая позволяет задать сетевой порт для передачи файла.
Получение файла на CentOS Linux
Чтобы получить файл на хосте с CentOS Linux, запустим следующую команду:
Здесь:
nc 192.168.59.131 5555
— часть команды, которая инициирует соединение с хостом с указанным IP-адресом (192.168.59.131
) на указанном порте (5555
);> largefile.txt
— часть команды, которая перенаправляет выводpv
в текстовый файлlargefile.txt
.
Читайте также: Как настроить SSH-доступ по ключу в Linux.
На скриншоте выше видно, что после выполнения предыдущей команды начался процесс передачи данных. Эта же информация отображается и на хосте-отправителе.
Когда операция копирования файла завершится, на хосте-получателе нажмите Ctrl + c. А затем используйте команду ls
, чтобы убедиться, что файл был успешно получен:
Выводы
Теперь Вы знаете, как отправить файл на удаленную машину с помощью утилиты nc
, а также отслеживать процесс выполнения этой операции с помощью pv
. Надеемся, что эта статья была полезной для Вас!
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.