• 6158阅读
  • 0回复

tftp服务的开通与使用 [复制链接]

上一主题 下一主题
离线twicave
 

只看楼主 倒序阅读 楼主  发表于: 2008-10-18
— 本帖被 XChinux 执行加亮操作(2008-11-02) —
[这是一篇老文章,迟迟没有发上来,另一篇关于QTE剪裁的文章已经找不到了。
所以,还是发在这里存起来吧]

今天准备将程序加载到开发板上看一下执行情况,
开发板的提供商提供了一套linux的映像,内含基本的Linux功能
很全面,包括网络和键盘鼠标支持
通过串口,还可以以指定波特率访问该系统。

问题是我居然没办法把文件传递过去。
本来以为网络已经通了会很好办的。但是那个Linux映像因为尺寸的缘故,没有包含ftp程序。
找了一下,发现有一个tftp,这个东西我在我的redflag desktop5.0上也有见到。但是一直没有搞清楚怎么用。


因为是在虚拟机下面做开发,与宿主操作系统的信息交互成了一个难题,前几天先是在Trolltech的ftp服务器上发现了一个也许叫troll-ftpd的东西,装了一下,很遗憾,没有成功(如果有谁成成功运行过,请说一下),最终是在宿主机上装了一个serve_u,才算暂时解决了这个问题。

一般片上系统因为尺寸的缘故,一般仅仅会包含tftp的客户端,所以下面就说说如何对tftp进行配置:

tftp是一种轻量的文件传输协议,与ftp比较,很多命令都不支持,事实上客户端基本上限制在仅能通过命令行的参数与tftp服务器交互。

tftp服务器端:
1.修改/etc/xinetd.d/tftp,内容修改为:

# default: off
# description: The tftp server serves files using the trivial file transfer \
#  protocol.  The tftp protocol is often used to boot diskless \
#  workstations, download configuration files to network-aware printers, \
#  and to start the installation process for some operating systems.
service tftp
{
    socket_type    = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args    = -s /tftpboot -c
    disable        = no
    per_source      = 11
    cps            = 100 2
    flags          = IPv4
}


其中需要修改的地方是"Server_args"和"disable"两处,网上查到的资料,那个/tftpboot是服务器端的根目录, -c选项可以打开写权限。
那个/tftpboot的目录是操作系统自动建立的,因为不清楚其是否开通了写权限,所以:
chmod o+w /tftpboot 一下
然后 service xinetd restart。tftp服务器端就配置好了。

2.客户端
arm-linux里面的tftp很奇怪,好像是一家busybox公司制作的,它仅仅支持命令行访问
tftp -g -r <remote file name> <tftp server ip>
可以下载指定的文件
tftp -p -l <local file name> <tftp server ip>
可以上传文件

tftp在xp, linux-x11等多个系统中都有客户端,那些系统下支持交互命令,相比之下更简单些。
快速回复
限100 字节
 
上一个 下一个