您的位置:首页 > 运维架构 > Linux

centos6.5 搭建NFS 服务

2016-08-30 17:13 495 查看
Nfs服务挂载命令:mount 源 目标mount ip地址 本地地址mount –t 192.168.1.115:/video /video 1 先开启rpc服务2 启动nfs服务 向rpc注册3 请求nfs服务4 返回端口5 连接端口请求数据两台机器 (server 和clinet)环境:CentOS release 6.5 (Final) 2.6.32-431.el6.x86_64 LANG=EN服务端 安装包 yum groupinstall “NFS file server” -y客服端 安装包 yum groupinstall “NFS file server” -y 检查是否安装:[root@nfs-client ~]# rpm -qa nfs-utils protmap rpcbindrpcbind-0.2.0-12.el6.x86_64nfs-utils-1.2.3-70.el6.x86_64 服务端操作 首先启动rpc服务:[root@nfs-server ~]# /etc/init.d/rpcbind startStarting rpcbind: [ OK ][root@nfs-server ~]# ps -ef |grep rpcrpc 1290 1 0 05:31 ? 00:00:00 rpcbindroot 1295 1162 0 05:31 pts/0 00:00:00 grep rpc 然后再启动nfs服务:[root@nfs-server ~]# /etc/init.d/nfs startStarting NFS services: [ OK ]Starting NFS mountd: [ OK ]Starting NFS daemon: [ OK ]正在启动 RPC idmapd: [确定 设置开机启动:[root@nfs-server ~]# chkconfig nfs on[root@nfs-server ~]# chkconfig rpcbind on 确认开机启动状态:[root@nfs-server ~]# chkconfig –list nfsnfs 0:off 1:off 2:on 3:on 4:on 5:on 6:off[root@nfs-server ~]# chkconfig –list rpcbindrpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off 客服端操作:启动rpc服务,不需要启动nfs服务。[root@nfs-client ~]# /etc/init.d/rpcbind start正在启动 rpcbind: [确定设置开机启动:[root@nfs-client ~]# chkconfig rpcbind on[root@nfs-client ~]# chkconfig –list rpcbindrpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off========================================================================================服务端开始配置服务:创建共享目录[root@nfs-server ~]# mkdir /data修改配置文件 (默认为空)[root@nfs-server ~]# vim /etc/exports#share data 20160709 注释/data 192.168.0.0/24(rw,sync)共享目录 授权网段或者ip(给与什么权限【ro代表只读】,同步到磁盘[不同参输用逗号隔开])重启nfs服务[root@nfs-server ~]# /etc/init.d/nfs reload查看共享结果: (如果没有就要检查出什么问题了)[root@nfs-server ~]# showmount -e localhostExport list for localhost:/data 192.168.0.0/24 客服端检查[root@nfs-client ~]# showmount -e 192.168.199.235Export list for 192.168.199.235:/data 192.168.0.0/24 挂载:[root@nfs-client ~]# mount -t nfs 192.168.199.235:/data /mnt 挂载成功不会有提示!挂载完我们是没有写入的权限的,是需要nfsnobody用户的权限,授权(如果是不需要写,则不需要此步骤)Chown –R nfsnobody /data 一些nfs命令和文件的参数:exportfs –rv 等同于 /etc/init.d/nfs reloadexportfs 不但可以加载配置生效,也可以通过命令直接共享命令,越过/etc/exportfs,但是重启失效。Showmount 查看nfs 配置 及挂载结果的命令。/var/lib/nfs/etab nfs配置文件完整参数设定的文件,(有很多没有配置但是默认就有的nfs参数) NFS默认配置文件路径 /etc/exportsCentos 5.8 y以上默认有此文件,但是是空的。nfsstat 命令查看nfs状态 nfs客户端地址:可为单独ip地址,可为网段,能解析主机名或者域名,也可以用*来匹配。 挂载参输sync同步(慢,写磁盘)请求写数据,数据同步写入到nfsserver硬盘后才返回。async异步(快,可能丢失) 请求写数据,先返回请求,在将数据写人到内存缓存和硬盘,可以提升性能,但降低安全。读写 rw(读写) ro(只读)all_squash 参输 无论访问nfs共享目录用户身份如何,都被压缩成匿名用户,在多个客户端同时读写时很有用。 Nfs网络文件系统不要放在fstab文件中NFS挂载时出现“access denied by server while mounting”的解决方法NFS是非常通用和简单的Linux下共享协议,但是最近安装了一次,在另一台CentOS用mount挂载时却出现“access denied by server while mounting”这个错误;因为之前配置过很多次NFS了,都没出现过一点问题,于是先试试在本机mount挂载,测试可以挂载,但是在另一台机器上却报错,首先想到的是iptables防火墙问题,于是关闭防火墙,也一样报错。去网上搜索了一下,遇到这个错误的人也很多,但是原因都不大相同,在这里我就总结一下出现此错误的几种原因:1、使用了非法端口,也就是使用了大于1024的端口。
这个错误,可以通过查看日志确认:
[root@local~ /]# cat /var/log/messages | grep mount
Jan 2 12:49:04 localhost mountd[1644]: refused mount request from 192.168.0.100 for /home/nfsshare/ (/home/nfsshare): illegal port 1689解决办法:
修改配置文件/etc/exports,加入 insecure 选项,重启nfs服务,再尝试挂载。
/home/nfsshare/  *(insecure,rw,async,no_root_squash)2、NFS版本问题
编辑/etc/sysconfig/nfs文件,找到下面:#Turn off v2 and v3 protocol support#RPCNFSDARGS=”-N 2 -N 3″#Turn off v4 protocol support#RPCNFSDARGS=”-N 4″  /*把这句前面的#号去掉*/最后保存,重启nfs服务,再尝试挂载;如果挂载不上,可尝试在后面加-o nolock参数。

3、查看客户端挂载的目录是否具备读写权限,添加相应权限即可。

4、nfs服务器上的/etc/hosts中设置了客户端机器IP对应域名,去掉即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nfs