您的位置:永利集团登录网址 > 永利集团登录网址 > nfs挂载配置

nfs挂载配置

2019-11-09 01:41

1.下载并安装nfs组件
 # su root
 # yum install portmap nfs-utils
 
2.打开nfs配置文件
 # vi /etc/exports
 
3.添加1行如下
 /study/upmagic6410 *(sync,rw,no_root_squash)
 
PS:*表示所有IP,如果指定IP访问,则可以直接替换为指定IP;
 rw表示可读写权限;
 no_root_squash表示当登陆nfs主机使用共享目录的使用者是root时,其权限将被转换成为匿名使用者(nobody);
 
4.保存exports
 (:wq)
 
5.创建共享目录,并设置权限
 # mkdir /study/upmagic6410
 # chmod 777 /study/upmagic6410
 
6.禁用防火墙(也可以通过配置防火墙)
 # setup
 将firewall选项中的enable取消调,然后保存退出
 
7.配置开机启动及启动nfs-server
 # systemctl enable nfs-server.service
 
PS:nfs-server检查是否开启
 # systemctl is-enabled nfs-server.service
 
PS:手动开启、关闭nfs-server的命令为
 # systemctl start nfs-server.service
 # systemctl stop nfs-server.service
 
10.在其他Linux主机上挂载nfs
 # mount x.x.x.x:/study/upmagic6410 /mnt/nfs
 
PS:x.x.x.x是nfs服务的ip地址。图片 1

nfs挂载步骤

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

服务器端

1.安装nfs-utils rpcbind

图片 2

$sudo yum –y install nfs-utils rpcbind

一、在A机上安装 NFS 服务器所需的软件包

yum install -y nfs-utils

yum install -y  rpcbind

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

2.文件开放出去配置/etc/exports

二、编辑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)

NFS 修改配置文件后无需重启服务,如下命令刷新即可:

exportfs   -rv

例子:/opt/data IP(rw, no_root_squash,no_all_squash,sync)

三、启动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

3.执行配置文件/etc/exports

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

iptables  -F

systemctl stop firewalld.service

$exportfs -r

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

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

yum install -y  rpcbind

systemctl start rpcbind.service

systemctl enable rpcbind.service

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

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

showmount -e 192.168.222.200

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

[root@localhost ~]# mkdir /home/nfs

[root@localhost ~]# mount -t nfs192.168.222.200:/home/nfs//home/nfs/

[root@localhost ~]# 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机上可以看到,但是不能在这个目录中写入文件.

4.Nfs配置生效并使rpcbind和nfs服务开机启动

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

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

[root@localhost 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  -rv

使用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/test.txt   #测试向新的共享目录中可以写入文件了。

(卸载挂载:umount /home/nfs1/)

6、想在客户机B、C上实现开机挂载,则需要编辑/etc/fstab或者将挂载命令写入到 /etc/rc.local

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

vim /etc/rc.local

mount  -t nfs  192.168.222.200:/home/nfs1/  /home/nfs1/

$sudo systemctl enable rpcbind

$sudo systemctl enable nfs(当报错时可改为: $sudo systemctl enable nfs-server.service)

$sudo systemctl start rpcbind

$sudo systemctl start nfs(当报错时可改为:$sudo systemctl start nfs-server.service)

$sudo systemctl status rpcbind

$sudo systemctl staus nfs(当报错时可改为:$sudo systemctl status nfs-server.service)

5.查看挂载命令

$showmount –e IP

6.客户端挂载步骤

1)安装nfs-utils rpcbind(同上)**

**2)Nfs配置生效并使rpcbind和nfs服务开机启动(同上)**

**3)挂载命令(IP为服务器端ip地址)**

$sudo mount –t nfs IP:/opt/data /opt/data

以下为nfs资料

一、NFS服务器的设定

NFS服务器的设定可以通过/etc/exports这个文件进行,设定格式如下:

分享目录      主机名称或者IP(参数1,参数2)

/arm2410s   10.22.22.*(rw,sync,no_root_squash)

可以设定的参数主要有以下这些:

rw:可读写的权限;
ro:只读的权限;
no_root_squash:登入到NFS主机的用户如果是root,该用户即拥有root权限;
root_squash:登入NFS主机的用户如果是root,该用户权限将被限定为匿名使用者nobody;
all_squash:不管登陆NFS主机的用户是何权限都会被重新设定为匿名使用者nobody。
anonuid:将登入NFS主机的用户都设定成指定的user id,此ID必须存在于/etc/passwd中。
anongid:同anonuid,但是变成group ID就是了!
sync:资料同步写入存储器中。
async:资料会先暂时存放在内存中,不会直接写入硬盘。
nfs挂载配置。insecure:允许从这台机器过来的非授权访问。
例如可以编辑/etc/exports为:
/tmp     *(rw,no_root_squash)
/home/public 192.168.0.*(rw)   *(ro)
/home/test  192.168.0.100(rw)
/home/Linux  *.the9.com(rw,all_squash,anonuid=40,anongid=40)
设定好后可以使用以下命令启动NFS:
/etc/rc.d/init.d/portmap start (在REDHAT中PORTMAP是默认启动的)
/etc/rc.d/init.d/nfs start
exportfs命令
如果我们在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs命令来使改动立刻生效,该命令格式如下:
exportfs [-aruv]
-a :全部mount或者unmount /etc/exports中的内容
-r :重新mount /etc/exports中分享出来的目录
-u :umount 目录
-v :在 export 的时候,将详细的信息输出到屏幕上。

二、NFS客户端的操作:
1、showmout命令对于NFS的操作和查错有很大的帮助,所以我们先来看一下showmount的用法
showmout
-a :这个参数是一般在NFS SERVER上使用,是用来显示已经mount上本机nfs目录的cline机器。
-e :显示指定的NFS SERVER上export出来的目录。
2、mount nfs目录的方法:
mount -t nfs hostname(orIP):/directory /mount/point

本文由永利集团登录网址发布于永利集团登录网址,转载请注明出处:nfs挂载配置

关键词: