Ubuntu 16.04安装配置NFS(转)

转(http://blog.topspeedsnail.com/archives/908

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 Filesystem Size Used Avail Use% Mounted on udev 861M 0 861M 0% /dev tmpfs 175M 5.7M 170M 4% /run /dev/sda9 98G 41G 52G 45% / tmpfs 875M 424K 875M 1% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 875M 0 875M 0% /sys/fs/cgroup tmpfs 175M 0 175M 0% /run/user/127 tmpfs 175M 16K 175M 1% /run/user/119 tmpfs 175M 20K 175M 1% /run/user/0 192.168.0.100:/var/nfs/sharedir 29G 4.5G 23G 17% /nfs/sharedir 192.168.0.100:/home 29G 4.5G 23G 17% /nfs/home

现在你可以使用共享目录了。
使用完之后不要忘了卸载:

$ 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

推荐阅读更多精彩内容