VMware Linux RedHat 9.0 tftp server配置

xingzhaozhong 2010-12-19

平台:Windows XP sp2 + VMware RedHat 9.0)

TFTP是用来下载远程文件的最简单网络协议,它其于UDP协议而实现。

嵌入式linux的tftp开发环境包括两个方面:

一是linux服务器端的tftp-server支持,

二是嵌入式目标系统的tftp-client支持。

因为u-boot本身内置支持tftp-client,所以嵌入式目标系统端就不用配置了。

#mount –t iso9660 /dev/hdc /mnt/cdrom     //挂载光盘

#rpm -ivh tftp-server-0.32-4.i386.rpm              //安装

#umount /mnt/cdrom                                          //卸载光盘

(2)修改文件在linux下,不管使用的是哪一种super-server,inetd或者xinetd,默认情况下TFTP服务是禁用的,所以要修改文件来开启服务。

根据(1)的安装方法,可以修改文件/etc/xinetd.d/tftp。主要是设置TFTP服务器的根目录,开启服务。

修改后的文件如下:

service tftp {   

socket_type            =dgram      

protocol                  =udp      

wait                        =yes      

user                        =root     

server                     =/usr/sbin/in.tftpd      

server_args             =-s /home/app -c      

disable                    =no      

per_source             =11      

cps                         =100 2     

flags                       =IPv4

}

说明:修改项server_args= -s     <path>    -c,其中<path>处可以改为你的tftp-server的根目录,参数-s指定chroot,-c指定了可以创建文件。

(3)创建tftp根目录,关闭防火墙,启动tftp-server。

#mkdir /home/app

#chmod o+w       /home/app

#/etc/init.d/iptables stop        //关闭防火墙

#service xinetd restart          //重启 xinetd 服务

重启xinetd服务,因为TFTP服务受控与xinetd, xinetd是管服务的服务,它是不开端口的。

验证一下TFTP是否起来了:

# netstat -nlp

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

tcp 0 0 0.0.0.0:32768 0.0.0.0:* LISTEN 3122/rpc.statd

tcp 0 0 127.0.0.1:32781 0.0.0.0:* LISTEN 4035/xinetd

tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 3103/portmap

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 3324/httpd

tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 3255/sshd

tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 3213/cupsd

tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 3295/sendmail: acce

tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 3415/0

tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 3324/httpd

udp 0 0 0.0.0.0:32768 0.0.0.0:* 3122/rpc.statd

udp 0 0 0.0.0.0:69 0.0.0.0:* 4035/xinetd   ;

可以看到69端口已经打开

udp 0 0 0.0.0.0:69 0.0.0.0:* 4012/in.tftpd

udp 0 0 0.0.0.0:111 0.0.0.0:* 3103/portmap

udp 0 0 0.0.0.0:754 0.0.0.0:* 3122/rpc.statd

udp 0 0 0.0.0.0:631 0.0.0.0:* 3213/cupsd

这样,tftp-server就启动了。

你可以登陆本机测试以下,命令如下:

#tftp     your-ip-address 

tftp>get <download file> 

tftp>put <upload file> 

tftp>q

#

相关推荐