嘘~ 正在从服务器偷取页面 . . .

Ubuntu 16.04配置NFS


NFS=Network File System,代表网络文件系统,这是一种在unix / Linux系统之间共享文件和文件夹的服务,
由SUN Microsystems在1990年开发。这里我们来演示一下如何在Ubuntu16.04上搭建NFS服务器。配置方法同样
使用于其它系统,如Debian 8,Ubuntu 17.10 / 17.04 / 15.10 / 15.04 / Ubuntu 14.04

环境:

NFS Server Hostname: nfs.cluster.local
NFS Server IP Address: 172.16.10.21 /16
NFS Client Hostname: nfsc.cluster.local
NFS Client IP Address: 172.16.10.22/16
注意:NFS服务器的IP地址请使用固定IP地址,不要使用DHCP分配方式

NFS主要的服务

rpcbind: rpcbind将RPC程序编号转换为通用地址,主要是在nfs共享时负责通知客户端服务器的nfs端口号
nfs:允许客户机访问nfs共享。
nlockmgr:当NFS服务器崩溃并重新启动时,NFS文件锁定实现了文件锁定恢复。
mountd:处理访问控制列表,以确定客户端是否允许访问NFS共享。

NFS主要配置文件

/etc/exports : 主配置文件。在这个文件中指定选项导出到远程主机的文件系统。
/etc/fstab : 此文件包含用于在系统引导时挂载所有文件系统(包括NFS)的条目。
/etc/hosts.allow, 和 /etc/hosts.deny : 通过这两个文件配置允许或禁止访问NFS

安装和配置NFS服务器

1,切换到root用户
sudo su -
2,安装NFS服务器所需要的包
apt-get install -y nfs-kernel-server

3,创建一个共享目录。在这里,我们将在根目录中创建一个名为nfsshare的新目录,并通过NFS共享此目录

允许客户端对目录有读写权限

修改/etc/exports文件以导出NFS共享
/nfsshare: #共享目录
172.16.0.0/16: #允许访问NFS服务器的IP地址段,这里也可以设置为单独的IP地址来只允许某个固定的IP访问
rw : #读写权限
sync : #文件系统的所有更改都立即刷新到磁盘
no_root_squash : 默认情况下,client端root用户创建的任何文件在服务器上都被视为“nobody”。如果设置了no_root_squash,那么client端root用户将具有与服务器端root用户相同的文件访问级别。
no_subtree_check : 即使输出目录是一个子目录,nfs服务器也不检查其父目录的权限,这样可以提高效率

4,输出共享目录并做本地验证
exportfs -ra
showmount -e 127.0.0.1

安装和配置NFS客户端

1,切换到root用户
sudo su -
2,安装NFS客户端所需要的包
apt-get -y install nfs-common

3,查看服务器上的NFS共享是否可见
showmount -e 172.16.10.21

4,挂载NFS共享目录
mkdir /mnt/share
mount 172.16.10.21:/nfsshare /mnt/share

5,确认挂载可见
mount grep nfs
df -hT

6,验证写权限
touch /mnt/share/test

7,确认NFS目录可以正常使用后,设置开机自动挂载
编辑/etc/fstab,增下一行如下:
172.16.10.21:/nfsshare /mnt/share nfs rw,sync hard,intr 0 0

8,编辑完成后,保存配置文件并退出,reboot系统
系统重启后,检查自动挂载是否生效

9,向NFS共享止录中写入测试文件,到这里NFS共享就配置完成了。


文章作者: kclouder
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 kclouder !
  目录