首页 > 代码库 > NFS文件共享配置

NFS文件共享配置

安装NFS服务,需要安装nfs-utils和rpcbind,NFS的RPC服务,在Centos5.X下名称为portmap,在Centos6.X下名称为rcpbind。


1.查询nfs服务和rpc服务是否安装

[root@nfs-server ~]# rpm -qa|grep nfs 
[root@nfs-server ~]# rpm -qa|grep rpcbind

2.使用YUM安装nfs和rpcbind

[root@nfs-server ~]# yum -y install nfs*


3.启动nfs服务,在启动nfs服务之前,一定要先启动rpcbind,然后再启动nfs

查看rpc信息

[root@nfs-server ~]# rpcinfo -p localhost 
   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
[root@nfs-server ~]# /etc/init.d/nfs start 
Starting NFS services:                                     [  OK  ]
Starting NFS quotas:                                       [  OK  ]
Starting NFS mountd:                                       [  OK  ]
Starting NFS daemon:                                       [  OK  ]
Starting RPC idmapd:                                       [  OK  ]

启动nfs服务以后,再查看rpcinfo信息。

[root@nfs-server ~]# 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
    100011    1   udp    875  rquotad
    100011    2   udp    875  rquotad
    100011    1   tcp    875  rquotad
    100011    2   tcp    875  rquotad
    100005    1   udp  35606  mountd
    100005    1   tcp  38238  mountd
    100005    2   udp  33761  mountd
    100005    2   tcp  41083  mountd
    100005    3   udp  47608  mountd
    100005    3   tcp  35056  mountd
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs
    100003    4   tcp   2049  nfs
    100227    2   tcp   2049  nfs_acl
    100227    3   tcp   2049  nfs_acl
    100003    2   udp   2049  nfs
    100003    3   udp   2049  nfs
    100003    4   udp   2049  nfs
    100227    2   udp   2049  nfs_acl
    100227    3   udp   2049  nfs_acl
    100021    1   udp  34627  nlockmgr
    100021    3   udp  34627  nlockmgr
    100021    4   udp  34627  nlockmgr
    100021    1   tcp  46375  nlockmgr
    100021    3   tcp  46375  nlockmgr
    100021    4   tcp  46375  nlockmgr

4.配置共享目录/share,允许192.168.10.*访问

[root@nfs-server ~]# mkdir /share
[root@nfs-server ~]# cat /etc/exports 
/share 192.168.10.*(rw,sync)

5.查看NFS共享目录信息

[root@nfs-server ~]# showmount -e 192.168.10.1
Export list for 192.168.10.1:
/share 192.168.10.*

6.NFS客户端挂载共享目录/share

[root@nfs-server ~]# mount -t nfs 192.168.10.1:/share /mnt
[root@nfs-server ~]# df -h 
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_software-lv_root
	                   18G  1.5G   15G   9% /
tmpfs                 491M     0  491M   0% /dev/shm
/dev/sda1             477M   28M  424M   7% /boot
192.168.10.1:/share/   18G  1.5G   15G   9% /mnt

7.NFS客户端排错思路

测试客户端与服务端网络是否可否,如在客户端使用ping IP地址

在服务端自己挂载看看是否能够正常挂载

检查服务端防火墙规则,初学者可以选择直接关闭防火墙

8.管理NFS共享目录

exportfs命令可以导出NFS服务器上的共享目录、显示共享目录,或者不导出共享目录。

命令语法:

exportfs [选项] [目录]

选项

含义

-a

导出或不导出所有的目录

-v

显示导出列表的同时,也显示导出选项的列表

-u

不导出指定的目录。当和-a选项一起时,不导出所有的目录

-f

指定一个新的导出文件,而不是/etc/exports文件

-r

重新导出所有的目录

-o<选项>

指定导出选项列表

查看NFS共享目录信息

showmount [选项] [NFS服务器]

选项

含义

-a

同时显示客户端的主机名或IP地址以及所挂载的目录

-e

显示NFS服务器的导出列表

-d

只显示已经被挂载的NFS共享目录信息

9.NFS配置文件权限参数说明

参数名称

参数用途

rw

共享目录具有读写权限

ro

共享目录具有只读权限

sync

请求或写入数据时,数据同步写入到NFS Server硬盘中。

数据安全不会丢,缺点,性能比不启用该参数要差。

async

请求或写入数据时,先返回请求,再将数据写入到内存缓存和硬盘中,

即异步写入数据。此参数可以提升NFS性能,但是会降低数据的安全。

因此,一般情况下建议不用,如果NFS处于瓶颈状态,并且允许数据丢

失的话可以打开此参数提升NFS性能。

写入时数据会先到内存缓冲区,等硬盘有空档再写入磁盘,这样可以提

升写入效率!风险为若服务器宕机或不正常关机,会损失缓冲区未写入

硬盘的数据(解决办法:服务器主板电池或加UPS不间断电源)!

root_squash

root用户的所有请求映射成如nfsnobody(匿名)用户一样的权限

no_root_squash

关闭root_squash

all_squash

映射所有的UIDGID为匿名用户

no_all_squash

保留共享文件的UIDGID(默认)

anonuid

指定NFS服务器/etc/passwd文件中匿名用户的UID

anongid

指定NFS服务器/etc/passwd文件中匿名用户的GID

secure

NFS通过1024以下的安全TCP/IP端口发送

insecure

NFS通过1024以上的端口发送

wdelay

如果多个用户要写入NFS目录,则归组写入(默认)

no_wdelay

如果多个用户要写入NFS目录,则立即写入,当使用async时,不需要设置

subtree_check

如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限

no_subtree_check

subtree_check相对,不检查父目录权限

hide

NFS共享目录中不共享其子目录

nohide

共享NFS目录的子目录

mp

如果它已经成功挂载,那么使得它只导出一个目录

fsid

NFS需要能够识别每个它导出的文件系统。通常情况下它会为文件系统使用一

UUID,或者该设备保持文件系统的设备号


本文出自 “风云” 博客,请务必保留此出处http://ljmict.blog.51cto.com/9889792/1919738

NFS文件共享配置