文件共享服务之NFS

文件共享服务之NFS

一、什么是NFS及NFS的工作流程

  • NFS(Network File System,网络文件系统)
     NFS是借助于RPC来实现功能的

  • RPC:(Remote  Procedure  Call  protocol)远程函数调用

  • 可自建客户端到服务器端的函数调用,在调用函数的过程中要借助数据结构化传输

  • 半结构化数据:

    • XML:extended mark  language(重量级)

    • JSON:(轻量级)

  • 结构化数据和半结构化数据的区别

    • 半结构化数据可实现自定义标签描述数据的意义

    • 结构化数据是固定标签来描述数据意义(html语言)

  • 为什么要使用结构化数据?

    • 跨平台或者跨系统为了实现数据的完整交换就需要用到半结构化数据来描述数据的意义

  • QQ截图20160418213616.png

二、NFS发展及问题

实现跨主机,跨平台共享文件的解决方案

  • NFS1–>NFS2–>NFS3–>NFS4–>NFS4.1(支持了分布式文件系统)–>NFS4.2

  • 在本地主机创建的文件属主属组在另一端服务器属主属组不一致问题(如果是root建立存在更大的安全风险)

  • 1 采用NIF认证协议解决属主属组安全性问题(不常用)

  • 2 采用LDAP集中用户管理解决属主属组安全性及混乱问题

服务器端进程
 NFS 不是C/S结构不能像FTP和http那样用户密码认证,它只是调用远程函数将执行结果返回,并不是C/S的文件文件传输,至今未知它的认证方式只能基于IP方式来实现哪些IP能访问及其它权限
 IP+mountd的守护进程实现认证
 nfsd进程(通过此进程协议让内核执行数据存储)
 imapd进程(通过此进程协议实现本地用户名都是映射为nfsnobody)
 QQ截图20160419000831.png

  • NFS:2049/TCP,2049/UDP

  • RPC:portmapper(111/TCP,111/UDP)

  • mountd:是portmapper分配的随机端口

  • 通过rpcinfo -p查看

三、NFS简单部署

  • nfs内核自带协议模块不用安装,如果没有yum安装

  • yum -y install  nfs-utils

  • vim /etc/exports         #配置文件
     此文件一般为空,编写格式为:
     /share/word 192.168.31.254(rw) 192.168.31.252(ro)
     rw(可读写), async(默认异步提高性能), sync(同步), root_squash(默认开启,不允许root用户对文件系统操作), no_root_squash(默认关闭), all_squash, anonuid(指定匿名uid,服务端不会显示属主属组为nfsnobody), anongid(指定匿名gid)

  • showmount -e  NFS的IP,查看网络映射

  • 不重启服务器让修改生效
     export  -ar

  • 挂载NFS文件系统
     mount -t nfs  192.168.31.254/share/word         /mnt

  • 开机自动挂载
     vim 、/etc/fstab
     192.168.31.254:/share/word   /mnt   nfs     defaults,_netdev    0 0
     _netdev:属于网络挂载文件,如果nfs挂掉不影响客户端启动

  • service nfs  restart

原创文章,作者:Net18-糖糖,如若转载,请注明出处:http://www.178linux.com/15086

(0)
Net18-糖糖Net18-糖糖
上一篇 2016-04-19 09:30
下一篇 2016-04-19 11:11

相关推荐

  • bash编程基础(二)补

       bash脚本编程         脚本文件格式:         第一行,顶格:#!/bin/bash         注释信息:#         代码注释:  …

    Linux干货 2016-12-23
  • 开源堡垒机-01-JumpServer的安装

    前段时间曾经用过JumpServer帮助一个客户完成了他的关于堡垒机的需求,由于当时赶进度,没来得及将整个过程记录和完善,现在抽时间慢慢整理下。 1)JumpServer的介绍 Jumpserver 是一款由python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能。基于ssh协议来管理,客户端无需安装agent。 支持常见系统: Cent…

    Linux干货 2016-07-22
  • awk的详细用法

    awk简介 awk是一种编程语言,也可以说是一个脚本语言解释器,主要是用来实现文本的格式化输出。awk是取了其三位作者名字的首字母,即Aho,Weinberger和Kernighan。awk在Linux上是基于GNU协议实现的,即GNU awk,也就是gawk。 awk的工作模式 遍历整个文件,从第一行到最后一行。每次仅读取文件的一行,依照用户指定的输入分隔…

    Linux干货 2016-11-14
  • 了解Nginx

    Nginx Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝…

    Linux干货 2016-11-07
  • 马哥教育网络20期+第7周练习博客

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;    (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@7b ~]#&nbsp…

    Linux干货 2016-07-24
  • 虚拟主机的实现

    示例1:基于ip 编辑配置文件,切换到最后一行,增加: <VirtualHost 192.168.1.117:80>     ServerName web1.ams.com     DocumentRoot "/vhosts/web1/htdocs" </VirtualHost&g…

    Linux干货 2016-08-05