什么是TFTP?
TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:一是linux服务器端的tftp-server支持,二是嵌入式目标系统的tftp-client支持。因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了。下面就详细介绍一下linux服务器端tftp-server的配置和客户端的使用。
服务器:
1、安装tftp服务:
root@ubuntu# apt-get install tftp-hpa(客户端) tftpd-hpa(服务器)
2、修改配置文件
root@ubuntu# vim /etc/default/tftpd-hpa
#/etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-s -c -l"
(其中/tftpboot是服务器的根目录 -c指定可以创建文件)
3、在根目录下创建/tftpboot目录,并且修改权限为777
4、停止tftp的网络服务
root@ubuntu# service tftpd-hpa stop
5、重新启动 ftfp服务
root@ubuntu# service tftpd-hpa start
客户端:
1、按以上步骤启动tftp服务后,登陆服务器
root@ubuntu# tftp 192.168.1.1(服务器ip地址)
2、可以通过get命令从服务器得到文件(文件名提前知道)
root@ubuntu# >get file(下载的文件)
3、可以向服务器上传文件
root@ubuntu# >put file(上传的文件)
4、退出登陆
root@ubuntu# >quit
另外一种方式:
tftp [option] ... host [port]
选项:
-g 表示下载文件 (get)
-p 表示上传文件 (put)
-l 表示本地文件名 (local file)
-r 表示远程主机的文件名 (remote file)
例如,要从远程主机192.168.1.2上下载 embedexpert,则应输入以下命令
root@ubuntu#tftp -r file -g 192.168.1.2
查看tftp服务状态:
root@ubuntu# service tftpd-hpa status