Linux的下nfs的设置使用
nfs是一种分布式网络文件系统,对于需要离散存储大量文件的用户而言是一个很好的选择。另外,在嵌入式的应用中也是一个很好的debug应用,这里我不介绍这个领域的内容。
首先确认系统的网络服务已经开启(nfs依赖网络服务),方法是使用ntsysv命令;
第二,nfs需要开启,我一般是用ps命令查看nfsd是否运行(如果系统没有nfs服务,必须安装相应的软件包,另外kernel也必须在file system中选择支持nfs!);
以上确认完毕,我们已经有了一个nfs的工作环境。下面介绍一下nfs的工作原理以及设置的方法。
nfs是一种基于C-S工作方式的服务,server端将自己希望export除去的磁盘文件以一种特定的访问权限提供给client端,当server端的服务daemon发现有nfs服务请求的情况下,便根据管理员的权限设置(一般有一个配置文件/etc/exports)进行授权性质的服务(读写等)。
/etc/exports这个配置文件用于配置nfs server端对外开放的磁盘文件资源以及相应的权限。
资源名字 允许谁访问(远端的IP或者hostname) 访问的控制
/home/ 10.10.10.4(stephen_station) (ro, sync)
对于每个字段都可以使用“*”表示通配,详细的控制下面一一介绍:
资源名字
/root/*
访问的控制
(ro, sync, no_root_squash)
可以设定的参数主要有以下这些:
rw:可读写的权限;
ro:只读的权限;
no_root_squash:登入到NFS主机的用户如果是ROOT用户,他就拥有ROOT的权限,此参数很不安全,建议不要使用。
root_squash:
all_squash:不管登陆NFS主机的用户是什么都会被重新设定为nobody。
anonuid:将登入NFS主机的用户都设定成指定的user id,此ID必须存在于/etc/passwd中。
anongid:同 anonuid ,但是?成 group ID 就是了!
sync:资料同步写入存储器中。
async:资料会先暂时存放在内存中,不会直接写入硬盘。
insecure 允许从这台机器过来的非授权访问
以上是配置文件的内容,可以按照自己的需求进行添加。
对于nfs服务已经启动的情形必须使用exportfs -rv来激活上述配置,没有启动的直接使用service nfs start即可。
已经将希望供给别人访问的资源设置好了,client端只要使用mount -t nfs server_IP:/resource path /local dir即可client在本地访问server上的资源了。
如果希望开机即将上述资源mount好,那可以在/etc/fstab里面将命令添加进去就行了。例如:
10.10.10.4:/home/nfsdir /local dir nfs default 0 0
阅读(1244) | 评论(0) | 转发(0) |