NFS文件的配置

NFS是干什么的?

         开发时用到宿主机Windows系统、宿主机Llinux系统及目标机Linux系统,进程需要在不同文件之间进行共享文件。

          宿主机Windows系统、宿主机Llinux系统之间的文件共享需要通过配置samba来实现

         宿主机Llinux系统及目标机Linux系统之间的文件共享需要通过配置NFS(网络文件系统)来实现。

         NFS即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许一个系统在网络上与他人共享目录和文件,通过使用NFS,用户和程序可以向访问本地文件一样访问远端系统上的文件。


NFS服务器的配置

        etc/exports文件指定了哪个文件系统应该输出,该文件每行指定一个输出的文件系统,哪些机器可以访问文件系统以及访问权限。

格式:[共享目录][主机名1或IP1(参数1,参数2)][主机名2或IP2(参数3,参数4)]

共享目录是NFS客户端可以访问的目录,主机名或IP地址是要访问共享目录的主机名或者IP地址,当主机名或IP地址为空的时候,则代表共享给任意客户机提供服务。参数是可选的,当不指定参数时,NFS将使用默认选项,默认的选项是sync,ro,root_squash,no_delay。

下面是一些NFS共享的常用参数(记住一些默认的)。

ro:只读访问。

rw:读写访问。

sync:所有数据在请求时写入共享。

async:NFS在写入数据前可以响应请求。

secure:NFS通过1024以下的安全TCP/IP端口发送。

insecure:NFS通过1024以上的端口发送。

wdelay:如果多个用户要写入NFS目录,则归组写入(默认)。

no_wdelay:如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。

hide:在NFS共享目录下不共享其子目录。

no_hide:共享NFS目录的子目录。

subtree_check:如果共享/usr/bin之类的目录时,强制NFS检查父目录的权限(默认)。

no_subtree_check:和上面相对,不检查父目录权限。

all_squash:共享文件的UID和GID映射匿名用户anonymous,适合公用目录。

no_all_squash:保留共享文件的UID和GID(默认)。

root_squash:root用户的所有请求映射成匿名用户anonymous用户一样的权限(默认)。

      no_root_squas:root用户具有根目录的完全管理权限。

      anonuid=xxx:指定NFS服务器/etc/passwd文件中匿名用户的UID。

      anongid=xxx:指定NFS服务器/etc/passwd文件中匿名用户的GID。

 

eg:

创建共享文件目录/home/share,在该目录这种创建文件zgjtest,赋予202.202.159.*主机读写的权限,其他机器仅有只读的权限

#mkdir /home/share

#touch /etc/exports

#cd /etc

#gedit exports

在exports文件中添加:

/home/share 202.202.159.*(rw) *(ro)

 

PS:配置后需要重新启动NFS

你可能感兴趣的:(嵌入式,内核,nfs服务器)