首页 > 代码库 > centos6.5 nfs实时共享

centos6.5 nfs实时共享

一、什么时NFS

      NFS(Network File System)——网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样,可以做到实时共享

二、安装步骤

1.客户端和服务端都需要安装重启这两个服务(centos6.5系统自带这两个组件)

安装和配置依赖服务:
# yum ‐y install rpcbind
# service rpcbind start
# chkconfig rpcbind on
安装NFS服务及客户端
# yum ‐y install nfs‐utils
启动停止NFS
# service NFS { start | stop | restart }
设置NFS服务开机自启动
# chkconfig nfs on

 

2.服务端(共享本机文件夹)

# vim /etc/exports
<输出目录> 客户端(共享选项)
共享目录:服务端共享的目录,比如共享/share/upload ,就写/share/upload
客户端: 可以是IP地址,也可以是地址段或者域名,例如:
IP地址: 192.168.1.100 # 客户端只能是IP为192.168.1.100的主机
地址段: 192.168.1.0/24 # 客户端是192.168.1.0/24这个网段的所有主机
模糊匹配ip或者域名:92.168.1* 或 www.xing* 共享选项: insecure:允许客户端从大于1024的tcp/ip端口连接服务器;
no_root_squash:只有root用户有权限挂载
rw:read-write,可读写;
ro:read-only,只读;
sync:文件同时写入硬盘和内存;
async:文件暂存于内存,而不是直接写入内存;
no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
anongid:匿名用户的GID值。

例子:

/share/upload 192.168.1.100(insecure,rw,sync,no_root_squash)

重新加载共享文件(让共享生效)

# exportfs -rv  ##重新将设定加载

2.客户端(挂载共享文件夹到本机

通常,默认通过mount的方式挂载,语法如下:
# mount ‐t nfs server_IP:sharedirectory localdirectory
例如:
# mount ‐t nfs 192.168.1.100:/share/upload /srv/www/app/upload
也可以通过写入/etc/fstab的方式进行开机自动挂载
# vim /etc/fstab
192.168.1.100:/share/upload /srv/www/app/upload

3.取消挂载和取消共享目录

取消挂载
umount -f /srv/www/app/HongTa/HongTa_trade_web/WebRoot/upload

取消共享
exportfs –a

NFS服务中还有一个常用的命令那就是exportfs,它的常用选项为[-aruv]

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

-r :重新挂载;

-u :卸载某一个目录;

-v :显示共享的目录;

4.挂载故障排除
   a.客户端没有安装nfs‐utils
   b.如果服务端开启了防火墙,需要在服务端防火墙配置中设置放行TCP 2049端口

   c.pemission denied(用户没有权限),可参考

   linux NFS安装配置及常见问题、/etc/exports配置文件、showmount命令

   NFS网络共享服务部署

centos6.5 nfs实时共享