TFTP是用来下载远程文件的最简单网络协议,它基于UDP协议而实现。嵌入式linux的tftp开发环境包括两个方面:一是嵌入式linux宿主机的 tftp-server支持,二是嵌入式linux目标机的tftp-client支持。因为u-boot本身内置支持tftp-client,所以嵌入式目标机就不用配置了。下面就详细介绍一下linux宿主机tftp-server的安装配置。
在FC6光盘的ISO镜像中,有tftp-server的rpm安装包。
1>安装
#mount -o loop /mnt/CD //挂载光盘
#rpm -ivh tftp-0.42-3.1.i386.rpm //安装tftp-client
#rpm -ivh tftp-server-0.42-3.1.i386.rpm //安装tftp-server
#umount /mnt/CD //卸载光盘
2>在安装的时候,可能会出现xinet 没有安装的提示
3>这个东东可以到http://download.fedora.redhat.com/pub/fedora/linux/core/4/i386/os/fedora/rpm下载。
4>或者你也可以yum 一下。
Tftp服务器的使用:
1>在主机(也就是服务器端)开启tftp服务器
service xinetd start
chmod o+w /tftpboot
2>用minicom进入到uclinux
3>修改44B0的IP跟主机在同一个网段
ifconfig eth0 192.168.1.30
若不想每次进入到系统都打这个命令,可以如下做:
在uclinux-dist/vendors/samsung/44b0/下打开一个rc文件,里面有一行:
ifconfig eth0 192.168.0.30 netmask 255.255.255.0 up
我们在这里改一下IP就行了。
4>进入其中的一个下载目录:如/var/tmp
5>登录到主机
输入:tftp 192.168.1.105(假设我这台主机的IP是这个)
注意这里的ARM板要跟主机在同一个网段,若ARM板不是跟主机在同一个网段,则会出现无法登录的情况,修改方法是:
在ARM(44B0)上输入ifconfig eth0 192.168.1.*(这里假设主机的网关是192.168.1.1)
若成功登录则会有如下的提示:
tftp >
6>输入:get <你要下载的文件名> //注意这个文件名必须是在tftp的工作目录下,如我的就是在/ tftpboot
7>如果下载成功则会提示用了多少秒
8>接下来我们就可以直接运行这个文件了(有时候会出现不能运行的情况,如badcommand等,此时可以用以下的命令:chmod 777 文件名)。