一、搭建tftp服务器
在嵌入式Linux开发中,TFTP协议在很多场合都被用到,甚至是必不可少的,特别是在内核调试阶段,在U-Boot下通过TFTP协议从服务器上加载内核并运行,既方便又快捷。
一般的发行版默认都没有安装TFTP服务以及TFTP服务器。TFTP服务依赖于网络守护进程服务程序,可选择安装inetd或者升级版的xinetd,然后安装tftp和tftp-server,接着修改或者创建/etc/xinetd.d/tftp配置文件,最后重启xinetd,启动TFTP服务。无论采用什么发行版,TFTP服务器的安装都是这样的流程,只不过不同发行版的安装命令不同而已,下面以ubuntu为例进行说明。
安装xinetd:
sudo apt-get install xinetd
安装tftp和tftpd:
sudo apt-get install tftp tftpd
或者安装tftp的增强版本tftp-hpa:
sudo apt-get install tftp-hpatftpd-hpa
建立配置文件。建立/etc/xinetd.d/tftp文件,写入如下内容:
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/tftpboot/
disable = no
per_source = 11
cps = 100 2
flags = IPv4
}
其中server_args设置的/var/tftpboot目录是tftp服务器的目录,设置其访问权限为777:
sudo mkdir -pv /tftpboot/
sudo chmod 777 /tftpboot/
启动或者重启xinetd服务:
sudo /etc/init.d/xinetdstart或者restart
本机测试。在/tftpboot目录下创建一个ky文件,启动另外一个终端,输入:
tftp 127.0.0.1
Tftp > get ky #获取ky文件
Tftp > q #退出tftp
-
搭建NFS服务器
NFS(NetwordFileSystem),网络文件系统,是Unix系统之间实现磁盘文件共享的一种方法,它支持应用程序在客户端通过网络访问位于服务器磁盘中数据的一种文件系统协议。
我理解的NFS呢,是一种C/S的架构,SERVER共享目录给CLIENT使用)
PC机
开发板
NFS服务 网线
NFS Server NFS Client
-
sudo apt-get installnfs-kernel-server
-
mkdir /mnt/nfsroot
-
sudo vim /etc/exports
在最后一行添加
/mnt/nfsroot *(rw,sync,no_root_squash)
-
sudo/etc/init.d/portmap restart
重启portmap服务。NFS是一个RPC程序,使用它前需要映射好端口,通过portmap设定。
-
sudo /etc/init.d/nfs-kernel-serverrestart
重启NFS服务器
测试:
-
显示共享出来的目录
showmount -e
-
sudo mount -t nfslocalhost:/mnt/nfsroot/...
-
查看挂载情况
df
4、sudoumount /...