前言
ubuntu下搭建nfs会遇到一些细节性的小问题,在这里记录一下。
环境:Ubuntu16.04。
快速搭建的步骤
这里不赘述搭建的原理选项之类,晚上很多,这里只记录下如何最快速的搭建nfs。
1.首先新建一个用来共享文件的文件夹,一般是放在用户目录里面的。
如下图所示,在家目录下新建一个文件夹叫linuxshare。这里出现了一个需要注意的点就是只看当前界面的话可能会认为这个新文件夹的目录是/home/linuxshare
。但是实际上并非如此,在home目录后面其实是当前用户的用户目录,只是在显示界面中看不出而已。其实该文件的路径为 /home/用户名/linuxshare
。
打开/etc/export文件编辑内容:
sudo gedit /etc/export
原先的文件应该全是注释,没有实际内容,无需搭理。在文件的最后加上:
/home/用户目录名称/linuxshare *(rw,sync,no_root_squash,no_subtree_check)
关键字解读:
文件绝对路径
,这个没什么好说的,知道路径才能设定共享用的文件夹。
*
*号意味着任意网段的ip地址都可以访问,虽然比较随意,胜在省事。
rw
,这个文件夹当然要能读能写。
sync
,同步传输,文件要立刻传输到文件夹中而不是在缓冲区等着。
no_root_squash
,非主机的用户对该文件夹有完全控制的权限。
no_subtree_check
,当前新版本的nfs必须添加的一个属性。
保存后输入以下命令即可:
sudo exportfs -arv
遇到的两个问题
1.neither ‘subtree_check’ or ‘no_subtree_check’ specified for export…
这个问题根源在于目前最新版本的nfs新加了这个属性subtree_check和no_subtree_check,如果按照以前的资料进行配置的话会忽略掉这个属性。
2.exportfs:Failed to stat…no such file or directory
这个问题根本在于绝对路径写的有错,就像前文提到的很有可能在路径中忘记了用户目录。