ubuntu下TFTP服务器搭建

tftp 命令的作用和 nfs 命令一样,都是用于通过网络下载东西到 DRAM 中,只是 tftp 命令

使用的 TFTP 协议, Ubuntu 主机作为 TFTP 服务器。因此需要在 Ubuntu 上搭建 TFTP 服务器,

需要安装 tftp-hpa 和 tftpd-hpa,命令如下:

bash 复制代码
sudo apt-get install tftp-hpa tftpd-hpa
bash 复制代码
sudo apt-get install xinetd

和 NFS 一样, TFTP 也需要一个文件夹来存放文件,在用户目录下新建一个目录,命令如

bash 复制代码
mkdir /home/mk/linux/tftpboot
bash 复制代码
chmod 777 /home/mk/linux/tftpboot

最后配置 tftp,安装完成以后新建文件/etc/xinetd.d/tftp, 如果没有/etc/xinetd.d 目录的话自行

创建, 然后在里面输入如下内容:

bash 复制代码
server tftp
{
 socket_type = dgram
 protocol = udp
 wait = yes
 user = root
 server = /usr/sbin/in.tftpd
 server_args = -s /home/mk/linux/tftpboot/
 disable = no
 per_source = 11
 cps = 100 2
 flags = IPv4
}

完了以后启动 tftp 服务,命令如下:

bash 复制代码
sudo service tftpd-hpa start

打开/etc/default/tftpd-hpa 文件,将其修改为如下所示内容:

bash 复制代码
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/home/mk/linux/tftpboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="-l -c -s"

TFTP_DIRECTORY 就是我们上面创建的 tftp 文件夹目录,以后我们就将所有需要通过

TFTP 传输的文件都放到这个文件夹里面,并且要给予这些文件相应的权限。

最后输入如下命令, 重启 tftp 服务器:

bash 复制代码
sudo service tftpd-hpa restart

tftp 服务器已经搭建好了,接下来就是使用了。将 zImage 镜像文件拷贝到 tftpboot 文件夹

中,并且给予 zImage 相应的权限,命令如下:

bash 复制代码
cp zImage /home/mk/linux/tftpboot/
bash 复制代码
cd /home/mk/linux/tftpboot/
bash 复制代码
chmod 777 zImage

万事俱备,只剩验证了, uboot 中的 tftp 命令格式如下:

tftpboot [loadAddress] [[hostIPaddr:]bootfilename]

看 起 来 和 nfs 命 令 格式 一 样 的 , loadAddress 是 文 件 在 DRAM 中 的存 放 地 址 ,

\[hostIPaddr:\]bootfilename\]是要从 Ubuntu 中下载的文件。但是和 nfs 命令的区别在于, tftp 命令 不需要输入文件在 Ubuntu 中的完整路径,只需要输入文件名即可。比如我们现在将 tftpboot 文 件夹里面的 zImage 文件下载到开发板 DRAM 的 0X80800000 地址处,命令如下: ```bash tftp 80800000 zImage ``` 防火墙放行UDP:69端口 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/babc3e18f83a4ba7b5addc4c69acd46d.png)

相关推荐
和计算机搏斗的每一天几秒前
ip命令详解
服务器·网络·tcp/ip
あ-2 分钟前
CentOS7 OpenSSL升级1.1.1w
linux
tianyuanwo4 分钟前
深入解读tcpdump:原理、数据结构与操作手册
linux·运维·服务器·tcpdump
xjdksxkmd24 分钟前
5.11作业
运维·服务器·网络
电鱼智能的电小鱼1 小时前
产线视觉检测设备技术方案:基于EFISH-SCB-RK3588/SAIL-RK3588的国产化替代赛扬N100/N150全场景技术解析
linux·人工智能·嵌入式硬件·计算机视觉·视觉检测·实时音视频
子非衣2 小时前
Ubuntu系统挂载磁盘并配置开机自动挂载
linux·运维·ubuntu
Lizhihao_2 小时前
TCP实现安全传输的核心机制 + TCP的报文讲解(全程图文讲解)
服务器·网络·网络协议·tcp/ip
风暴智能2 小时前
问题处理——在ROS2(humble)+Gazebo+rqt下,无法显示仿真无人机的相机图像
linux·无人机
ChironW3 小时前
Ubuntu 22.04.5 LTS上部署Docker及相关优化
ubuntu·docker·容器
唐志远19973 小时前
VMware虚拟机 安装 CentOS 7
linux·运维·centos