e-works数字化企业网  »  文章频道  »  基础信息化  »  终端和服务器

NFS服务器的安装与配置

2018/1/31    来源:微信    作者:佚名      
关键字:NFS服务器  服务器  
NFS 是Network File System的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。

    用户映射选项
    
    all_squash:将远程访问的所有普通用户及所属组都映射为匿名用户或用户组(nfsnobody);
    
    no_all_squash:与all_squash取反(默认设置);
    
    root_squash:将root用户及所属组都映射为匿名用户或用户组(默认设置);
    
    no_root_squash:与rootsquash取反;
    
    anonuid=xxx:将远程访问的所有用户都映射为匿名用户,并指定该用户为本地用户(UID=xxx);
    
    anongid=xxx:将远程访问的所有用户组都映射为匿名用户组账户,并指定该匿名用户组账户为本地用户组账户(GID=xxx);
 
    其它选项
    
    secure:限制客户端只能从小于1024的tcp/ip端口连接nfs服务器(默认设置);
    
    insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
    
    sync:将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性;
    
    async:将数据先保存在内存缓冲区中,必要时才写入磁盘;
    
    wdelay:检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率(默认设置);
    
    no_wdelay:若有写操作则立即执行,应与sync配合使用;
    
    subtree:若输出目录是一个子目录,则nfs服务器将检查其父目录的权限(默认设置);
    
    no_subtree:即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率;
 
    六、NFS服务器的启动与停止
 
    在对exports文件进行了正确的配置后,就可以启动NFS服务器了。
 
    1、启动NFS服务器
 
    为了使NFS服务器能正常工作,需要启动portmap和nfs两个服务,并且portmap一定要先于nfs启动。
 
    # service portmap start
 
    # service nfs start
 
    2、查询NFS服务器状态
 
    # service portmap status
 
    # service nfs status  
 
    3、停止NFS服务器
 
    要停止NFS运行时,需要先停止nfs服务再停止portmap服务,对于系统中有其他服务(如NIS)需要使用时,不需要停止portmap服务
 
    # service nfs stop
 
    # service portmap stop
 
    4、设置NFS服务器的自动启动状态
 
    对于实际的应用系统,每次启动LINUX系统后都手工启动nfs服务器是不现实的,需要设置系统在指定的运行级别自动启动portmap和nfs服务。
 
    # chkconfig --list portmap
 
    # chkconfig --list nfs
 
    设置portmap和nfs服务在系统运行级别3和5自动启动。
 
    # chkconfig --level 35 portmap on
 
    # chkconfig --level 35 nfs on
 
    七、实例
 
    1、将NFS Server 的/home/david/ 共享给192.168.1.0/24网段,权限读写。
 
    服务器端文件详细如下:
 
    # vi /etc/exports
 
    /home/david 192.168.1.0/24(rw)
 
    2、重启portmap 和nfs 服务
 
    # service portmap restart
 
    # service nfs restart
 
    # exportfs
 
    3、服务器端使用showmount命令查询NFS的共享状态
 
    # showmount -e    //默认查看自己共享的服务,前提是要DNS能解析自己,不然容易报错
 
    # showmount -a    //显示已经与客户端连接上的目录信息
 
    4、客户端使用showmount命令查询NFS的共享状态
 
    # showmount -e NFS服务器IP
 
    5、客户端挂载NFS服务器中的共享目录
 
    命令格式
 
    # mount NFS服务器IP:共享目录 本地挂载点目录
 
    # mount 192.168.1.108:/home/david/ /tmp/david/
 
    # mount |grep nfs
 
    挂载成功。
 
    查看文件是否和服务器端一致。
 
    6、NFS的共享权限和访问控制
 
    现在我们在/tmp/david/ 里面建立一个文件,看看权限是什么
 
    # touch 20130103
 
    这里出现Permission denied,是因为NFS 服务器端共享的目录本身的写权限没有开放给其他用户,在服务器端打开该权限。
 
    # chmod 777 -R /home/david/
 
    再次在客户端/tmp/david/ 里面建立一个文件
 
    我用root 用户建立的文件,变成了nfsnobody 用户。
 
    NFS有很多默认的参数,打开/var/lib/nfs/etab 查看分享出来的/home/david/ 完整权限设定值。
 
    # cat /var/lib/nfs/etab
 
    默认就有sync,wdelay,hide 等等,no_root_squash 是让root保持权限,root_squash 是把root映射成nobody,no_all_squash 不让所有用户保持在挂载目录中的权限。所以,root建立的文件所有者是nfsnobody。

责任编辑:李欢
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐