Linux-NFS.md 2.8 KB

Linux NFS

NFS安装

$ yum install nfs-utils rpcbind

NFS服务配置

  • 启动NFS和RPC服务

    $ systemctl enable rpcbind
    $ systemctl enable nfs-server
    $ systemctl start rpcbind
    $ systemctl start nfs-server
    
  • 防火墙放通NFS

    $ firewall-cmd --permanent --add-service=nfs
    $ firewall-cmd --permanent --add-service=rpc-bind
    $ firewall-cmd --permanent --add-service=mountd
    $ firewall-cmd --reload
    
  • 共享目录配置

    • 创建共享目录

      # 创建共享目录,分配权限为nfsnobody用户和组
      
    • 配置exports文件

      $ vim /etc/exports
      # 格式如下
      # 目录    允许访问主机(参数)
      

配置文件参数

远程挂载

$ showmount -e "NFS服务器IP"	# 查看远程NFS节点
$ mount -t nfs "NFS服务器IP":"服务器路径" "本机路径"
参数 作用
ro 共享目录只读
rw 共享目录可读可写
all_squash 将所有用户都映射为匿名用户和用户组
no_all_squash(默认) 访问用户先于本机用户匹配,匹配失败后再映射为匿名或或用户组
root_squash(默认) 将来访的root用户映射为匿名用户或用户组
no_root_squash 来访root用户保持root账号权限
anonuid= 指定匿名访问用户的本地用户UID,默认为nfsnobody(65534)
anongid= 指定匿名用户访问用户的本地用户组GID,默认为nfsnobody(65534)
secure(默认) 限制客户端只能从小于1024的TCP/IP端口连接服务器
inSecure 允许客户端从大于1024的TCP/IP端口连接服务器
sync 将数据同步写入内存缓冲区与磁盘中,效率低,但可以保证数据的一致性
async 将数据先保存在内存缓冲区中,必要时才写入磁盘
wdelay(默认) 检查是否有相关的写操作,如果有则将这些写操作一起执行,这样可以提高效率
no_wdelay 若有写操作则立即执行,应于sync配合使用
subtree_check(默认) 若输出目录是一个子目录,则NFS服务器将检查其父目录的权限
no_subtree_check 即使输出目录是一个子目录,NFS服务器也不检查其父目录的权限,这样可以提高效率