转自http://www.linuxidc.com/Linux/2010-08/27613.htm,并解决了其搭建过程出现的错误
TFTP是用来下载远程文件的最简单网络协议,基于UDP协议完成。
使用RedHat Linux 9中的第3张光盘。以下是root登录操作
(1)安装TFTP-server
# mount /mnt/cdrom
# cd /mnt/cdrom/RedHat/RPMS
# rpm -ivh tftp-0.32.i386.rpm
# rpm -ivh tftp-server-0.32-4.i386.rpm
# cd ~
# umount /mnt/cdrom
(2)修改文件
# vi /etc/xinetd.d/tftp
service tftp
{
socket_type =dgram
protocol =udp
wait =yes
user =root
server =/usr/sbin/in.tftpd
server_args =-s /home/liuby/tftpboot -c # 修改 注:-s指定的目录,-c表示可以创建文件
disable =no # 修改
per_source =11
cps =100 2
flags =IPv4
}
(3)启动服务
建立TFTP Server 服务器
# mkdir -m 777 /home/liuby/tftpboot
# service xinetd restart
{
出错:bash: service: command not found
解决方法:原因是这样的,service命令是要用ROOT用户来执行的,而出错的用户是用su root切换到ROOT用户下,这个命令没有也不会把环境带过去!用如下命令就不会出错了:
su – root
注意:su 后面是一个空格,横线后面也是一个空格,千万不能省略.
}
(4)在命令行下 setup 在system services中(或ntsysv)选择tftp,命令行lokkit关闭firewall
(5)重新启动TFTP
# service xinetd restart
(6)测试
# tftp 192.168.0.2
tftp>get
tftp>put
tftp>q
(7)目标板测试(以下目标板上操作)
假设服务器/home/liuby/tftpboot下有zImage,或交叉编译的应用程序helloworld.o等
# tftp 192.168.0.2
tftp>get helloworld.o
tftp>q
# chmod +x helloworld.o
# ./helloworld.o
(8)mpc8349板下载server(59.64.155.12)的hello.o文件
# tftp -g 59.64.155.12 -r hello.o
# chmod +x hello.o
# ./hello.o
+++++++++++++++++++++++++++++++++++++++++++++++