因为板子上的Linux需要通过TFTP命令和主机进行文件交互,所以试着在电脑上配置和TFTP服务器,经过网上搜索资料和自己的实践,终于成功了,过程如下:

1.安装tftp的服务端和客户端:
sudo apt-get install tftpd-hpa ;安装tftp服务端
sudo apt-get install tftp-hpa   ;安装tftp客户端

2.安装xinetd
sudo apt-get install xinetd

3.安装完 xinetd应该会建立目录/etc/xinetd.d,在此目录中添加文件:tftpd
sudo touch tftpd

4.sudo gedit /etc/xinetd.d/tftpd
想tftpd中添加如下内容:
service tftp
{
disable = no
socket_type = dgram
wait = no
user = root
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /home/tftpd
log_on_success = PID HOST DURATION
log_on_failure = HOST
}

5.在/home下建立tftpd目录,作为服务器的目录
sudo mkdir /home/tftpd
释放权限:
sudo chmod 777 /home/tftpd

6.打开inetd.conf 注释掉内容:
sudo gedit /etc/inetd.conf
#tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot

7.重启xinetd服务
sudo /etc/init.d/xinetd restart

8.重启tftpd服务
sudo /etc/init.d/tftpd-hpa restart

9.这样就可以了,在/home/tftpd中建立一个文件
touch haha

切换到另一个目录中,然后
tftp localhost(或者是自己的IP)
tftp>get haha

这样就能在当前目录下get到 haha文件了

如果 get的时候显示 time out,应该是服务没有启动
sudo /etc/init.d/xinetd restart
sudo /etc/init.d/tftpd-hpa restart
这样应该就可以了

遇到的问题:

#tftp 192.168.1.47

#get zImage

Error code 0: Permission denied

原因:zImage 权限太高

解决办法:

$cd /home/tftpd

$ls -l zImage

-rwx------ 1 yan yan 1978508 2009-08-23 17:24 zImage

$chmod 777 zImage

这样就可以访问该文件了

 

(转载。有侵权立即通知我。。我立马删除。)

posted on 2010-05-17 14:31  灰太狼大王  阅读(2522)  评论(0编辑  收藏  举报