[ZT]CentOS下NFS服务器配置

####################################
#NFS_Configuration
#Author:楚霏
#Date: 2010-4-20
#Update:2010-4-26
#Env: Centos 5.4 x86_64
####################################

二、环境介绍
####################################
两台机器全是Centos 5.4 x86_64
服务端IP=10.0.0.52
客户端IP=10.0.0.166
####################################

三、配置服务端
####################################
#因为默认已经安装portmap,nfs-utils-lib和nfs-utils,所以直接配置即可
#创建要共享的目录

 
1mkdir /nfsdata

#nfs的主配置文件是/etc/exports

1vi /etc/exports
2#----------------------------引用文字-开始----------------------------
3#加入
4/nfsdata 10.0.0.0/24(rw,root_squash,no_all_squash,sync)
5#----------------------------引用文字-结束----------------------------

#保存设置

1exportfs -r

#配置文件每行分为段:
#第一段为共享的目录,使用绝对路径
#第二段为客户端地址及权限:
地址可以使用完整IP或网段,例如10.0.0.8或10.0.0.0/24,10.0.0.0/255.255.255.0当然也可以
地址可以使用主机名,DNS解析的和本地/etc/hosts解析的都行,支持通配符,例如:*.chengyongxu.com
权限有:
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值。
####################################

四、启动、测试
####################################
#先启动所依赖的postmap

1service portmap start
2service nfs start

#本地测试

 
1showmount -e 10.0.0.52
2#----------------------------输出文字-开始----------------------------
3Export list for 10.0.0.52:
4/nfsdata 10.0.0.0/24
5#----------------------------输出文字-结束----------------------------

#创建挂载点

 
1mkdir /mnt/nfsdata

#挂载

 
1mount -t nfs 10.0.0.52:/nfsdata /root/nfsdata

#检查

 
01mount
02#----------------------------输出文字-开始----------------------------
03/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
04proc on /proc type proc (rw)
05sysfs on /sys type sysfs (rw)
06devpts on /dev/pts type devpts (rw,gid=5,mode=620)
07/dev/hda1 on /boot type ext3 (rw)
08tmpfs on /dev/shm type tmpfs (rw)
09none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
10sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
11nfsd on /proc/fs/nfsd type nfsd (rw)
1210.0.0.52:/nfsdata on /root/nfsdata type nfs (rw,addr=10.0.0.52)
13#----------------------------输出文字-结束----------------------------

#写文件进行测试

 
1echo "This is a test" >> /nfsdata/test

#检查一下

 
1cat /root/nfsdata/test

#客户端测试
#步骤相似

 
1service portmap start
2service nfs start
3showmount -e 10.0.0.52
4mount -t nfs 10.0.0.52:/nfsdata /root/nfsdata

#检查

 
01mount
02#----------------------------输出文字-开始----------------------------
03/dev/mapper/VolGroup00-LogVol00 on / type ext3 (rw)
04proc on /proc type proc (rw)
05sysfs on /sys type sysfs (rw)
06devpts on /dev/pts type devpts (rw,gid=5,mode=620)
07/dev/hda1 on /boot type ext3 (rw)
08tmpfs on /dev/shm type tmpfs (rw)
09none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
10sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
11nfsd on /proc/fs/nfsd type nfsd (rw)
1210.0.0.52:/nfsdata on /root/nfsdata type nfs (rw,addr=10.0.0.52)
13#----------------------------输出文字-结束----------------------------

#读写一下检查检查

 
1cat /root/nfsdata/test
2vi /root/nfsdata/test

#注意:
#如果需要开机挂载的话别忘了在/etc/fstab中加入

 
1#----------------------------引用文字-开始----------------------------
2/root/nfsdata   10.0.0.52:/nfsdata
3#----------------------------引用文字-结束----------------------------

####################################

五、常见错误
####################################
错误一:Cannot register service: RPC

 
01service nfs restart
02#----------------------------输出文字-开始----------------------------
03Shutting down NFS mountd:                                  [  OK  ]
04Shutting down NFS daemon:                                  [  OK  ]
05Shutting down NFS quotas:                                  [  OK  ]
06Shutting down NFS services:                                [  OK  ]
07Starting NFS services:                                     [  OK  ]
08Starting NFS quotas: Cannot register service: RPC: Unable to receive; errno = Connection refused
09rpc.rquotad: unable to register (RQUOTAPROG, RQUOTAVERS, udp).
10                                                           [FAILED]
11#----------------------------输出文字-结束----------------------------
12  
13#解决方法:
14service portmap start
15#先启动portmap才行
 
01错误二:Address already in use
02tail -f /var/log/message
03#----------------------------输出文字-开始----------------------------
04Apr 10 13:43:27 bogon nfsd[15918]: nfssvc: Setting version failed: errno 16 (Device or resource busy)
05Apr 10 13:43:27 bogon nfsd[15918]: nfssvc: unable to bind UPD socket: errno 98 (Address already in use)
06Apr 10 13:45:27 bogon nfsd[15978]: nfssvc: Setting version failed: errno 16 (Device or resource busy)
07Apr 10 13:45:27 bogon nfsd[15978]: nfssvc: unable to bind UPD socket: errno 98 (Address already in use)
08Apr 10 13:49:05 bogon nfsd[16080]: nfssvc: Setting version failed: errno 16 (Device or resource busy)
09#----------------------------输出文字-结束----------------------------
10  
11#解决方法:
12ps aux | grep nfs
13#然后用kill干掉这些进程

错误三:mount: 10.0.0.52:/nfsdata failed, reason given by server: Permission denied

 
1#解决方法:
2a.把该客户端的ip加入服务端的/etc/exports
3b.服务端的和客户端规则要统一,要么都使用主机名(注意每台机器的hosts文件),要么都使用IP

错误四:客户端挂载超时

 
01tail -f /var/log/message
02#----------------------------输出文字-开始----------------------------
03Apr 10 14:42:35 localhost kernel: portmap: server localhost not responding, timed out
04Apr 10 14:42:35 localhost kernel: RPC: failed to contact portmap (errno -5).
05Apr 10 14:42:46 localhost kernel: RPC: failed to contact portmap (errno -512).
06Apr 10 14:42:46 localhost kernel: lockd_up: makesock failed, error=-512
07Apr 10 14:42:46 localhost kernel: RPC: failed to contact portmap (errno -512).
08#----------------------------输出文字-结束----------------------------
09  
10#解决方法:
11service portmap restart
12service nfs restart

错误五:Error: RPC MTAB does not exist.

 
01service nfs start
02#----------------------------引用文字-开始----------------------------
03Starting NFS services:                                     [  OK  ]
04Starting NFS quotas:                                       [  OK  ]
05Starting NFS daemon:                                       [  OK  ]
06Starting NFS mountd:                                       [  OK  ]
07Starting RPC idmapd: Error: RPC MTAB does not exist.
08#----------------------------引用文字-结束----------------------------
09  
10#解决方法:
11#手动执行
12mount -t rpc_pipefs sunrpc /var/lib/nfs/rpc_pipefs/
13#需要时加入开机启动时,加入下面两行到/etc/fstab
14#----------------------------引用文字-开始----------------------------
15rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs defaults 0 0
16nfsd /proc/fs/nfsd nfsd defaults 0 0
17#----------------------------引用文字-结束----------------------------

####################################

<script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/buttonLite.js#style=-1&uuid=&pophcol=3&lang=zh"></script> <script type=text/javascript charset=utf-8 src="http://static.bshare.cn/b/bshareC0.js"></script>
阅读(715) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值