NFS(Network File System)是网络文件系统,和img镜像格式的文件系统一样都是文件系统。区别在于NFS是通过网络挂载,镜像格式的文件系统必须先烧录到硬盘后才能挂载。NFS采用C/S架构,客户端通过网络去挂载服务器端上的文件系统。NFS适用于调试阶段,镜像格式的文件系统适合出货的产品。
首先在被挂载的主机上安装nfs服务
apt-get update apt install nfs-common apt install nfs-kernel-server
在主机上编辑exports文件
vim /etc/exports #添加内容 /xxx/xxx/xxx 172.16.0.0/24(rw,sync,all_squash,anonuid=1000,anongid=1000,no_subtree_check) /xxx/xxx/xxx *(insecure,rw,async,no_root_squash)
-
/xxx/xxx/xxx :要共享的开发主机目录,注意使用空格与后面的配置隔开
-
172.16.0.0/24:配置谁可以访问,其中的/24是掩码,此处表示24个1,即11111111.11111111.11111111.00000000, 即掩码是255.255.255.0。结合前面172.16.0.0表示此处配置IP为 172.16.的主机均可以访问该目录,即局域网上的所有主机。
*若局域网是其它网段,请参考此处的配置,不能直接用星号表示,如欲配 置172.16.1.* 的局域网下所有机器都可以访问,则配置为 172.16.1.0/24。
-
rw: 表示客户机的权限,rw表示可读写,具体的权限还受文件系统的rwx及用户身份影响。
-
sync:资料同步写入到内存与硬盘中。
-
anonuid=1000:将客户机上的用户映射成指定的本地用户ID的用户,此处1000是主机用户的uid,此处请根据具体的主机用户uid进行配置。
-
anongid=1000: 将客户机上的用户映射成属于指定的本地用户组ID,此处1000是主机用户组gid,此处请根据具体的主机用户组gid进行配置。
-
no_subtree_check:不检查子目录权限,默认配置。
用户id可以通过命令id查看
id
更新exports配置
sudo exportfs -arv
查看NFS共享情况
showmount -e