Ubuntu 11.10搭建tftp服务器以及在OK6410开发板上使用

本次是参考 Valiantwinds 大侠的基础上针对OK6410修改了开发板和虚拟机之间如何建立起tftp连接的描述.

一、Ubuntu 11.10搭建tftp服务器

(1) $ sudo apt-get install tftpd tftp openbsd-inetd

(2) $ sudo gedit /etc/inetd.conf
在这个配置文件里面找到下面的位置:
#:BOOT: TFTP service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
#tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp
#我把上面的默认的配置文件用井号注释掉了,自己配置了tftp的主工作目录为/tftp
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftp

(3)创建TFTP服务器的文件目录。
$cd /  
$sudo mkdir tftp
$sudo chmod 777 /tftp
如果有需要下载的文件这时可以拷贝进去,也用chmod 777命令把所有权限打开。

(4)启动(或重启)xinetd服务
$sudo /etc/init.d/openbsd-inetd restart

(5)查看69端口是否有打开,使用下面命令
netstat -an | more
打印出的东西中找到如下即可:
udp 0 0 0.0.0.0:69 0.0.0.0:*

(6)在本机测试一下:

a.在/tftp目下新建一个文件,并写入数据:
        @linuxidc:/tftp$ echo helloworld > zhang.txt
        @linuxidc:/tftp$ cat zhang.txt
        helloworld
        b. 到/home目录下
        @linuxidc:/home$ sudo tftp 221.204.110.99[注:这是本机的IP地址]
        [sudo] password for yishugao:
        tftp> get zhang.txt
        Received 12 bytes in 0.0 seconds
        tftp> quit
        @linuxidc:/home$ cat zhang.txt
        helloworld
        @linuxidc:/home$
        行了,本地测试成功!

二、在开发板上使用tftp

首先,保证虚拟机的网络是Bridged模式,并且,本地连接属性中 VMware Bridge Protocol 打钩
使用命令 "tftp c0800000 Helloword"
Helloword 是你虚拟机中 tftp 目录里的一个文件,记住最好把所有文件的权限改为 777

下面是tftp传输成功时,串口上的打印信息

SMDK6410 # tftp c0800000 Helloword
Found DM9000 ID:90000a46 at address 18000300 !
DM9000 work in 16 bus width
bd->bi_entaddr: 00:40:5c:26:0a:5b
[eth_init]MAC:0:40:5c:26:a:5b:
TFTP from server 192.168.0.101; our IP address is 192.168.0.232
Filename 'Helloword'.
Load address: 0xc0800000
Loading: T T ####
done
Bytes transferred = 19774 (4d3e hex)
SMDK6410 #

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/e1c3f037ad8695e38dac75a95135eabe.html