NFS服务简单配置手记

Linux学习-服务器B挂载服务器A的磁盘

环境: CentOS 7.0

1.centos中服务器B挂载服务器A的磁盘

服务器A:101,.10.0.1

服务器B:101.10.12.1

前提:保证服务器A、B都有/ifs/data/文件夹

目的:在服务器B上把服务器A的/ifs/data/文件夹挂载到自己的/ifs/data/文件夹下。

Step1.编辑服务器A的/etc/exports文件

# vi/etc/exports1

添加下列内容,让其对服务器B添加信任功能

/ifs/data 101.10.12.1 (rw,no_root_squash,no_all_squash,sync)1

输入下面命令,使配置生效

exportfs -r1

Step2.在服务器B上挂载共享磁盘

在服务器B上挂载服务器A的磁盘,输入命令:

使用mount挂载,只能当次生效,重启后无效,命令如下

mount -t nfs 101.10.0.1:/ifs/data /ifs/data1

如果想要重启后也生效,需要修改服务器B的/etc/fstab文件

vi /etc/fstab1

添加下列内容

101.10.0.1:/ifs/data /ifs/data nfs defaults 0 01

使用:wq保存退出后,可以使用mount -a命令查看是否可以成功挂载。


图片 1


环境: CentOS
7.0 1.centos中服务器B挂载服务器A的磁盘 服务器A:101,.10.0.1
服务器B:101.10.12.1 前提:保证服…

CentOS7.2中安装NFS1.3

NFS(network file
system)网络文件系统,类似Windows中的文件夹共享,如下有三台机器A, B,
C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A,
B,
C。但是使用NFS只需要放到A上,然后A共享给B和C即可。访问的时候,B和C是
通过网络的方式去访问A上的那个目录。

图片 2

一、在A机上安装 NFS 服务器所需的软件包:
yum install -y nfs-utils

(实际上需要安装两个包nfs-utils和rpcbind,
不过当使用yum安装nfs-utils时会把rpcbind一起安装上)

二、编辑exports文件,添加从机
vim /etc/exports
/home/nfs 192.168.222.201(rw,sync,fsid=0)
192.168.222.202(rw,sync,fsid=0)

配置说明:

这一行分为三个部分:

第一部分:/home/nfs ,这个是本地要共享出去的目录。

第二部分:192.168.222.0/24
,允许访问的主机,可以是一个IP:192.168.222.201,也可以是一个IP段:192.168.222.0/24

第三部分:括号中部分。

  • rw表示可读写,ro只读;

  • sync :同步模式,内存中数据时时写入磁盘;async
    :不同步,把内存中数据定期写入磁盘中;

  • no_root_squash
    :加上这个选项后,root用户就会对共享的目录拥有至高的权限控制,就像是对本机的目录操作一样。不安全,不建议使用;root_squash:和上面的选项对应,root用户对共享目录的权限不高,只有普通用户的权限,即限制了root;all_squash:不管使用NFS的用户是谁,他的身份都会被限定成为一个指定的普通用户身份;

  • anonuid/anongid :要和root_squash
    以及all_squash一同使用,用于指定使用NFS的用户限定后的uid和gid,前提是本机的/etc/passwd中存在这个uid和gid。

  • fsid=0表示将/home/nfs整个目录包装成根目录

这个配置文件也可以这样写:
/opt/test/
192.168.222.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)

三、启动A机上nfs服务
先为rpcbind和nfs做开机启动:
systemctl enable rpcbind.service
systemctl enable nfs-server.service

然后分别启动rpcbind和nfs服务:
systemctl start rpcbind.service
systemctl start nfs-server.service

确认NFS服务器启动成功:
rpcinfo -p
通过查看service列中是否有nfs服务来确认NFS是否启动。

showmount -e 192.168.222.200

查看可挂载目录及可连接的IP

四、关闭A机上的防火墙或者给防火墙配置nfs的通过规则

还是关闭简单啊!

systemctl stop firewalld.service

五、在B,C机上配置clinet端

1、安装nfs,并启动服务。

yum install -y nfs-utils

systemctl enable rpcbind.service

systemctl start rpcbind.service

客户端不需要启动nfs服务,只需要启动rpcbind服务.

2、检查 NFS 服务器端是否有目录共享

showmount -e 192.168.222.200

3、使用 mount 挂载A服务器端的目录/home/nfs到客户端B的目录/home/nfs下

[[email protected]
~]# mkdir /home/nfs
[[email protected]
~]# mount -t nfs 192.168.222.200:/home/nfs/ /home/nfs/
[[email protected]
~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 11G 1.3G 9.1G 13% /
devtmpfs 911M 0 911M 0% /dev
tmpfs 921M 0 921M 0% /dev/shm
tmpfs 921M 8.5M 912M 1% /run
tmpfs 921M 0 921M 0% /sys/fs/cgroup
/dev/sda1 497M 170M 328M 35% /boot
tmpfs 185M 0 185M 0% /run/user/0
192.168.222.200:/home/nfs 11G 1.3G 9.1G 13% /home/nfs

4、挂载完成,可以正常访问本机下的/home/nfs,如果在服务端A在共享目录/home/nfs中写入文件,B、C机上可以看到,但是不能在这个目录中写入文件.

六、在服务器端A再建立一个共享目录,并且可以允许A、B、C写入共享目录

1、在B、C机上取得root用户ID号

[[email protected]
home]# id root
uid=0(root) gid=0(root) 组=0(root)

2、在A服务器上再建立一个共享目录

mkdir /home/nfs1

# vim /etc/exports
/home/nfs 192.168.222.201(rw,sync,fsid=0)
192.168.222.202(rw,sync,fsid=0)
/home/nfs1 192.168.222.0/24(rw,sync,all_squash,anonuid=0,anongid=0)

加入第二行,anonuid=0,anongid=0即为root用户id。

3、让修改过的配置文件生效

exportfs –arv

使用exportfs命令,当改变/etc/exports配置文件后,不用重启nfs服务直接用这个exportfs即可,它的常用选项为[-aruv].
-a :全部挂载或者卸载;
-r :重新挂载;
-u :卸载某一个目录;
-v :显示共享的目录;

4、 查看新的可挂载目录及可连接的IP

showmount -e 192.168.222.200

5、在B、C clinet端新挂载一个目录

showmount -e 192.168.222.200 #查看新的挂载共享目录是否有了。

mkdir nfs1
mount -t nfs 192.168.222.200:/home/nfs1/ /home/nfs1/
ll / >/home/nfs1/ll.txt #测试向新的共享目录中可以写入文件了。
(卸载挂载:umount /home/nfs1/)

6、想在客户机B、C上实现开机挂载,则需要编辑/etc/fstab:

vim /etc/fstab

加入以下内容:

192.168.222.200:/home/nfs /home/nfs nfs nolock 0 0
192.168.222.200:/home/nfs1 /home/nfs1 nfs nolock 0 0

保存后,重新挂载

mount -a

NFS(network file
system)网络文件系统,类似Windows中的文件夹共享,如下有三台机器A, B,
C,它们需要访问同一个目录,目录中…

NFS服务简单配置手记

NFS服务在实际工作中配置十分频繁,这里简要记录下配置过程。默认情况下NFS服务相关软件包已经安装好,只是NFS服务不是开机自启动。只需要配置NFS服务器开机自启动即可。其它portmap等服务都是开机自启的。

  1. NFS服务端简单要配置过程如下

(1) 启动nfs服务

# chkconfig nfs on 
# service nfs start

(2) 配置共享输出目录

# vi /etc/exports 
/data      192.168.233.*(rw,no_root_squash)

(3)
重新读取配置文件生效,无用重启nfs服务,可以直接添加输出目录,并直接生效。

# exportfs –rf

  1. 客户端配置

(1) 客户机看到服务器nfs输出目录

# showmount -e 192.168.233.150 
Export list for 192.168.233.150:   
/data 192.168.233.*

(2) 客户机挂载nfs存储,手动挂载

# mount -t nfs 192.168.233.150:/data  /data  -o
rw,rsize=32768,wsize=32768,hard

(3) 配置开机自动挂载nfs

# vi /etc/fstab 
192.168.233.150:/data  /data  nfs  hard,rw,rsize=32768,wsize=32768 0 0

(4) 或配置了/etc/fstab之后,可以直接mount挂载

mount /data

(5) 卸载nfs挂载

umount /data

  1. 强行取消mount挂载

在nfs无法连接的情况下,mount的远程目录无法响应,执行df -h
通常会无法响应。

# df -h 
# ls -l /data   
# umount -f /data 均无法取消挂载。

解决方法如下:

最消最后一行的nfs mount挂载的命令

# vi /etc/mtab   
192.168.233.150:/data /data nfs
rw,hard,rsize=32768,wsize=32768,addr=192.168.233.150 0 0

重新启动autofs服务后,自然就卸载掉了。 
# service autofs restart