nfs服务端配置文件详解
配置参数语法
配置文件路径
/etc/exports
可以使用#进行注释说明
一个完整的配置实例至少需要3个参数
1.被共享的目录
必须是存在的目录
2.向谁共享
可以指定主机或网络范围,支持通配符*(表示谁都可以访问)
10.0.0.1,10.0.0.0/24,10.0.0.0/255.255.255.0都是有效的参数
3.怎么共享
在“向谁共享”参数后边以“()”存在,之间没有空格,不同的参数之间以“,”相隔
实例:/data 192.168.220.0/24(rw)
默认参数
在配置一个nfs实例,并启动nfs服务之后,在/var/lib/nfs/etab文件中生成该实例的配置信息
我配置了一个nfs实例/data 192.168.220.0/24()没有指定任何参数,获取到的默认参数如下:
[root@nfs ~]# cat /var/lib/nfs/etab /data (ro,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=65534,anongid=65534,sec=sys,ro,root_squash,no_all_squash)
参数详解请执行man exports
常用参数
rw/ro 客户端在挂载了共享目录之后对该目录所具备的的权限,ro(只读),rw(读写);
async/rsync 同步/异步,async表示客户端向文件中即使只写了1K的数据服务端也会立刻同步到硬盘中,可以保证数据不被丢失;rsync则会先将数据存放在内存中适时的往硬盘中写,可以提高系统系能;
no_root_squash/root_squash 是否启用对root身份压缩为nfsnobody(默认的是nfsnobody,可以通过anonuid指定用户)的功能,如果是以root的身份登录的客户机,进入共享目录之后将会具备root权限(no_root_squash),反之为(nfsnobody);
all_squash/no_all_squash 不管登录NFS的用户的身份如何,他的身份都会被压缩成nfsnobody(默认);
anonuid 指定运行nfs进程用户的UID;
anongid 指定运行nfs进程用户组的GID;
以上是常用的参数,可以根据需求进行调整,其他的参数保持默认即可。
nfs的权限问题:
nfs的权限由两部分组成
1.远端主机对该目录的权限(rw,ro),在exports中决定,这是第一扇门;
2.被共享目录在nfs服务器端的权限,由该目录的属组,属主,权限大小决定,这是第二扇门
注意:如果,第一扇门的权限是ro,即使第二扇门的权限是777,那么这个目录也是不可写的。
如果第一扇门的权限是rw,客户端的用户在该目录的权限就和客户端用户的身份和该目录本身的权限,属主,属组有关,客户端用户的身份会被折射到服务器端:
比如:
客户端以along的身份登录,而在服务器端改目录的属主也是along,客户端和服务器端along的UID也要一样,那么客户端就可以在该目录为所欲为;
如果客户端是以root的身份登录,因为服务器端默认有root_squash参数,所以root的身份会被压缩成nfsnobody,假如改目录的属主是along,权限是755,那么客户端的权限是只读。
nfs服务端配置文件详解的更多相关文章
- RabbitMQ服务端配置详解
RabbitMQ支持三种配置方式: 1) 读取环境变量中配置, 这包括shell中环境变量和rabbitmq-env.conf/rabbitmq-env-conf.bat文件中配置的环境变量 可配置如 ...
- RabbitMQ服务端配置详解(转自:http://www.cnblogs.com/zhen-rh/p/6884297.html)
RabbitMQ支持三种配置方式: 1) 读取环境变量中配置, 这包括shell中环境变量和rabbitmq-env.conf/rabbitmq-env-conf.bat文件中配置的环境变量 可配置如 ...
- Appium Windows服务端GUI详解
Appium Windows服务端GUI各项的解释,从官方扒过来的,界面图标和最新版本有点不太一样,其他还是比较简单易懂的 原文https://github.com/appium/appium-dot ...
- 监控服务 - Nagios配置文件详解
Nagios的配置文件: Nagios安装后有四种默认的配置文件:主配置文件.CGI配置文件.资源定义文件.对象定义文件.这些配置文件间具有一些关系,只有充分理解各配置文件,才能使得配置Nagios服 ...
- NodeJS+Express+mySQL服务端开发详解
随着NodeJS的发展,现在已经被很多人熟知,NodeJS已经成为了前端开发人员必备的技能.本文不会对NodeJS过多介绍 如果你感兴趣可以访问NodeJS 官网, 维基百科 本文是利用NodeJS+ ...
- Linux:SSH服务配置文件详解
SSH服务配置文件详解 SSH客户端配置文件 /etc/ssh/ssh——config 配置文件概要 Host * #选项“Host”只对能够匹配后面字串的计算机有效.“*”表示所有的计算机. For ...
- Linux系统学习 二十一、SAMBA服务—相关文件、配置文件详解
3.相关文件 常用文件: /etc/samba/smb.conf #配置文件 /etc/samba/lmhosts #对应NetBIOS名与主机的IP的文件,一般Samba会自 ...
- NFS工作原理及配置文件详解
nfs工作原理流程 如上图所示,当访问程序通过NFS客户端向NFS服务端存取文件时,其请求数据流程如下几点: 1.首先用户访问网站程序,由程序在NFS客户端上发出NFS文件存取功能 ...
- 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...
随机推荐
- Effective前端6:避免页面卡顿
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto } .crayon-line spa ...
- JUnit4 与 JMock 之双剑合璧
引言 单元测试可以保证代码的质量,最大程度降低修复系统 bug 的时间和成本.能被称为测试的阶段有:单元测试.集成测试.系统测试和用户测试.修复系统 bug 的时间和成本随着这些阶段的推移呈指数级增长 ...
- 如何用docker安装laravel开发环境
如何用docker安装laravel开发环境 看laravel框架的官方文档安装部分时,发现需要安装特别多软件,估计还有许多复杂的配置,官方推荐使用Laravel Homestead虚拟机进行安装,但 ...
- xx-net 使用方式
<iframe width='738' height='523' class='preview-iframe' scrolling='no' frameborder='0' src='http: ...
- 浅谈V8引擎中的垃圾回收机制
最近在看<深入浅出nodejs>关于V8垃圾回收机制的章节,转自:http://blog.segmentfault.com/skyinlayer/1190000000440270 这篇文章 ...
- Extjs 数据代理
Ext.data.proxy.Proxy 代理类的根类 客户端代理: 1.LocalStorageProxy:将数据存储在localStorage中,此种方式可以持久的将数据存储在客户端 要使用代理, ...
- 使用hubuild,mui开发微信app—首页(一)
写在前面 本系列文章我将介绍一下从零开始利用hubuild,mui实现微信app的开发,该系列是个人学习记录,所以在每篇文章中,都是从怎么去实现开始讲解,然后再把实例中涉及知识点做一个概述. 创建一个 ...
- 【转】CXF+Spring+Eclipse简明示例
多系统(异构系统)进行交互时,一种良好的方式便是调用Web Service,本示例基于Apache组织的CXF,为了方便起见特将服务端和客户端写在同一个工程下,实际项目中是不可能的,但是客户端却依赖于 ...
- 从C#到TypeScript - Proxy
总目录 从C#到TypeScript - 类型 从C#到TypeScript - 高级类型 从C#到TypeScript - 变量 从C#到TypeScript - 接口 从C#到TypeScript ...
- ADO.net参数化查询陷阱
避免SQL漏洞注入攻击,往往采用的是参数化查询!然而在使用参数化查询中,往往为了方便就直接通过构造方法来进行数据的初始化了,然而这样就引发一个这样的问题,当参数值为0时,就出现参数为空的情况了. 一. ...