NFS允许用户通过网络分享目录和文件,客户端用户可以像操作本地文件一样操作服务端文件。
NFS服务端 安装nfs-kernel-server: $ sudo apt install nfs-kernel-server
NFS客户端 安装 nfs-common: $ sudo apt install nfs-common
服务端创建共享目录 客户端通过远程挂载的方式访问服务端共享目录,为了说明两种不同的文件权限,我会使用不同的选项创建两个共享目录。 默认情况下客户端不允许在NFS共享目录上执行root操作,如:更改文件所有权等。 但是有时用户需要用root权限操作NFS共享目录,这可以通过配置实现。
1.创建默认配置的共享目录 创建一个目录: $ sudo mkdir -p /var/nfs/sharedir 更改目录权限: $ sudo chown nobody:nogroup /var/nfs/sharedir
2.以root权限共享home目录 配置NFS: $ sudo vim /etc/exports 语法: 共享目录 client(选项,...,选项) /var/nfs/sharedir *(rw,sync,no_subtree_check) /home *(rw,sync,no_root_squash,no_subtree_check) # 要限制客户端IP # /var/nfs/sharedir 122.111.222.111(rw,sync,no_subtree_check) # /home 122.111.222.111(rw,sync,no_root_squash,no_subtree_check) 重启nfs-kernel-server: $ sudo systemctl restart nfs-kernel-server 如果开启了防火墙,打开NFS的2049端口。
客户端挂载共享目录 创建两个挂载点: $ sudo mkdir -p /nfs/sharedir $ sudo mkdir -p /nfs/home 挂载远程共享目录: $ sudo mount your_nfs_server_ip:/var/nfs/sharedir /nfs/sharedir $ sudo mount your_nfs_server_ip:/home /nfs/home 查看挂载点: $ df -h
现在你可以使用共享目录了。 使用完之后不要忘了卸载: $ sudo umount /nfs/home $ sudo umount /nfs/sharedir
开机自动挂载NFS共享目录 编辑fstab文件: $ sudo vim /etc/fstab 添加如下两行: your_nfs_server_Ip:/var/nfs/sharedir /nfs/sharedir nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0 your_nfs_server_Ip:/home /nfs/home nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0 |