NFS服务器配置

NFS服务器配置

要求

在Vmware虚拟机中启动两台Linux系统

一台作为NFS服务器,本例中给出的IP地址为192.168.5.20

一台作为NFS客户端,本例中给出的IP地址为192.168.5.10

配置一个NFS服务器,使得客户机可以浏览NFS服务器中/home/ftp目录下的内容,但不可以修改。

虚拟机网络采用nat静态,与Vmnet8同一网段。

步骤

服务器的配置

  1. 检测安装NFS所需的软件包
1
2
3
4
# rpm -qa nfs-utils
# rpm -qa rpcbind
# rpm install nfs-utils
# rpm install rpcbind
  1. 修改配置文件

修改配置文件/etc/exports,添加行:/home/ftp 192.168.5.10(ro)

ro表示只读

1
# vi /etc/exports

添加允许的ip

1
# /home/ftp 192.168.5.10(ro)

表示将文件共享到IP为192.168..10的主机,方式为只读。修改后,存盘退出

  1. 启动NFS服务
1
2
3
4
# systemctl start rpcbind
# systemctl enable rpcbind
# systemctl start nfs
# systemctl enable nfs
  1. 配置并重启防火墙
1
2
3
4
5
6
# firewall-cmd --permanent --add-port=111/tcp
# firewall-cmd --permanent --add-port=111/udp
# firewall-cmd --permanent --add-port=2049/tcp
# firewall-cmd --permanent --add-port=2049/udp
# firewall-cmd --permanent --add-port=20048/tcp
# firewall-cmd --permanent --add-port=20048/udp

或者直接开启相关服务

1
# firewall-cmd --permanent --add-service=nfs
  1. 检查NFS服务器的状态
1
2
3
# showmount -e 127.0.0.1
Export list for 127.0.0.1:
/home/ftp 192.168.5.20
  1. 创建一个文件
1
2
# cd /home/ftp
# echo "hello" > text.txt

客户机的配置

  1. 安装nfs-utils客户端
1
# yum install nfs-utils
  1. 显示NFS服务器上的共享目录
1
2
3
# showmount -e 192.168.5.20
Export list for 192.168.5.20
/home/ftp/192.168.5.10
  1. 挂载服务器网络文件夹

将NFS服务器(192.168.5.20)上的/home/ftp目录安装到本地机192.168.222.2的/home/test目录下。

1
2
# mount 192.168.5.20:/home/ftp /home/test
# mount | grep nfs
  1. 查看文件夹内容

挂载成功后可以利用ls等命令操作/home/test目录,实际操作的为192.168.5.20服务器上/home/ftp目录下的内容

1
# ls /home/test
  1. 卸载共享目录
1
2
3
# umount /home/test
# ls /home/test
# mount | grep nfs

注意

  • 控制客户端读写权限的参数是/etc/exports文件路径里的:

    ro:只读设置,这样NFS客户端只能读、不能写(默认设置)

    rw:读写设置,NFS 客户端可读写

  • 客户机只需要安装nfs客户端nfs-utils,不需要rpcbind服务

  • NFS服务开启后,还需要给服务器的防火墙端口配置启动状态,否则,即使客户机能找到服务器地址也不能访问NFS服务。NFS默认端口为111、2049、20048

  • 未配置好防火墙或者服务器主机未将客户机IP纳入exports允许范围时,出现:

    1
    mount.nfs:access denied by server while mounting 192.168.5.20:/home/ftp 
  • 若想同时允许一个网段192.168.5.0的所有主机读写访问,可以在exports里编辑:

    1
    home/ftp 192.168.5.*(rw)