Я собираюсь поместить новый файл ПЗУ на инструмент, подключенный к сети, и мне нужно использовать tftp. Кто-нибудь знает как это сделать?
Я собираюсь загрузить два разных файла, и они пойдут в отдельные папки.
Вероятно, лучше всего использовать TFTP-сервер (или "службу" на языке MS), "родной" для дистрибутива операционной системы, на котором вы хотите запустить TFTP-сервер.
Если вы используете Ubuntu, попробуйте эту статью David Sudjiman.
Если вы используете Debian, попробуйте эту статью о Nixcraft .
Если вы используете CentOS, RHEL или Fedora, попробуйте эту запись в блоге.
Если вы используете MS Windows, попробуйте TFTPD32. Это не "нативный" сервер в смысле присутствия в дистрибутиве Windows, но это обычно используемый TFTP-сервер.
Если устройство, которое вы подключаете к сети, само по себе является TFTP-сервером и вам необходимо загрузить файл на этот сервер с помощью TFTP-клиента, вам необходимо выяснить,
Вам также может понадобиться номер порта, который прослушивает TFPT-сервер устройства, если он не является общеизвестным (стандартным) портом TFTP, порт 69.
Если устройство настраивается с использованием DHCP с сервера в вашей сети, вы можете просмотреть файлы журнала службы DHCP, чтобы узнать его IP-адрес. Другая возможность заключается в том, что устройство настраивает специальную IP-сеть. Таким образом, вам нужно иметь некоторую документацию об устройстве, чтобы знать, как оно настраивается.
Большинство вышеупомянутых пакетов сервера TFTP также устанавливают клиенты TFTP. Если вы не хотите устанавливать серверы, то в некоторых дистрибутивах есть автономные клиенты TFPT, но они обычно не устанавливаются как часть стандартной установки, поэтому вам придется устанавливать их вручную.
Как только вы узнаете IP-адрес устройства и имя файла, который он ожидает получить, вы сможете загрузить файл на устройство с помощью команды, подобной
tftp 192.168.1.1 -c put myfile theirfile
Поскольку режим передачи по умолчанию для tftp - ASCII, и вы загружаете ПЗУ, команда, вероятно, должна быть
tftp 192.168.1.1 -m binary -c put myfile theirfile
Где "myfile" - это имя файла, который вы хотите загрузить, а "их файл" - это имя, которое файл должен иметь на устройстве. Возможно, вы также захотите использовать параметр команды "-v", чтобы, если что-то пошло не так, вы могли увидеть, что это было:
tftp -v 192.168.1.1 -c put myfile theirfile
Если сервер работает на другом порту, скажем, 8069, то синтаксис команды будет
tftp -v 192.168.1.1 8069 -c put myfile theirfile
Если локальный файл уже имеет правильное имя, то команда просто
tftp -v 192.168.1.1 -c put myfile
Вы должны знать порт, который прослушивает TFTP-сервер. Обычно это
# getent services tftp
tftp 69/tcp
Клиент для GNU/Linux:
$ yum info tftp
Available Packages
Name : tftp
Arch : x86_64
Version : 0.49
Release : 7.el6
Size : 32 k
Repo : base
Summary : The client for the Trivial File Transfer Protocol (TFTP)
URL : http://www.kernel.org/pub/software/network/tftp/
License : BSD
Description
: The Trivial File Transfer Protocol (TFTP) is normally used
: only for booting diskless workstations. The tftp package
: provides the user interface for TFTP, which allows users to
: transfer files to and from a remote machine. This program
: and TFTP provide very little security, and should not be
: enabled unless it is expressly needed.
Для получения инструкций о том, как загружать файлы, обратитесь к man-странице tftp(1)
, в частности, к команде put
.