利用空余时间,做个nfs共享实验,岂不美滋滋!!!

系统测试环境:

主机ip 系统     主机名(服务)
192.168.241.130    centos6.5    hadoop1(nfs-srever)
192.168.241.133    centos6.5    hadoop2(nfs-client1)
192.168.241.134    centos6.5    hadoop2(nfs-client2)

为了测试,三台服务器全部关了软件防火墙,在生产环境中需要做防火墙规则,我会在在后面对这块做详细说明。

服务器端(hadoop1上):

[root@hadoop1 ~]# yum -y install nfs-utils rpcbind

nfs的相关说明:

NFS的常用目录如下
/etc/exports                           NFS服务的主要配置文件
/usr/sbin/exportfs                   NFS服务的管理命令
/usr/sbin/showmount              客户端的查看命令
/var/lib/nfs/etab                      记录NFS分享出来的目录的完整权限设定值
/var/lib/nfs/xtab                      记录曾经登录过的客户端信息

  编辑nfs配置文件

NFS服务的配置文件为 /etc/exports,这个文件是NFS的主要配置文件,不过系统并没有默认值,所以这个文件不一定会存在,可能要使用vim手动建立,然后在文件里面写入配置内容。

  vim /etc/exports 

/test *(rw,sync,no_root_squash,insecure)

  注意:我开始写的是 /test  192.168.241.130(rw,sync,no_root_squash,insecure),但是这样客户端(hadoop2和hadoop3上)挂载事就会出现这种情况

[root@hadoop2 /]# mount -t nfs 192.168.241.130:/test /nfsclient
mount.nfs: access denied by server while mounting 192.168.241.130:/test

 后来上网找了解决方式就是按照我上面的方式才行,真是无语。

解释说明
/nfs/server 192.168.0.0/255.255.255.0(rw,no_root_squash)
1、每行分两部分,由空格分开。
2、第一部份(空格之前的那段)是你要共享出去的目录。
3、第二部份(空格之后的那段)又可以分三部分:
(1)、“192.168.0.0”表示有权共享本目录的IP网段。
(2)、“255.255.255.0”是那个有权共享的网段所用的掩码
(3)、括号里面又有两部分,用逗号隔开:
(i)、“rw”表示来访者对所共享出去的目录享有读和写的权力,如果只给读不给写就将之换成“ro” (意思是 Read Only)
(ii)、"no_root_squash"表示如果来访者是该机的 root 则在本机也给予 root 待遇,如果没有"no_root_squash"(以及前面的逗号),那来访者在本机只相当于本机的 nobody 用户。
(iii)、insecure:允许客户端从大于1024的tcp/ip端口连接服务器

启动服务端的服务 

[root@hadoop1 test]# /etc/init.d/rpcbind start
[root@hadoop1 test]# /etc/init.d/nfslock start
[root@hadoop1 test]# /etc/init.d/nfs start
注意启动顺序,一定是上面的顺序,否则会出错

设置开机自启动

[root@hadoop1 test]# chkconfig rpcbind on
[root@hadoop1 test]# chkconfig nfslock on
[root@hadoop1 test]# chkconfig nfs on

检查服务是否开启

[root@hadoop1 test]# ps -ef |grep nfs
root       4987      2  0 17:57 ?        00:00:00 [nfsd4]
root       4988      2  0 17:57 ?        00:00:00 [nfsd4_callbacks]
root       4989      2  0 17:57 ?        00:00:00 [nfsd]
root       4990      2  0 17:57 ?        00:00:00 [nfsd]
root       4991      2  0 17:57 ?        00:00:00 [nfsd]
root       4992      2  0 17:57 ?        00:00:00 [nfsd]
root       4993      2  0 17:57 ?        00:00:00 [nfsd]
root       4994      2  0 17:57 ?        00:00:00 [nfsd]
root       4995      2  0 17:57 ?        00:00:00 [nfsd]
root       4996      2  0 17:57 ?        00:00:00 [nfsd]
root       5126   4011  0 18:04 pts/0    00:00:00 grep nfs
[root@hadoop1 test]# ps -ef |grep rpcbind
rpc        3674      1  0 17:16 ?        00:00:00 rpcbind
root       5128   4011  0 18:04 pts/0    00:00:00 grep rpcbind
[root@hadoop1 test]# netstat -tanpl |grep rpc
tcp        0      0 0.0.0.0:875                 0.0.0.0:*                   LISTEN      4977/rpc.rquotad
tcp        0      0 0.0.0.0:48590               0.0.0.0:*                   LISTEN      4981/rpc.mountd
tcp        0      0 0.0.0.0:111                 0.0.0.0:*                   LISTEN      3674/rpcbind
tcp        0      0 0.0.0.0:50960               0.0.0.0:*                   LISTEN      4981/rpc.mountd
tcp        0      0 0.0.0.0:59572               0.0.0.0:*                   LISTEN      3692/rpc.statd
tcp        0      0 0.0.0.0:50461               0.0.0.0:*                   LISTEN      4981/rpc.mountd
tcp        0      0 :::36045                    :::*                        LISTEN      4981/rpc.mountd
tcp        0      0 :::111                      :::*                        LISTEN      3674/rpcbind
tcp        0      0 :::49659                    :::*                        LISTEN      4981/rpc.mountd
tcp        0      0 :::60635                    :::*                        LISTEN      3692/rpc.statd
tcp        0      0 :::45215                    :::*                        LISTEN      4981/rpc.mountd   

hadoop2和hadoop3客户端操作,以hadoop2为例说明

[root@hadoop2 ~]# yum -y install nfs-utils

 在本机使用命令可以看到共享目录,在客户端安装了nfs-utils软件后,使用同样的命令也可以看到。

[root@hadoop1 test]# showmount -e 192.168.241.130
Export list for 192.168.241.130:
/test *  

在hadoop2上创建挂载目录,并将本地目录(nfsclient)挂载到nfs共享目录(test)上去

mkdir /nfsclient
[root@hadoop2 /]# mount -t nfs 192.168.241.130:/test /nfsclient

此时在各自的挂载目录上做一系列测试证明nfs共享是否成功

在nfs-server上,也就是hadoop1上做以下操作

[root@hadoop1 test]# mkdir data lala haha
[root@hadoop1 test]# vim page.test
this is test page  !!!

 那么在nfsclient1的/nfsclient目录下看看有没有这些内容

[root@hadoop2 nfsclient]# cat page.test
this is test page  !!!
[root@hadoop2 nfsclient]# pwd
/nfsclient

  显然,这是成功的,但是这样还不全面的,我们从客户端再做一些测试

我们将这下面的东西全部删掉

[root@hadoop2 nfsclient]# ls
data  haha  lala  page.test
[root@hadoop2 nfsclient]# rm -rf ./*
[root@hadoop2 nfsclient]# ls
[root@hadoop2 nfsclient]# pwd
/nfsclient

 看下nfsserver(hadoop1)的/test目录下还有没有,看下服务端hadoop1,显然没有了。

[root@hadoop1 test]# ls
[root@hadoop1 test]# pwd
/test

 那么再测试下客户端写入文件,在服务端能否看到和删除。

[root@hadoop2 nfsclient]# pwd
/nfsclient
[root@hadoop2 nfsclient]# mkdir zhangsan lisi wangwu
[root@hadoop2 nfsclient]# vim nongyao.txt
laalalalalalalalala

 看下服务端 

[root@hadoop1 test]# pwd
/test
[root@hadoop1 test]# cat nongyao.txt
laalalalalalalalala

显然服务端是有的,这就形成了数据共享,不用测试,hadoop3也是一样的,这样一个简单的nfs共享服务器就做成了。

cnetos6上实现nfs共享的更多相关文章

  1. 在CentOS7上实现NFS共享

    一.介绍 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,功能是让客户端通过网络访问不同主机上磁盘里的数据,主要用在类Unix系统上实现文件共享 ...

  2. 工程师技术(四):配置SMB文件夹共享、多用户Samba挂载、普通NFS共享的实现、安全NFS共享的实现

    一.配置SMB文件夹共享 目标: 本例要求在虚拟机 server0 上发布两个共享文件夹,具体要求如下: 1> 此服务器必须是 STAFF 工作组的一个成员   2> 发布目录 /comm ...

  3. 配置samba和NFS共享服务

                            配置samba和NFS共享服务 1案例1:配置SMB文件夹共享 1.1问题 本例要求在虚拟机server0上发布两个共享文件夹,具体要求如下: 此服务器 ...

  4. 【Oracle 集群】11G RAC 知识图文详细教程之RAC在LINUX上使用NFS安装前准备(六)

    RAC在LINUX上使用NFS安装前准备(六) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇 ...

  5. 关于nfs共享目录的使用技巧

    nfs客户端的使用 1.查看nfs服务器信息挂载信息 1)在客户端,要查看nfs服务器上有哪些共享目录 # showmount -e nfs服务器ip 在客户端,要查看nfs服务器上有哪些客户端的目录 ...

  6. ubuntu下建立NFS共享,并用开发板挂载

    安装NFS服务 apt-get install nfs-kernel-server nfs-common apt-get install portmap 在/etc/exports里加入 /home/ ...

  7. 生产场景NFS共享存储优化及实战

    生产场景NFS共享存储优化: 1.硬件:sas/ssd磁盘,买多块,raid0/raid10,网卡好 2.NFS服务器端优化加all_squash,async /backup/NFS 192.168. ...

  8. Ubuntu在ARM上建立NFS服务

    先引用别人的做法: 1.进行NFS服务器端与客户端的安装: sudo apt-get install nfs-kernel-server nfs-common portmap 安装客户端的作用是可以在 ...

  9. Suse 创建NFS共享目录

    Suse 创建NFS共享目录 服务端的配置: 1.编辑nfs服务的配置文件 /software/suse11 *(rw,sync,no_root_squash,no_all_squash) 凝视: / ...

随机推荐

  1. markdown中自己偶尔需要的小技巧

    慢慢积累,需要时搜索,并记录与此. 1.写文章时,由于markdown不负责首行缩进,所以“空格”需要特殊的方法去实现,最简单方便的是--输入全角空格(切换全角输入,点空格) 2.markdown中注 ...

  2. 【转】shell expect spawn、linux expect 用法小记 看着舒服点

    使用expect实现自动登录的脚本,网上有很多,可是都没有一个明白的说明,初学者一般都是照抄.收藏.可是为什么要这么写却不知其然.本文用一个最短的例子说明脚本的原理. 脚本代码如下: ######## ...

  3. spring boot中注入jpa时报could not autowire.No beans of 'PersonRepository' type found

    解决方法,在repository加一个注解.如下图所示: @Component

  4. hdu6351 2018 Multi-University Training Contest 5 1002 Beautiful Now

    题意: 给出一个十进制数,数位两两可以交换,给出最多能交换多少次,以及交换后的数不能有前缀0,问能形成最小和最大的数 * * * 尝试的思路 贪心,将字符串先排出最大以及最小的情况,然后按一定顺序将对 ...

  5. GDI基础(2):绘制文本

    1.TextOut()和DrawText()函数 CDC::TextOut()在窗口的指定位置处输出文本,函数声明: virtual BOOL TextOut(int x, int y, LPCTST ...

  6. hashchange事件

    h5新增了hashchange事件,以便在URL参数列表(及URL中‘#’号后面的所有字符串),发生变化时通知开发人员. 之所以要添加这个事件,是因为在Ajax应用中,开发人员经常要利用URL参数列表 ...

  7. 整理mianshi

    对象锁和类锁wait sleepAMSactivity启动流程handler消息机制JNI相关 1.looper.prepare()做了啥操作https://www.cnblogs.com/ganch ...

  8. Jmeter-安装与配置

    前言 越长大越无脑,很多东西还是很容易忘记,哈哈,虽然网上也有很多关于Jmeter的安装配置教程,但还是想在自己的博客上记录下,便于以后查阅. JMeter的安装配置过程 我的环境信息如下: 操作系统 ...

  9. android Activity中设置setResult 没有触发onActivityResult

    昨天修改<manifest 文件中activity 的 模式为单例模式:android:launchMode="singleTask" ,发现我的onActivityResu ...

  10. Java中static、final修饰符、对常量变量的总结

    static static属性 定义:static修饰的属性就叫静态属性:如果类的某个属性,不管创建多少个对象,属性的存储空间只有唯一的一个,那么这个属性就应该用static修饰 作用:static属 ...