TFTP(Trial File Transfer Protocol)是一种网络协议,主要用于文件的传输。TFTP使用的是CS模式,客户端上传、下载不需要账户,进行嵌入式交叉开发时,开发主机上先要安装TFTP服务器并进行正确的设置。配置TFTP服务器前必须安装TFTP软件包,它包括服务端和客户端。Ubuntu下可用的TFTP软件很多,常用的是tftpd-hpa(服务器软件)和tftp-hpa(客户端软件)。NFS是Network File System的简写,即网络文件系统。网络文件系统是许多操作系统都支持的文件系统的一种,也被称为NFS。NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户可以像访问本地文件一样访问远端系统上的文件。NFS所提供的共享文件服务是建立在高度信任的基础上的,在向其他用户释放共享资源之前,一定要确保对方的可靠性。NFS有很多实际的应用。比如多个机器共享一台CDROM或者其他设备对于在多台机器中安装软件来说更加便宜和方便;在大型网络中配置一台中心NFS服务器用来放置所有用户的home目录可能会带来便利;在嵌入式交叉开发中,把“根文件”系统放在主机上,然后在开发板启动时通过NFS挂载主机上的根文件系统,提高开发效率。
问题解决与注意事项
在此次实验中,对于遇见的问题和需注意的地方,着重强调的是:
(1)由于无法获得前端锁导致安装失败。解决方法是:输入“sudo apt-get update”命令更新完毕后即可安装。
(2)修改tftpd-hpa配置文件等操作无法进行。解决办法:以root用户的身份操作,或者sudo+操作。
(3)使用TFTP服务时,启动客户端程序注意IP地址的归属问题,如果此处的IP地址是别人主机的,TFTP客户端连接的就是别人主机上的TFTP服务器端。
(4)概念要弄清楚,有些地方省略了,比如下载的文件 hello.c,是先通过“put hello.c”上传文件后(从其他地方上传到/tftpboot目录)才能进行“get hello.c”进行下载(从/tftpboot目录下载到其他地方)。还有一些地方的文件和目录需要自己创建,前后进行思考,如果按照命令照搬的话,会出现找不到文件和目录的提示。
(5)通过tftp服务器上传文件和下载文件不成功,出现“permission denied”提示。解决办法:修改权限,将/tftpboot目录和其下文件的权限变为可读可写权限,使用命令:
>cd /
>chmod 777 tftpboot
>cd tftpboot
>chmod 777 “文件名”
(6)编辑小技巧。vi进入编辑页面后,dd删掉光标所在行,i输入,Esc停止输入,:wq保存并退出编辑。