安装tftp
第一步:安装相关软件包
在终端下输入
sudo apt-get install tftp-hpa tftpd-hpa ( 安装tftp-hpa和tftpd-hpa)
然后还需要安装xinetd,按照网上的说法,这是一个守护进程,用于处理对各种服务的请求,在终端下输入
sudo apt-get install xinetd (安装好xinetd)
第二步、建立tftp服务文件目录
sudo mkdir /tftpboot
sudo chmod 777 /tftpboot
第三步:建立配置文件
cd /etc/xinetd.d/
vim tftp
service tftp
{
socket_type = dgram
wait = yes
disable = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /tftpboot -c
log_on_success += PID HOST DURATION
log_on_failure += HOST
}
其中server_args一行是配置服务器的文件存放的位置,就是进行tftp传输的时候,都是从该文件夹中搜索文件的,上文中的/tftpboot是我自己设置的,你也可以设置成任意的地方
第四步:配置
tftp-hpa 的配置文件為 /etc/default/tftpd-hpa
sudo gedit /etc/default/tftpd-hpa
内容如下:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/tftpboot" //这里是你的tftpd-hpa的服务目录
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="-l -c -s" //这里是选项
注意:如果是在10.04以下的版本用下面的配置
tftp-hpa 的配置文件为 /etc/default/tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -c -s /tftpboot"
第五步、从新启动服务
重新启动TFTP服务
sudo service tftpd-hpa restart
当配置好tftp的配置文件后,需要重新启动一下xinetd,在终端中输入
sudo /etc/init.d/xinetd reload 重新加载一下进程
再输入 sudo /etc/init.d/xinetd restart,重启服务。
记住,每次修改完配置文件后,都需要重新启动一下服务
第六步、测试tftpd服务是否成功
sudo tftp localhost
tftp>put file
tftp>get test
注:在哪个目录执行tftp命令,那么上传的文件就是这个目录下的所有文件,下载的文件将只能是server目录下的那些文件!
对于上面的测试是针对本地测试的,如果想要对其他电脑或者开发板进行tftp传输,则在终端输入 sudo tftp xxx(即目标电脑或目标开发板的ip地址),而且还要关闭ubuntu自带的防火墙(书上说的),我是直接把防火墙给卸载了(sudo apt-get remove iptables),因为我觉得对于Linux来说,防火墙可能没什么需要把,至少目前为止我还没有受到过攻击。。。当然,想要与其他局域网内的电脑或开发板互联进行传输,还要将这些机器的ip改到同一个段内.