NFS服务搭建
xy12306 Lv2

一、环境准备

为了搭建并且检验NFS服务的配置,我们需要准备两台安装Linux系统(这里以Centos7为例)的服务器,一台充当NFS服务端,开放共享目录,提供NFS存储服务;一台充当NFS客户端,挂载服务端共享目录到本地,使用NFS存储服务。

类型 IP
服务端 192.168.196.46
客户端 192.168.196.47

1. 关闭防火墙

1
2
3
4
5
6
# 关闭防火墙
systemctl stop firewalld
# 禁止防火墙开机自启动
systemctl disable firewalld
# 查看防火墙状态
systemctl status firewalld

将未注释的SELINUX行的值改为disabled
vim /etc/sysconfig/selinux
SELINUX=disabled

二、服务端安装配置NFS服务(需要先关闭防火墙)

1. 安装nfs-utils与rpcbind

1
yum -y install nfs-utils rpcbind

2. 编辑nfs的配置文件

  • 编辑nfs配置文件(默认空的)IP改为自己的IP

    vim /etc/exports

1
2
/public 192.168.196.46/24(rw)
/protected 192.168.196.46/24(rw)
  • 创建文件夹并启动
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 创建文件夹
mkdir /public
mkdir /protected

# 使配置生效
exportfs -r

# 按照顺序启动
systemctl start rpcbind
systemctl start nfs

# 设置开机自启动
systemctl enable rpcbind
systemctl enable nfs

# 校验配置
showmount -e localhost

3.使用rpcinfo -p查看并验证

[root@localhost ~] rpcinfo -p

program vers proto port service

100000 4 tcp 111 portmapper

100000 3 tcp 111 portmapper

100000 2 tcp 111 portmapper

100000 4 udp 111 portmapper

100000 3 udp 111 portmapper

100000 2 udp 111 portmapper

100024 1 udp 43763 status

100024 1 tcp 59968 status

100005 1 udp 20048 mountd

100005 1 tcp 20048 mountd

100005 2 udp 20048 mountd

100005 2 tcp 20048 mountd

100005 3 udp 20048 mountd

100005 3 tcp 20048 mountd

100003 3 tcp 2049 nfs

100003 4 tcp 2049 nfs

100227 3 tcp 2049 nfs_acl

100003 3 udp 2049 nfs

100003 4 udp 2049 nfs

100227 3 udp 2049 nfs_acl

100021 1 udp 51863 nlockmgr

100021 3 udp 51863 nlockmgr

100021 4 udp 51863 nlockmgr

100021 1 tcp 32832 nlockmgr

100021 3 tcp 32832 nlockmgr

100021 4 tcp 32832 nlockmgr

三、客户端配置(需要先关闭防火墙)

1. 安装nfs但无需启动

1
yum -y install nfs-utils rpcbind

2. 查看服务端挂载的目录 用自己的IP地址

[root@localhost data] showmount -e 192.168.196.46

Export list for 192.168.196.46:

/protected 192.168.196.46/24

/public 192.168.196.46/24

3. 挂载要共享的目录

1
2
3
# 创建新文件夹
mkdir -p /mnt/public
mkdir -p /mnt/data
1
2
3
4
# 挂载目录--两种方法二选一(ip改为自己的ip)
#(第一种方法,不会开机自启自动挂载)
mount -t nfs 192.168.196.46:/public /mnt/public
mount -t nfs 192.168.196.46:/protected /mnt/data
1
2
3
4
5
#(第二种方法,可以开机自启自动挂载)
vim /etc/fstab
192.168.196.46:/public /mnt/publicnfs defaults 0 0
192.168.196.46:/protected /mnt/datanfs defaults 0 1
mount -a #使配置生效

查看挂载盘
df -h

文件系统 容量 已用 可用 已用% 挂载点

devtmpfs 898M 0 898M 0% /dev

tmpfs 910M 0 910M 0% /dev/shm

tmpfs 910M 9.6M 901M 2% /run

tmpfs 910M 0 910M 0% /sys/fs/cgroup

/dev/mapper/centos-root 17G 1.8G 16G 11% /

/dev/sda1 1014M 153M 862M 16% /boot

tmpfs 182M 0 182M 0% /run/user/0

192.168.196.46:/public 17G 1.8G 16G 11% /mnt/public

192.168.196.46:/protected 17G 1.8G 16G 11% /mnt/data

四、验证测试

  1. 在服务端的 /public 目录中创建一个文件(如a.txt),然后去客户端本地 /mnt/public 目录中查看,若存在a.txt,则说明配置成功
  2. 在客户端本地 /mnt/public 目录中创建一个文件(如b.txt),然后去服务端的 /public 目录中查看,若存在b.txt,则说明配置成功
  3. 同理测试另一个挂载目录

image
客户端无法创建文件,权限不足解决

在服务端做目录权限的更改

1
2
3
4
5
6
7
cd /
sudo chown nfsnobody public
sudo chgrp nfsnobody public

cd /
sudo chown nfsnobody protected
sudo chgrp nfsnobody protected
 请作者杯咖啡
由 Hexo 驱动 & 主题 Keep
访客数 访问量