NFS 它的目的就是想让不同的机器、不同的作业系统可以彼此分享个别的档案啦
NFS即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。
- 安装NFS
yum install -y nfs-utils
启动NFS服务
- CentOS 6
service rpcbind startservice nfs start
- CentOS 7
systemctl start nfs.service
- CentOS 6
网络文件系统的机制
应用层对内核发起系统调用,内核的接口接受到系统调用的时候,并不在本地执行系统调用的代码,而是将这段代码通过网络发送给监听在另一台主机上的套接字程序,使得这段代码在另一台主机中的内核执行,并访问另一台主机上的块设备,之后再将结果原路返回给发起网络请求的主机。- PC:procedure call
- RPC :remote procedure call
- rpc.mountd:主要用户完成认证机制和给远程的主机发放挂载令牌
- rpc.lockd
- prc.statd
(1)服务端安装nfs-utils,服务端的程序名就叫nfs(2)编辑/etc/exports文件,指定允许挂载共享文件系统的主机一般每一行的格式为:共享目录 给哪个网段共享(选项1 , 选项2)- 例如:
/data 192.168.0.0/16(rw)将本地的/data目录共享给192.168网段的主机挂载,并且有读写权限
- 例如:
- (3)
重新导出文件系统,让内核重读/etc/exports文件,不需要重启nfs服务exportfs -r(重新导出export list)
- (4)在客户端查看导出的共享文件系统
showmount -e 192.168.10.202
- (5)客户端挂载远端共享的文件系统
mount -t nfs 192.168.10.202:/data /web/html
- (6)客户端通过文件系统挂载信息查看
df -h或mount
- (7)在服务端设置共享文件系统目录的访问权限
- 1:可以直接设置chmod
- 2:可以通过setfacl 来设置
setfacl -m u:archlinux:rwx /data(如果archlinux的uid为2000)
- (8)在客户端有一个本地用户hadoop,其uid也为2000
- su - hadoop
- 那么hadoop就能够在/web/html目录有读写权限(因为在/etc/exports文件中对于远端的主机只有读写权限)
- 对于/etc/exports文件中,指定客户端访问的权限字段说明
- 主机名格式(大多使用的是IP)
- 单个主机:ipv4 , ipv6 , FQDN
- IP networks : 两种掩码格式均支持,例如:192.168.0.0/255.255.0.0 或者 192.168.0.0/16
- wildcards:主机名通赔,例如:*uplooking.com
- netgroups:NIS域内的主机组,@group_name
- anonymous:使用* 表示所有的客户端主机
- General Options
- rw:读写权限
- root_squash:压缩root用户的权限
- no_root_squash:不压缩root用户的权限
- all_squash:压缩所有的用户
- anonuid and anongid:映射至哪个用户
- ro:只读
- 主机名格式(大多使用的是IP)
NFS 它的目的就是想让不同的机器、不同的作业系统可以彼此分享个别的档案啦的更多相关文章
- Go推出的主要目的之一就是G内部大东西太多了,系统级开发巨型项目非常痛苦,Go定位取代C++,Go以简单取胜(KISS)
以前为了做compiler,研读+实现了几乎所有种类的语言.现在看语法手册几乎很快就可以理解整个语言的内容.后来我对比了一下go和rust,发现go的类型系统简直就是拼凑的.这会导致跟C语言一样,需要 ...
- NFS服务器原理
NFS服务器 port:2049 NFS 为 Network FileSystem 的简称,它的目的就是想让不同的机器.不同的操作系统可以彼此分享个别的档案啦!目前在 Unix Like ...
- Ubuntu NFS搭建过程
先简单介绍一下NFS服务器是什么? NFS server可以看作是一个FILE SERVER,它可以让你的PC通过网络将远端的NFS SERVER共享出来的档案MOUNT到自己的系统中,在CLIENT ...
- Hbase学习02
第2章 Apache HBase配置 本章在“入门”一章中进行了扩展,以进一步解释Apache HBase的配置. 请仔细阅读本章,特别是基本先决条件,确保您的HBase测试和部署顺利进行,并防止数据 ...
- 分布式框架Celery(转)
一.简介 Celery是一个异步任务的调度工具. Celery 是 Distributed Task Queue,分布式任务队列,分布式决定了可以有多个 worker 的存在,队列表示其是异步操作,即 ...
- linux:什么是linux
1>.linux是一套作业系统(linux就是核心与呼叫这两层),每一种作业系统都是在他专门的硬体机器上面运行的:linux是一个Open Source的作业系统,具有可移植性 2>.li ...
- ARM 处理器:RISC与CISC 是什么?【转】
转自:https://blog.csdn.net/willsun2017/article/details/83388990 完全看懂 ARM 处理器:RISC与CISC 是什么? 历史.架构一次看透 ...
- 网络文件系统(NFS)简介
网络文件系统(Network File System, NFS)是一种分布式文件系统协议,最初由Sun Microsystems公司开发,并于1984年发布.其功能旨在允许客户端主机可以像访问本地存储 ...
- Linux下NFS服务器的搭建与配置
一.NFS服务简介 NFS 就是 Network FileSystem 的缩写,最早之前是由sun 这家公司所发展出来的. 它最大的功能就是可以透过网络,让不同的机器.不同的操作系统.可以彼此分享个别 ...
随机推荐
- 鼠标移动在屏幕上显示温度Tip提示功能-CToolTipCtrl类的使用
初学VC++,太多知识不懂,需要不断的查找资料,想通过记录让自己有所积累,主要是怕以后会很快忘记.最近在做一个在屏幕上显示鼠标移动位置的温度值,我利用先缓存一帧图像的温度值,然后,通过鼠标移动消息相应 ...
- 一个servlet如何处理多个请求
页面1:表单的action=login?method=login 页面2:表单的action=login?method=insert ..... 然后通过method的值采用不同方法进行处理. 如下 ...
- 20155222 2016-2017-2《Java程序设计》课程总结
20155222 2016-2017-2<Java程序设计>课程总结 每周作业链接汇总 预备作业1:期望的师生关系 预备作业2:技能获取与语言学习 预备作业3:安装虚拟机及学习linux系 ...
- linux 初学体验 20155317 王新玮
学习基于VirtualBox虚拟机安装Ubuntu图文教程在自己笔记本上安装Linux操作系统 通过询问同学和上网搜查百度,完成了虚拟机的安装,开始了linux的学习. 通过实践学习别出心裁的Linu ...
- 20155332 2006-2007-2 《Java程序设计》第2周学习总结
20155332 2006-2007-2 <Java程序设计>第2周学习总结 教材学习内容总结 在JAVA中分为基本类型和类类型两大类型系统. JAVA中的基本类型主要分为如下几类: 1. ...
- tomcat各版本下载
地址:http://archive.apache.org/dist/tomcat/
- Yii2 模块module笔记
包含内容: 使用GII新建module 建立子模块 在其他控制器中调用模块的操作(action) 1. 使用Gii工具新建module 注意模块的路径,我们没有写backend\modules\Art ...
- 【MongoDB安装】MongoDB在centos linux平台安装
参考:http://www.runoob.com/mongodb/mongodb-linux-install.html 一..下载安装包 下载方式: 1.登录官网download,然后通过xftp传到 ...
- static和构造函数初始化顺序
abstract class demo{ public demo() {} protected void a() { System.out.println("I am parents!&qu ...
- Unity利用Share SDK实现QQ、微信及微博第三方登录及定制内容分享(附代码)
最近因为公司的项目需要添加一些实用性的功能,需要添加第三方登录及分享,采用的是Mob的SDK,可以先到其官网下载对应的SDK 点击这里,为了方便后期进行数据统计和分析,所以可以先添加一个应用,添加成功 ...