[这是一篇老文章,迟迟没有发上来,另一篇关于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等多个系统中都有客户端,那些系统下支持交互命令,相比之下更简单些。