nfs最大的缺点是单点,只能一对一
nfs统称存储服务器,放视频图片之类的东西,所以服务器的容量很大
数字都是放在数据库里边的,

nfs的挂载原理
客户端怎么知道服务端的开启端口?
找rpcbind,再启动的瞬间,nfs会想rpc注册,nfs有哪些端口号可以用,rpc固定监控一个端口号,当客户端来连接的的时候,rpc会受到请求,然后分发端口号,客户端通过端口号在和nfs建立连接
具体步骤
1需要先装rpcbind的东西
2装nfs-utils
要先起rpc服务
在起nfs服务,nfs要像rpc注册
客户端挂载要先经过rpc(rpc才是socket端口)通过rpc知道nfs的端口,然后才和nfs三次握手。
服务端的rpc是socket进程,客户端的是一个命令。
服务端需要张的包
nfs-utils(包括了rpc的客户端)
rpcbind(是rpc的服务端)
命令rpcinfo是看rpc的信息的命令
启动用service rpcbind start
启动nfs用/etc/init.d/nfs start
配置nfs的配置文件,/etc/exports
直接清空以后再写,
书写格式
共享那个目录 那个客户端能连接过来(拥有什么权限用逗号隔开)
例如:/data 192.168.200.0/(rw,sync,all_squash)
命令showmount 命令是查看(本地有没有共享目录)网路文件能不能挂载
参数-e不指明ip是查看本地
创建/data目录,修改目录权限为nfsnobody
在共享的磁盘里放置文件的时候所有人都降权,都变成了程序用户。nfs在重启的时候是无敌时间,在几秒钟内不能做任何事情。
程序用户是最低的,所有人都能进行操作。(读写操作)
amonuid=xxxx 修改nfs的主权限用户
anongid=sss 修改nfs的组权限用户

NFS服务端配置文件路径

NFS服务的默认配置文件路径为:/etc/exports,并且默认是空的。

 
  1. [root@nfs01 ~]# ls -l /etc/exports
  2. -rw-r--r--. 1 root root 0 1月 12 2010 /etc/exports
  3. [root@nfs01 ~]# cat /etc/exports

提示: 
NFS默认配置文件/etc/exports其实是存在的,但是没有内容,需要用户自行配置。

 

exports配置文件格式

/etc/exports文件位置格式为:

NFS共享的目录 NFS客户端地址1(参1,参2...)客户端地址2(参1,参2...)

NFS共享的目录 NFS客户端地址(参1,参2...)

查看exports语法文件格式帮助的方法为: 
执行man exports命令,然后切换到文件结尾,可以快速看如下样例格式:

 
  1. [root@nfs01 ~]# cat /etc/exports
  2. /data 172.16.1.0/24(rw,sync)
  3. 命令说明:
  4. /data :nfs的共享目录路径
  5. 172.16.1.0/24:允许挂载我的共享目录的IP地址段
  6. (rw):可读可写
  7. (sync):实时同步

修改配置文件以后,必须重启nfs服务

 
  1. [root@nfs01 ~]# /etc/init.d/nfs reload
  2. [root@nfs01 ~]# showmount -e #查看生效的nfs配置文件规则
  3. Export list for nfs01:
  4. /data 172.16.1.0/24
 

给共享目录更改属主属组为nfsnobady

 
  1. [root@nfs01 ~]# grep nfs /etc/passwd
  2. nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
  3. [root@nfs01 ~]# chown -R nfsnobody.nfsnobody /data
  4. [root@nfs01 ~]# ll -d /data
  5. drwxr-xr-x. 2 nfsnobody nfsnobody 4096 3月 9 09:43 /data

特别提示: 
如果不授权属主属组,那么共享目录挂载以后将不遵循配置文件exports的设定好的读写规则。虽然也能正常挂载,但是会导致写入文件时提示没有权限。

nfs的缺点
没办法扩容,不能无限扩容,有无敌时间,无敌时间会阻碍我们有单点故障(单点就是一个集群坏一个就不能使用,),不好做高可用,高可用是一个服务器换了会有自动替换的操作。检测nfs是不是活的我们检测111端口,(nmap。Telnet ip 端口可以检测nfs出没出事。这样做会需要修改无敌时间。)还有写入熟读的缺点,硬盘的读写速度有限,20台服务器以内才会选用nfs的初级存储。
开机自启的fstab没有自己启动的原因,没有开机自启netfs,一个服务器没有网是不能挂远程服务的,最根本的原因是,fstab的优先级高于开启网路的优先级,在开机的时候先执行fstab在执行开启网路,而netfs是将fstab挂两边,所以能解决问题。

nfs的简单搭建与原理的更多相关文章

  1. springmvc4环境简单搭建和定时任务

    之前复制粘贴创建了几个ssm的项目,然而回头让自己写的时候还是一头雾水,究其原因是spring的陌生.仅仅是写过几个helloworld而已.而且是照着写.我都不知道springmvc到底需要多少ja ...

  2. python 简单搭建阻塞式单进程,多进程,多线程服务

    由于经常被抓取文章内容,在此附上博客文章网址:,偶尔会更新某些出错的数据或文字,建议到我博客地址 :  --> 点击这里 我们可以通过这样子的方式去理解apache的工作原理 1 单进程TCP服 ...

  3. ubuntu 16.04 nfs服务的搭建

    nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在ubuntu16.04系统中搭建nfs服务,ubuntu的搭建比红帽的还要简单. 1.安装nfs服务 s ...

  4. Red Hat 6.5 nfs服务的搭建

    nfs服务是实现Linux和Linux之间的文件共享,nfs服务的搭建比较简单. 现在介绍如何在红帽6.5系统中搭建nfs服务. 1.关闭selinux服务 如果已经关闭该服务的可以直接跳过该步骤. ...

  5. Redis 复制、Sentinel的搭建和原理说明(转)

    Redis 复制.Sentinel的搭建和原理说明  转自:http://www.cnblogs.com/zhoujinyi/p/5570024.html. 背景: Redis-Sentinel是Re ...

  6. python简单搭建HTTP Web服务器

    对于Python 2,简单搭建Web服务器,只需在i需要搭建Web服务器的目录(如C:/ 或 /home/klchang/)下,输入如下命令: python -m SimpleHTTPServer 8 ...

  7. 1.0、Struts2的简单搭建方法

    一.Struts2:是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet:用于jsp页面与Java代码之间的交互. 1.核心:Filter拦截器,对所有的请求进行拦截. 2.工作 ...

  8. 零配置简单搭建SpringMVC 项目

    SpringMVC是比较常用的JavaWeb框架,非常轻便强悍,能简化Web开发,大大提高开发效率,在各种Web程序中广泛应用.本文采用Java Config的方式搭建SpringMVC项目,并对Sp ...

  9. C#基础--.net平台的重要组成部分以及.net程序简单的编译原理

    .net平台的组成只要有两部分   FCL:框架类库    CLR:公共语言运行时 .net程序简单的编译原理 1.0:使用C#编译器(csc.exe) 将C#源代码编译成程序集+{编译之前:会检查C ...

随机推荐

  1. 【转】html之file标签 --- 图片上传前预览 -- FileReader

    记得以前做网站时,曾经需要实现一个图片上传到服务器前,先预览的功能.当时用html的<input type="file"/>标签一直实现不了,最后舍弃了这个标签,使用了 ...

  2. 裁剪TOGAF进行产品架构开发

    http://ea.zhoujingen.cn/56.html . 有人和我说“周老师,我的企业条件不适合,学习企业架构没用.” 如果等公司让我用企业架构,估计会比我自己开始晚七八年.我们学习任何内容 ...

  3. jxl.jar包,应该把它放在哪个文件下

    ①把鼠标放到自己的工程上右键 ②点击Properties or Build Path >> Configure Build Path, 然后弹出一个窗口,click AddExternal ...

  4. win7系统下查看端口的占用情况以及如何删除端口进程

    经常在本地测试开发使用tomcat的时候容易报端口占用的情况,比如我要查看8080端口的使用情况 1.按如下操作,输入 cmd 回车 2.在doc窗口中输入命令    netstat -ano | f ...

  5. ss+proxifier灵活控制网络代理

    SS相比大家都知道,不多说. proxifier可能知道的不是很多(至少在今天之前我是不知道的...可能我孤陋寡闻吧) 之前用ss基本上就是chrome SwitchyOmega+SS实现chrome ...

  6. 【HTML5校企公益课】第一天

    1.搭建基本的开发环境.学校电脑用的是浏览器是Chrome,编辑器是HBuilder. 2.初步介绍HTML5的Web项目基本结构. css:样式表 img:存放图片 js:存放脚本文件 .html: ...

  7. Ubuntu 18.04配置机场客户端

    最近把自己的笔记本电脑安装成ubuntu18.04操作系统,为了更方便的查找文档,所以需要配置一下机场(v2ray)的客户端方便查找资料,以下是配置步骤: 1.下载并执行一键脚本: bash < ...

  8. hadoop2对应的eclipse插件使用

    1. eclipse插件安装步骤: a).把插件复制到eclipse安装目录plugins文件夹下 b).打开eclipse的Window---Preference---Hadoop M/R---指向 ...

  9. openwrt下如何只编译linux内核

    答:make target/linux/install V=s (此操作也会将最终镜像打包好,V=s会输出日志) 拓展 清空内核: make target/linux/clean V=s 解压内核: ...

  10. PHP爬取知乎日报图片显示不了问题

    在爬取知乎日报的内容时,虽然能拿到图片的地址,在窗口中也能打开图片,但是在前端却显示不了,报403错误. 经查证,这是因为知乎对图片做了防盗链处理,其中一个解决方法是添加meta标签: <met ...