linux(十四)之linux NFS服务管理
学到这里差不多就结束了linux的基础学习了,其实linux的内容并不难,我们要经常的反复的去操作它,多多和它去联络感情才能很好的掌握这个linux。
加油!今天是星期二。没有什么比努力让人更加热血沸腾,成功会不远万里地来追寻我。
一、NFS概述
NFS(网络文件系统,Network File System)采用CS的工作模式。NFS是分布式计算系统的一个组成部分,可以实现在异种网络上共享和装配远程文件系统。NFS提供了一种在类Unix系统上的共享文件的方法。
它的主要功能是通过网络让不同的机器系统之间可以彼此共享文件和目录。NFS服务器可以允许NFS客户端将远端NFS服务器端的共享目录挂载到本地的NFS客户端中。在本地的NFS客户端的机器看来,NFS服务器端共享的目录就好像自己的磁盘分区和目录一样。
一般客户端挂载到本地目录的名字可以随便,但为方便管理,我们要和服务器端一样比较好。NFS一般用来存储共享视频,图片等静态数据。
NFS还可以结合远程网络启动实现
无盘工作站(PXE启动,所有数据都在服务器的磁盘阵列上)
瘦客户工作站(本地启动系统,本地磁盘存储常用系统工具,而所有/home目录的用户数据被放在NFS服务器上并且在网络上处处可见)
二、NFS协议以及各版本的组要差别
2.1、V3相对V2的主要区别
1)文件尺寸
V2最大只支持32BIT的文件大小,而NFS V3新增加了支持64BIT文件大小的技术。
2) 文件传输尺寸
V3没有限定传输尺寸,V2最多只能设定为8k,可以使用-rsize and -wsize 来进行设定。
3)完整的信息返回
V3增加和完善了许多错误和成功信息的返回,对于服务器的设置和管理能带来很大好处。
4)增加了对TCP传输协议的支持
V2只提供了对UDP协议的支持,在一些高要求的网络环境中有很大限制,V3增加了对TCP协议的支持
5)异步写入特性
NFS V3能否使用异步写入,这是可选择的一种特性。
NFS V3客户端发发送一个异步写入请求到服务器,在给客户端答复之前服务器并不是必须要将数据写入到存储器中(稳定的)。
当客户端希望释放这个copy的时候,它会向服务器通过这个操作过程,以确保每个操作步骤的完整。
异步写入能够使服务器确定最好的同步数据的策略使数据尽可能的同步的提交。
与V2比较来看,这样的机制能更好的实现数据缓冲和更多的平行(平衡)。而NFS V2的SERVER在将数据写入存储器之前不能再相应任何的写入请求。
改进了SERVER的mount性能
有更好的I/O WRITES性能。
更强网络运行效能,使得网络运作更为有效。
更强的灾难恢复功能。
2.2、V4相对V3的改进
改进了INTERNET上的存取和执行效能
在协议中增强了安全方面的特性
增强的跨平台特性
三、RPC(Remote Procedure Call Protocol,远程过程调用)
3.1、概述
1)RPC(Remote Procedure Call Protocol):远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。
在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。
2)RPC采用客户机/服务器模式。请求程序就是一个客户机,而服务提供程序就是一个服务器。首先,客户机调用进程发送一个有进程参数的调用信息到服务进程,然后等待应答信息。在服务器端,进程保持睡眠状态直到调用信息到达为止。
当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用进程接收答复信息,获得进程结果,然后调用执行继续进行。
3)NFS协议本身没有网络传输功能,而是基于RPC实现的。
4)RPC提供了一个面向过程的远程服务结构。
5)RPC可以通过网络从远程主机上请求服务,而不需要了解底层网络技术的协议。
6)RPC是工作在OSI模型的会话层,它可以为遵循RPC协议应用层协议提供端口注册功能。
7)很多服务都可以向RPC注册端口。
8)RPC使用网络端口111来监听客户端的请求。
3.2、NFS与RPC
四、NFS的详解
4.1、NFS的守护进程
NFS的不同功能由不同的守护进程提供。
NFS的每个功能都有RPC分配分配的端口监听。
rpc.nfsd:基本的NFS守护进程(2049端口),主要负责登录权限检测。
rpc.mountd:负责管理NFS的文件系统,对客户端存取服务器的文件进行一系列的管理。
rpc.rquotad:提供远程磁盘限额服务。
rpc.lockd:用于管理文件的锁定,防止多个客户端同时写入某个文件时产生的冲突。
rpc.statd:用来检查共享目录的一致性
4.2、NFS的相关工具
exportfs:NFS服务器端功能,维护共享资源
showmount:NFS客户端功能,查看服务器共享的目录。(后面跟ip地址)
nfsstat:显示NFS的状态统计信息。
rpcinfo:显示由RPC维护的端口映射,显示已注册的RPC服务列表
4.3、NFS的安装与启动
1)在服务器端:sudo apt-get install nfs-common nfs-kernel-server(同时也安装了客户端的nfs)
2)启动服务器端的nfs服务器:sudo service nfs-kernel-server restart
3)在客户端(之安装nfs客户端):sudo apt install nfs-ommon
4.4、NFS服务端
1)主要配置文件/etc/exports
共享目录 [主机1(参数项)] [主机2(参数项)] ...
主机:ip地址或主机名
参数项:
ro 设置共享目录为只读
rw 设置共享目录可读写
sync 所有数据在请求时写入共享
async NFS在写入数据前可以相应请求
secure NFS通过1024以下的安全TCP/IP端口发送
insecure NFS通过1024以上的端口发送
wdelay 如果多个用户写入NFS目录,则归组写入(默认)
no_wdelay 如果多个用户写入NFS目录,则立即写入,使用async时无需此设置。
hide 在NFS共享目录中不共享其子目录
no_hide 共享NFS目录的子目录
subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)
no_subtree_check 和上面相对,不检查父目录权限
all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录。
no_all_squash 保留共享文件的UID和GID(默认)
root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)
no_root_squash root用户具有根目录的完全管理访问权限
anonuid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的UID
anongid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的GID
2)exportfs命令
用于维护NFS共享的目录列表
当修改了/etc/exports之后,无需重启nfs服务
exportfs [-aruv]
-a:全部挂载或卸载配置文件中的设置
-r:重新挂载配置文件中的设置。
-u:卸载共享目录
-v:显示输出列表同时,显示设定参数。
4.5、NFS客户端
1)showmount命令
查看NFS服务器上所有共享目录 showmount –e ip_address
查看服务器上哪些共享目录被挂载 showmount –d ip_address
2)NFS的挂载与卸载
挂载 mount –t nfs [-o 参数] server_adr:/共享目录 /本机挂载点
卸载 umount /本机挂载点 (加选项-f进行强制卸载)
3)启动时挂载
修改/etc/fstab文件 192.168.0.200:/share /share nfs hard,intr 0 0
五、NFS实现共享文件实战
5.1、环境
首先我在ubuntu的desktop版充当nfs客户端,在ubuntu的server版充当nfs服务器端
5.2、步骤
1)首先在ubuntu的server版中安装nfs服务器,然后开启服务
sudo apt install nfs-kernel-server
sudo service nfs-kernel-server restart
2)创建一个共享目录在服务器端
3)修改nfs配置文件/etc/exports,然后要重启服务
4)在客户端中安装nfs客户端,并在客户端查看nfs服务器的共享目录
5)在客户端中创建一个目录nfsfolder来远程挂载nfs服务器中的nfsshare
6)零时挂载
7)测试,在nfs服务器端的共享目录放一个a.txt文件,然后在去客户端哪里查看
8)永久挂载,修改/etc/fstab文件
linux(十四)之linux NFS服务管理的更多相关文章
- Linux操作系统-CentOS7启动流程和服务管理
Linux操作系统-CentOS7启动流程和服务管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.systemd POST --> Boot Sequence --&g ...
- Linux操作系统-CentOS6启动流程和服务管理
Linux操作系统-CentOS6启动流程和服务管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Linux组成 1>.Linux: kernel+rootfs ker ...
- linux基础-第十四单元 Linux网络原理及基础设置
第十四单元 Linux网络原理及基础设置 三种网卡模式图 使用ifconfig命令来维护网络 ifconfig命令的功能 ifconfig命令的用法举例 使用ifup和ifdown命令启动和停止网卡 ...
- [原]Jenkins(十四)---jenkins示例:admin管理所有项目,新建用户只能看部分项目
/** * lihaibo * 文章内容都是根据自己工作情况实践得出. *如有错误,请指正 * 版权声明:本博客欢迎转发,但请保留原作者信息! http://www.cnblogs.com/horiz ...
- Linux系列教程(二十四)——Linux的系统管理
上篇博客介绍了Linux的服务管理,不管是以RPM包安装的服务,还是通过源码包安装的服务,万能启动服务的方法都可以通过 /绝对路径/启动脚本名 start .而通过 RPM 包安装的服务还可以通过 s ...
- linux基础之nginx和nfs服务
第一部分: 一.nginx服务安装nginx包(源码安装)1.先cd /etc/yum.repos.d目录下2.yum install epel-release -y(安装扩展包)3.yum in ...
- Linux系列教程(十四)——Linux用户和用户组管理之相关配置文件
前面我们介绍了软件包管理.首先介绍了rpm包的相关命令,但是我们发现直接安装rpm包会被其依赖性折磨的不行,然后解决办法是yum在线管理,通过yum命令安装rpm包能自动帮助我们解决依赖性.最后又介绍 ...
- 【原创】(十四)Linux内存管理之page fault处理
背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...
- (十四)Linux kernel mmc 框架说明,包括mmc_test使用方法
1.Linux 总线模型 Linux下的任何驱动在内核中最终都抽象为bus, driver以及device三者间的相互作用. 总线是处理器和一个或多个设备之间的通道,在设备模型中,所有 ...
随机推荐
- (转)@ContextConfiguration注解说明
场景:学习spring实战中相关的单元测试 1 正常使用 @ContextConfiguration Spring整合JUnit4测试时,使用注解引入多个配置文件 1.1 单个文件 @ContextC ...
- Phonegap环境配置
最初选择的是使用Phonegap桌面开发工具 Phonegap Desktop-App与 手机客户端调试工具PhoneGap Developer App,这样省事多了,可惜不能使用后续phonegap ...
- 【JAVASCRIPT】React学习-如何构建一个组件
摘要 react 学习包括几个部分: 文本渲染 JSX 语法 组件化思想 数据流 组件化思想 组件就是 UI + UI 交互逻辑,组件有三个常规map , 分别为state 状态 . props 数据 ...
- HTML基础知识(未完待续)
一.HTML编辑工具:Sublime Text 二.HTML实体字符:1.( 空格): : 2.(<) <: 3.(>)>: 4.(&)&a ...
- AC自动机总结及板子(不带指针)
蒟蒻最近想学个AC自动机简直被网上的板子搞疯了,随便点开一个都是带指针的,然而平时用到指针的时候并不多,看到这些代码也完全是看不懂的状态.只好在大概理解后自己脑补(yy)了一下AC自动机的代码,居然还 ...
- jQuery 去空
//去左右空格; function trim(s){ return s.replace(/(^\s*)|(\s*$)/g, ""); } //去掉字符串中所有空格(包括中间 ...
- 微信小程序开发之微信支付
微信支付是小程序开发中很重要的一个环节,下面会结合实战进行分析总结 环境准备 https服务器 微信小程序只支持https请求,因此需要配置https的单向认证服务(请参考 另一篇文章https受信证 ...
- Hello world! My first blog!
Hello world! My first blog!
- semantic UI first web
官方文档:https://semantic-ui.com/introduction/getting-started.html semantic UI: SemanticUI是一款语义化设计的前端开源 ...
- Java微信公众平台开发之扫码支付模式二
官方文档点击查看 准备工作:已通过微信认证的公众号,域名可以不通过ICP备案借鉴了很多大神的文章,在此先谢过了大体过程:根据固定金额和商品的ID先生成订单,再生成二维码,客户扫一扫付款模式二支付的流程 ...