NFS服务配置

接下来说一下NFS服务的配置,我用的环境是VMware虚拟机下的CentOS6.5操作系统。

什么是NFS?

NFS会经常用到,用于在网络上共享存储。我打个比方吧,假如有三台机器A, B, C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A, B, C. 但是使用NFS只需要放到A上,然后A共享给B和C即可。访问的时候,B和C是通过网络的方式去访问A上的那个目录的,对就是这样。

1、服务端的配置

CentOS上使用NFS服务,需要安装两个包(nfs-utils和rpcbind), 不过当使用yum安装nfs-utils时会把rpcbind一起安装上:

[[email protected] ~]# yum install -y nfs-utils

在之前的CentOS版本中,是需要安装portmap包的,从CentOS6开始,就改为rpmbind了。NFS配置起来还是蛮简单的,只需要编辑配置文件/etc/exports即可。下面阿铭就先创建一个简单的NFS服务器。

首先是修改配置文件,默认该文件为空,现在编辑它:

[[email protected] ~]# vim /etc/exports

写入如下内容:

/home/ 192.168.84.0/24(rw,sync,all_squash,anonuid=501,anongid=501)

这个配置文件就这样简单一行。共分为三部分,第一部分就是本地要共享出去的目录,第二部分为允许访问的主机(可以是一个IP也可以是一个IP段)第三部分就是小括号里面的,为一些权限选项。关于第三部分,我简单说一下:

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。

介绍了上面的相关的权限选项后,再来分析一下刚刚配置的那个/etc/exports文件。其中要共享的目录为/home,信任的主机为192.168.84.0/24这个网段,权限为读写,同步,限定所有使用者,并且限定的uid和gid都为501。

编辑好配置文件后,就该启动NFS服务了:

[[email protected] ~]# /etc/init.d/rpcbind start;  /etc/init.d/nfs start

2、客户端上挂载NFS

客户端在挂载NFS之前,我们需要先看一看服务端都共享了哪些目录,这需要使用showmount命令,但是这个命令是nfs-utils这个包所带的,所以同样需要安装nfs-utils:

[[email protected] ~]# yum install -y nfs-utils

现在可以看看服务器端都共享了哪些目录了:

[[email protected] ~]# showmount -e 192.168.84.1
Export list for 192.168.84.1:
/home 192.168.84.0/24

可以看到刚才我们在服务端配置的nfs共享信息。 showmount -e 加IP就可以查看NFS的共享情况,上例中,就可以看到192.168.84.1的共享目录为/home,信任主机为192.168.84.0/24这个网段。

下面在客户端上挂载服务端的nfs:

[[email protected] ~]# mount -t nfs 192.168.84.1:/home/ /mnt/
[[email protected] ~]# df -h
文件系统              容量  已用  可用 已用%% 挂载点
/dev/sda3              14G  6.4G  6.7G  50% /
tmpfs                 160M     0  160M   0% /dev/shm
/dev/sda1              97M   27M   66M  29% /boot
/dev/sdb5             989M   19M  920M   3% /home
192.168.84.1:/home/
                      989M   19M  920M   3% /mnt

用 df -h 命令可以看到多出来一个/mnt分区,它就是NFS共享的目录了。

在这一章节里,使用的命令不多,另外还有一个常用的命令那就是exportfs,它的常用选项为[-aruv].

-a :全部挂载或者卸载;

-r :重新挂载;

-u :卸载某一个目录;

-v :显示共享的目录;

使用exportfs命令,当改变/etc/exports配置文件后,不用重启nfs服务直接用这个exportfs即可。接下来我们做一个实验,先改一下服务端的配置文件:

[[email protected] ~]# vim /etc/exports

增加一行:

/tmp/ 192.168.84.0/24(rw,sync,no_root_squash)

然后服务端上执行命令:

[[email protected] ~]# exportfs -arv
exporting 192.168.84.0/24:/tmp
exporting 192.168.84.0/24:/home

在之前的命令中用到了mount命令来挂载nfs,其实mount这个nfs服务还是有些说法的。首先是用-t nfs 来指定挂载的类型为nfs。另外在使用nfs时,常用一个选项就是 -o nolock 了,即在挂载nfs服务时,不加锁。 在客户端上执行:

[[email protected] ~]# mkdir /test
[[email protected] ~]# mount -t nfs -o nolock 192.168.84.10:/tmp/ /test/

我们还可以把要挂载的nfs目录写到client上的/etc/fstab文件中,挂载时只需要执行 mount -a 即可。在 /etc/fstab里加一行:

192.168.84.1:/tmp/            /test        nfs       nolock  0 0

因为刚刚挂载过,所以先卸载:

[[email protected] ~]# umount  /test/

然后执行:

[[email protected] ~]# mount -a

3、暂时说到这,有兴趣深入了解的朋友可以加我QQ:754677217

时间: 2024-11-16 09:33:05

NFS服务配置的相关文章

Ubuntu 13.04 & 开发板 ---- NFS服务配置

Ubuntu sudo apt-get install nfs-kernel-server sudo apt-get install rpcbind sudo vim /etc/exports /home/xxx *(rw, sync, no_root_squash) sudo /etc/init.d/nfs-kernel-server restart sudo /etc/init.d/rpcbind restart 开发板 mount -o nolock xxx:/home/xxx /mnt/

NFS服务配置流程及配置参数

NFS服务端配置流程:第一步:检查NFS服务相关软件是否安装rpm -qa|egrep "nfs-utils|rpcbind"如果没有安装,yum安装即可yum install -y nfs-utils rpcbind 第二步:修改NFS默认配置文件vim /etc/exports 01.定义共享目录 02.定于允许使用共享目录的主机或网段地址信息(03.定义共享目录权限信息) /data 172.16.1.0/24(rw,sync,all_squash) 第三步:创建共享目录,并设置

1.NFS服务配置

[toc] NFS服务配置 一.NFS介绍 1.1 NFS文件系统 什么是文件系统,NFS文件系统又是什么?简单的说,文件系统就是通过软件对磁盘上的数据进行组织和管理的一种机制,对其的一种封装或透视. NFS,Network File System.顾名思义,网络文件系统,即通过网络,对在不同主机上的文件进行共享. 1.2 NFS起源与应用场景 NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本,更新比较慢其实4.

NFS 服务配置篇

安装.配置NFS服务 1.NFS简介 NFS(network file system) NFS是一个主机A通过网络,允许其他主机B可以来共享主机A的一个目录文件的一个文件系统 2.需要安装两个包nfs-util 和rpcbind 在安装nfs-utils,会自动安装rpcbind 3.修改配置文件vim /etc/exports 配置文件共三部分 /home/ 192.168.137.0/24(rw,sync,all_squash,anonuid=501,anongid=501) (1)第一部分

redhat enterprixe 5.0 NFS服务配置与管理

一.了解NFS Samba 是主要用于实现Linux和Windows操作系统之间文件共享的协议,而NFS则是实现UNIX和Linux操作系统之间文件共享的协议. NFS可以把网络上远程的文件挂载到本机机器上. 二.安装 需要安装 portmap和nfs-utils这两个包,用rpm安装或者直接用yum安装都可以.好像一般都默认安好了...贴心~ rpm -ivh portmap-4.0-65.2.2.1.i386.rpm rpm -ivh nfs-utils-1.0.9-50.el5.i386.

NFS服务配置固定端口

#Linux NFS服务 固定端口及防火墙配置# 1.在Linux上正常安装NFS服务 2.修改/etc/service,添加以下内容(端口号必须在1024以下,且未被占用)    # Local services    mountd 1011/tcp #rpc.mountd    mountd 1011/udp #rpc.mountd    rquotad 1012/tcp #rpc.rquotad    rquotad 1012/udp #rpc.rquotad 3.重起nfs服务  ser

NFS服务配置笔记

NFS用于网络共享存储,类似windows目录共享. 配置NFS需在服务端和客户端都安装两个包(nfs-utils和rpcbind),安装nfs-utils时自动会把rpcbind一起安装上.安装命令:yum install -y nfs-utils 1.NFS服务端配置 1)编辑配置文件: vim /etc/exports 写入内容: /home/ 192.168.16.0/24(rw,sync,all_squash,anonuid=501,anongid=501) rw :读写: ro :只

Linux学习总结(四十七)NFS服务配置 上篇

1 NFS基本架构 NFS network file system 也就是网络文件系统.NFS最早由Sun公司开发,分2,3,4三个版本,2和3由Sun起草开发,4.0开始Netapp公司参与并主导开发,最新为4.1版本NFS数据传输基于RPC协议,RPC为Remote Procedure Call的简写,译为远程过程调用.NFS应用场景是:A,B,C三台机器上需要保证被访问到的文件是一样的,A共享数据出来,B和C分别去挂载A共享的数据目录,从而B和C访问到的数据和A上的一致.NFS通过网络让不

centos7安装nfs服务配置

nfs为什么需要RPC?因为NFS支持的功能很多,不同功能会使用不同程序来启动,因此,NFS对应的功能所对应的端口无法固定.端口不固定造成客户端与服务端之间的通信障碍,所以需要RPC来从中帮忙.NFS启动时会随机取用若干端口,然后主动向RPC服务注册取用相关端口和功能信息,RPC使用固定端口111来监听来自NFS客户端的请求,并将正确的NFS服务端口信息返回给客户端,这样客户端与服务端就可以进行数据传输了 1.由程序在NFS客户端发起存取文件的请求,客户端本地的RPC(rpcbind)服务会通过