NFS文件共享服务器搭建

Ubuntu18.04环境

一、服务端

  1. 安装NFS服务器(监听端口为2049)
  2. 创建目录
  3. 通过/etc/exports为客户端分配服务器访问权限
  4. 共享/etc/exports中的所有目录
  5. 查看共享目录信息
sudo apt update
sudo apt install nfs-kernel-server
sudo mkdir /data
sudo echo "/data   10.10.8.0/24(rw,sync,no_root_squash,no_all_squash,no_subtree_check)" >> /etc/exports
exportfs -a
exportfs -v
sudo systemctl start nfs
sduo systemctl enable nfs


rw:可读,可写,
sync:同步写,即确保在数据真正写入存储设备才返回成功的信息,
no_root_squash:将远程root账户转换为本机root账号进行读写操作
no_all_squash:保留共享文件的UID和GID
no_subtree_check:不检查父目录权限

/etc/exports的共享条目语法结构(客户端主机可以是一个网段,单台主机或主机名)

共享路径 客户端主机 (选项)
共享路径 客户端主机1 (选项)客户端主机2 (选项)

二、客户端

  1. 安装NFS客户端
  2. 创建目录挂载远程共享目录
  3. 挂载
  4. 开机启动挂载
sudo apt update
sudo apt install nfs-common
sudo mkdir /data
sudo mount -t nfs 10.10.8.90:/data  /data
echo "10.10.8.90:/data /data nfs defaults 0 0" >> /etc/fstab

mount -t nfs 服务主机:/服务器共享目录  /本地挂载目录

三、测试

在客户端创建文件,服务端是否可见
在服务端创建文件,客户端是否可见

四、命令工具

esportfs

  • -r 重新读取/etc/exports文件
  • -a 全部共享
  • -u 与-a使用,可取消全部共享

五、备注

常见问题分析:
默认情况客户端使用root访问NFS共享进行读写操作时,服务器会自动把root转换为服务器本机的nobody账号,这回导致root无法进行相应的操作,如果要保留root权限,则需要在配置文件中添加no_root_squash选项。

你可能感兴趣的:(NFS文件共享服务器搭建)