- 论坛徽章:
- 0
|
NFS 很有用,可以共享,测试 RAC,下面就讲讲nfs的简单,也算比较全的啦!
NFS配置一步一步
例:/mnt/hda1 192.168.228.218(rw)
2.启动portmap服务
service portmap start[restart]
3.启动NFS服务:
service nfs start[restart]
类型:System V-launched Service
软件包:nfs-utils
进程:nfsd,lockd,rpciod,rpc.(mounted,rquotad,statd)
脚本:nfs,nfslock
端口:由portmap服务指派端口(111)
配置文件:/etc/exports
辅助工具:portmap(必须)
相关命令:rpcinfo -p [IPADD]:查看服务器提供的rpc服务
showmount -e :查看服务共享的目录
1、NFS包
-----------
NFS需要5个RPM,分别是:
setup-* : 共享NFS目录在/etc/exports中定义
initscripts-* : 包括引导过程中装载网络目录的基本脚本
nfs-utils-* : 包括基本的NFS命令与监控程序
portmap-* : 支持安全NFS RPC服务的连接
quota-* : 网络上共享的目录配额,包括rpc.rquotad (这个包不是必须的)
2、基本监控程序
-------------------
要顺利运行NFS,至少需要五个Linux服务,它们各有不同的功能,有的负责装载服务,有的保证远程命令指向正确的位置。这些服务通过/etc/rc.d/init.d目录中的nfs,nfslock和portmap脚本启动。下面简单介绍每个监控程序:
(1) 基本NFS
rpc.nfsd是NFS服务器监控程序,它通过/etc/rc.d/init.d目录中的nfs脚本启动。NFS监控程序还启动rpc.mountd装载监控程序,并导出共享目录。
(2) RPC装载
可以用mount命令连接本地目录或网络目录,但还需要一个装载NFS目录的特殊监控程序rpc.mountd
(3) 端口映射器
portmap监控程序只是定向RPC通信数据流,但它对于NFS服务很重要。如果不运行portmap,则NFS客户机无法找到从NFS服务器共享的目录。
(4) 重新启动与statd
当NFS服务需要中断或者重新启动时,rpc.statd监控程序和rpc.lockd在服务器重新启动之后使客户机恢复NFS连接。
(5) 锁定
通过共享NFS目录打开文件时,锁定可以使用户不能覆盖同一个文件。锁定通过nfslock脚本并使用rpc.lockd监控程序启动运行。
3、配置NFS
-------------
共享的NFS目录在/etc/exports中列出,这个文件控制对目录的共享。书写规则是:(每个共享规则一行)
共享目录 主机(参数)
例如:
/mnt/cdrom *.abc.com(ro,sync) master.abc.com(rw,sync)
上面的规则代表将/mnt/cdrom目录以只读同步方式共享给*.abc.com域,并且以读写同步方式共享给master.abc.com主机。
任何共享目录都要指定sync或async,也就是指定文件写入磁盘之前共享NFS目录是否响应命令。
下面是一些NFS共享的常用参数:
ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
async NFS在写入数据前可以相应请求
secure NFS通过1024以下的安全TCP/IP端口发送
insecure NFS通过1024以上的端口发送
wdelay 如果多个用户要写入NFS目录,则归组写入(默认)
no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。
hide 在NFS共享目录中不共享其子目录
no_hide 共享NFS目录的子目录
subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)
no_subtree_check 和上面相对,不检查父目录权限
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
no_all_squash 保留共享文件的UID和GID(默认)
root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squas root用户具有根目录的完全管理访问权限
anonuid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的UID
anongid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的GID
4、启动NFS
--------------
# service portmap start
# service nfs start
检查NFS的运行级别:
# chkconfig --list portmap
# chkconfig --list nfs
根据需要设置在相应的运行级别自动启动NFS:
# chkconfig --level 235 portmap on
# chkconfig --level 235 nfs on
另外,还需要查看系统的iptables、/etc/hosts.allow、/etc/hosts.deny是否设置了正确的NFS访问规则。
mount -t nfs 172.20.65.16 :/var/nfs /mnt/nfs
四、其它相关命令
1 、当修改了/etc/exports文件后,可以不用重新启动nfs 服务,直接采用exports –rv即可重新导出共享目录;
该命令格式如下:
exportfs [-aruv]
-a:全部mount 或者unmount /etc/exports中的内容
-r:重新mount /etc/exports中分享出来的目录
-u:umount目录
-v:在 export 的时候,将详细的信息输出到屏幕上。
具体例子:
[root@ns var]# showmount -e
Export list for ns.osserver :
/var/nfs 172.20.*.*
[root@ns var]# exportfs –au #全部卸载
[root@ns var]# showmount -e
Export list for ns.osserver :
[root@ns var]# exportfs –rv #全部重新 export 一次
exporting 172.20.*.*:/var/nfs
[root@ns var]#
2 、showmout命令对于NFS 的操作和查错有很大的帮助,所以我们先来看一下showmount 的用法
showmout
-a:这个参数是一般在NFS SERVER上使用,是用来显示已经mount 上本机nfs目录的cline 机器。
-e:显示指定的NFS SERVER上export出来的目录。
例如:
[root@localhost ~]# showmount -e 172.20.65.16
Export list for 172.20.65.16:
/var/nfs 172.20.*.*
[root@ns var]# showmount -a
All mount points on ns.osserver :
172.20.*.*:/var/nfs
五、常见问题解答
1 、提示:mount to NFS server ’172.20.67.203’ failed: server is down.
解决方案:可能是NFS 服务器的防火墙有问题;
2 、提示:mount : RPC: Timed out
解决方案:由于RPC 协议没运行;启动portmap 服务;
也有可能是防火墙问题;Server/Client 均有可能。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/85323/showart_2014140.html |
|