在 Linux 中使用 tftp 客户端放置文件

use*_*363 9 linux tftp

我要在网络连接的仪器上放置一个新的 ROM 文件,我需要使用 tftp。有谁知道如何做到这一点?

我将上传两个不同的文件,它们将进入不同的文件夹。

Jon*_*ham 11

最好使用 TFTP 服务器(或 MS 用语中的“服务”),它是您希望运行 TFTP 服务器的操作系统发行版的“本机”。

如果您使用的是 Ubuntu,请尝试阅读David Sudjiman 的这篇文章

如果您使用的是 Debian,请尝试这篇 Nixcraft文章。

如果您使用 CentOS、RHEL 或 Fedora,请尝试这篇博文

如果您使用的是 MS Windows,请尝试TFTPD32。这不是 Windows 发行版中的“本机”服务器,但它是常用的 TFTP 服务器。

如果您连接到网络的设备本身就是一个 TFTP 服务器,并且您需要使用 TFTP 客户端将文件上传到该服务器,那么您需要找出

  1. 设备的 IP 地址
  2. 设备期望接收的文件名

如果设备 TFPT 服务器正在侦听的端口号不是 TFTP 众所周知(标准)端口,则您可能还需要端口号 69。

如果设备使用来自网络上服务器的 DHCP 进行自我配置,则您可以查看 DHCP 服务日志文件以查看其 IP 地址。另一种可能性是设备配置了一个 ad-hoc IP 网络。所以你需要有一些关于设备的文档才能知道它是如何配置自己的。

上面提到的大多数 TFTP 服务器包也安装了 TFTP 客户端。如果您不想安装服务器,那么某些发行版具有独立的 TFPT 客户端,但它们通常不会作为标准安装的一部分进行安装,因此您必须手动安装它们。

一旦你知道设备的 IP 地址和它期望接收的文件的名称,你应该能够使用类似的命令将文件上传到设备

tftp 192.168.1.1 -c put myfile theirfile
Run Code Online (Sandbox Code Playgroud)

由于 tftp 默认传输模式是 ASCII 并且您正在上传 ROM,因此命令应该是

tftp 192.168.1.1 -m binary -c put myfile theirfile
Run Code Online (Sandbox Code Playgroud)

其中“myfile”是您要上传的文件的名称,“irfile”是该文件在设备上应具有的名称。您可能还想使用“-v”命令参数,以便如果出现问题,您可以看到它是什么:

tftp -v 192.168.1.1 -c put myfile theirfile
Run Code Online (Sandbox Code Playgroud)

如果服务器在另一个端口上运行,比如 8069,那么命令语法将是

tftp -v 192.168.1.1 8069 -c put myfile theirfile
Run Code Online (Sandbox Code Playgroud)

如果本地文件已经有正确的名称,那么命令就是

tftp -v 192.168.1.1 -c put myfile
Run Code Online (Sandbox Code Playgroud)