配置参数语法

配置文件路径

/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服务端配置文件详解的更多相关文章

  1. RabbitMQ服务端配置详解

    RabbitMQ支持三种配置方式: 1) 读取环境变量中配置, 这包括shell中环境变量和rabbitmq-env.conf/rabbitmq-env-conf.bat文件中配置的环境变量 可配置如 ...

  2. RabbitMQ服务端配置详解(转自:http://www.cnblogs.com/zhen-rh/p/6884297.html)

    RabbitMQ支持三种配置方式: 1) 读取环境变量中配置, 这包括shell中环境变量和rabbitmq-env.conf/rabbitmq-env-conf.bat文件中配置的环境变量 可配置如 ...

  3. Appium Windows服务端GUI详解

    Appium Windows服务端GUI各项的解释,从官方扒过来的,界面图标和最新版本有点不太一样,其他还是比较简单易懂的 原文https://github.com/appium/appium-dot ...

  4. 监控服务 - Nagios配置文件详解

    Nagios的配置文件: Nagios安装后有四种默认的配置文件:主配置文件.CGI配置文件.资源定义文件.对象定义文件.这些配置文件间具有一些关系,只有充分理解各配置文件,才能使得配置Nagios服 ...

  5. NodeJS+Express+mySQL服务端开发详解

    随着NodeJS的发展,现在已经被很多人熟知,NodeJS已经成为了前端开发人员必备的技能.本文不会对NodeJS过多介绍 如果你感兴趣可以访问NodeJS 官网, 维基百科 本文是利用NodeJS+ ...

  6. Linux:SSH服务配置文件详解

    SSH服务配置文件详解 SSH客户端配置文件 /etc/ssh/ssh——config 配置文件概要 Host * #选项“Host”只对能够匹配后面字串的计算机有效.“*”表示所有的计算机. For ...

  7. Linux系统学习 二十一、SAMBA服务—相关文件、配置文件详解

    3.相关文件 常用文件: /etc/samba/smb.conf      #配置文件 /etc/samba/lmhosts        #对应NetBIOS名与主机的IP的文件,一般Samba会自 ...

  8. NFS工作原理及配置文件详解

    nfs工作原理流程       如上图所示,当访问程序通过NFS客户端向NFS服务端存取文件时,其请求数据流程如下几点:     1.首先用户访问网站程序,由程序在NFS客户端上发出NFS文件存取功能 ...

  9. 网卡配置文件详解 用户管理与文件权限篇 文件与目录权限 软连接 tar解压命令 killall命令 linux防火墙 dns解析设置 计划任务crond服务 软件包安装 阿里云 yum源 安装

    Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. ...

随机推荐

  1. CSS 专业技巧

    使用CSS复位 CSS复位可以在不同的浏览器上保持一致的样式风格.您可以使用CSS reset 库Normalize等,也可以使用一个更简化的复位方法: * { box-sizing: border- ...

  2. 论SNAPSHOT包的危害性

    先介绍一下背景:我们应用是一个标准的spring+webx工程,博主在一次项目发布前为了再次测试一下自己的代码,将分支部署到日常环境中,但是项目启动的时候报错: 第一眼看到这个堆栈后有点懵逼 第一是上 ...

  3. C++源码的调用图生成

    前言 之前受知乎用户mailto1587启发,写了个C++源码的调用图生成器,可以以图示法显示C++函数的调用关系, 代码放在了github仓库里,仅供参考: CodeSnippet/python/S ...

  4. 基于Ubuntu12.04-server版的openstack F版搭建步骤

    本文为双节点搭建,分为计算(IP1)和控制节点(IP2) 说明: 计算节点组件: 1.mysql 2.keystone 3.Nova 4.glance 5.rabbitmq 控制节点组件: 1.cin ...

  5. link js重构心得

    过年前后一段时间,对link库的代码进行的大量的重构,代码精简了许多,性能也得到了很大的改善,写此文记录期间所做的改进和重构,希望对看到此文的js程序员有所帮助. 1. 代码构建 最初代码使用gulp ...

  6. javascript学习-目录

    Javascript学习 第1章 Javascript简介 1.1 Javascript简史 1.2 Javascript实现 1.3 Javascript版本 第2章 Javascript入门 2. ...

  7. Sqlserver 链接服务器和同义词

    在数据库的日常维护中,经常会遇到跨服务器的数据传输. 例如A服务器上的数据每天要从B服务器上去获取数据,然后插入到自己的服务器上.这种情况就要用到链接服务器了. 接下来,我就把我本机当作服务器A,17 ...

  8. Python thread local

    由于GIL的原因,笔者在日常开发中几乎没有用到python的多线程.如果需要并发,一般使用多进程,对于IO Bound这种情况,使用协程也是不错的注意.但是在python很多的网络库中,都支持多线程, ...

  9. Struts2学习第二天——动态方法调用

    method属性 在前面的例子里,Action默认使用execute()方法来处理请求.但是,如果有多个不同的请求需要同一个Action进行不同处理,怎么办?在Struts.xml文件中,需要指定Ac ...

  10. Node.js~在linux上的部署

    我们以centOS为例来说说如何部署node.js环境 一 打开centos,然后开始下载node.js包 curl --silent --location https://rpm.nodesourc ...