NFS文件系统及搭建NFS共享服务
一、什么是文件系统?
文件系统是对一个存储设备上的数据和元数据进行组织的一种机制。文件系统是在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区上组织文件方式方法,常见文件系统如ext2、ext3、ext4、NTFS或fat、fat32等。文件系统格式组织存储文件或数据的方法,目的是易于查询和存取数据,如果磁盘上没有文件系统也就无法存储数据了,因此,磁盘分区后能够使用之前必须建立对应的文件系统才行(类似买了电脑不装系统就无法使用)。
(1)文件系统是对一个存储设备上的数据和元数据进行组织的一种机制;
(2)分区必须格式化,创建的文件系统才能存放数据,不同的分区只能有一种文件系统。
(3)Linux下常见文件系统ext2、ext3、ext4、zfs、xfs、和Reiserfs
Windows下常见文件系统NTFS、FAT31。
二、NFS网络文件共享服务:
1、NFS概述:
NFS是第一个构建于IP协议之上的现代网络文件系统;
NFS 是 Network File System 的缩写,它的主要功能是通过网络让不同的主机系统之间可以彼此共享文件或目录。NFS客户端(一般为应用服务器,如web)可以通过挂载(mount)的方式将NFS服务器共享的数据文件目录挂载到NFS客户端本地系统中(就是某一个挂载点下)。从NFS客户端的机器本地上看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或者目录一样,而实际上确是远端的服务器目录。
NFS网络文件系统的使用很像是windows系统的网络共享、安全功能、网络驱动器映射,这也和Linux里的samba服务类似。
2、NFS应用场景:
在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享视频、图片、附件等静态资源文件,NFS是当前互联网系统架构中最常用的数据存储服务之一,特别是中小型网站公司应用频率很高。
3、NFS挂载原理:
传统挂载:mount 源 目标
NFS挂载:mount 远端的IP地址:/video 本地目录(/video)
-- 访问本地的video就到了远端地址的video目录下,和在本机访问没什么区别。
4、搭建NFS服务

hostname 新主机名;su
实验环境:Centos6.5 两台机器,
一台 nfsserver -- 192.168.3.137
一台 nfsclient -- 192.168.3.138
NFS主要有两个软件包 -- nfs-utils(包括rpc.nfsd、rpc.mountd)、rpcbind(Centos6版本)
(1)安装 nfs-utils 包,服务端和客户端都需要安装。
yum groupinstall #查看软件包,软件包是中文修改字符集(LANG=en)。

yum groupinstall -y "NFS file server" #安装NFS包,一定要加双引号。

(2)服务端(nfsserver)启动 rpc 服务
/etc/init.d/rpcbind start #启动 rpc 服务

查看本地有没有共享,rpc 服务对外的端口是 111

-------------------------------------------------------------------------------------
反例:出现如下报错表示 rpc 服务没有启动:

----------------------------------------------------------------------------------------
(3)服务端启动 nfs 服务
/etc/init.d/nfs start #启动 nfs 服务

再次查看本地 rpc 服务,出现很多端口。

(4)将 rpcbind 和 nfs 设置成开机自启动。
chkconfig rpcbind on
chkconfig nfs on
chkconfig --list rpcbind #检查状态
chkconfig --list nfs
检查状态:

(5)客户端(nfsclent) 开启 rpcbind 服务,不用开启 nfs 服务
/etc/init.d/rpcbind start #开启 rpcbind 服务

chkconfig rpcbind on #设置 rpcbind 服务开机自启动
chkconfig --list rpcbind
(6)/etc/exports -- nfs 的配置文件,此文件默认为空
vim /etc/exports #编辑文件

sync 同步到磁盘,把数据从buffer写入到磁盘
async -- 表示写入到缓存里
ro -- read only -- 表示只读
rw -- 可读可写
(7)重启 nfs 服务,不能用 restart 重启,要用 reload 重启。
/etc/init.d/nfs reload #平滑重启 nfs 服务

在本机做检查,查看共享的文件是否能共享。
showmount -e localhost

在客户端(nfsclient)查看是否能发现共享文件。
showmount -e 192.168.3.137 #访问的IP地址

----------------------------------------------------------------------------------------------------------
注意:如果出现客户端无法发现服务端的共享文件,需要从以下方面排错。
①检查是否关闭防火墙:

service iptables stop
②能否 ping 通对端地址
③能否 telnet 远程登录对端。后面接 rpc 的端口号 111(下述为 telnet 登录对端)

一般(2)(3)没问题是可以正常访问的,注意要关闭防火墙。
-----------------------------------------------------------------------------------------------------------
(8)在客户端(nfsserver)挂载。
mount -t nfs 192.168.3.137:/data /mnt #将对端共享的目录挂载到本地的 /mnt 目录下

(9)在客户端的 /mnt 目录下查看文件是否成功共享。
服务端(nfsserver)的 /data 目录:

客户端(nfsclient)查看 /mnt 目录:

文件已经共享。
(10)测试:服务端删除一个文件,客户端查看共享文件内容。
服务端:删除 abc.txt 文件

客户端:查看共享文件

但是:在服务端配置共享文件的时候,给的权限是可读可写,此时却不能写。

因为这是目录本身的权限问题:

服务端的 /data 目录对于其他用户没有可写的权限,因此加上权限即可。
chmod /data
客户端可写。

(11)其他授予写权限的操作。
客户端进行写的操作,用户和用户组属于 nfsnobody

在 /var/lib/nfs/etab 文件中说明 nfs其他用户的 UID 是从 65534 开始。

nfsnobody的UID和GID都为65534

由于NFS其他用户都是属于 nfsnobody,所以可以将服务端的 /data 目录所属组和所属主修改为 nfsnobody。

/data 目录其他用户不具备写的权限,但是将 /data 的所属组和所属主更改为 nfsnobody;
在客户端进行增删操作。

客户端可以直接进行创建文件,同时最后删除所有文件,在服务端查看是否文件全部删除。

NFS网络文件共享服务搭建完成。
但是挂载在 /mnt 目录下,开机会丢失,所以最好把共享的目录放在 rc.local 里或者 fstab 中。
NFS文件系统及搭建NFS共享服务的更多相关文章
- umount nfs文件系统 显示 umount.nfs: device is busy
网上的方法一般都是 fuser -m /nfs 查出进程号,然后杀死进程号,或者fuser -km /nfs直接杀死,我试了下都不行 解决方法: 对于nfs文件系统来说,umount -l /nfs ...
- NFS 文件系统的搭建
教程: 一.配置linux内核: 进入打过at91补丁的linux2.6内核源代码树的根目录 make menuconfig进入内核配置程序. 1. Networking ---> Netwo ...
- NFS文件系统存储服务部署
1 NFS介绍 1.1 什么是NFS? NFS是Network File System的缩写,中文名称是网络文件系统.它的主要功能是通过网络让不用的主机系统之间可以共享文件或者目录.NFS客户端通过挂 ...
- 网络共享服务(二)之NFS
NFS: Network File System,是一种基于TCP/IP传输的网络文件系统协议,最初由SUN公司开发.通过使用NFS协议,客户机可以像访问本地目录一样访问服务器中的共享资源.但是,NF ...
- 基于OneMap的水利行业共享服务平台搭建步骤
今天上午再次学习Esri技术培训中心的“GIS服务共享与运维管理——之OneMap解决方案”课程,从中学习了OneMap的产品架构以及基于OneMap共享服务平台的搭建步骤.下面把其中水利行业的共享服 ...
- NFS(网络文件系统的搭建)
关于NFS的原理,我在这就不概诉了,其实非常简答的理解就是一个网络磁盘,你需要把它挂载到你的磁盘上使用而已.那接下来谈谈如和搭建NFS网络文件系统. 需要使用2台机器作此实验,我分别配置IP为192. ...
- Linux搭建NFS服务
一.NFS服务简单介绍 NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中, ...
- 4、架构--NFS实践、搭建web服务、文件共享
笔记 1.晨考 1.数据备份的方式有哪些 全量和增量 2.数据备份的命令有哪些,都有哪些优点缺点 cp : 本地,全量复制 scp :远程,全量复制 rsync :远程,增量复制 3.rsync的参数 ...
- 搭建 NFS 服务 & 实时同步
今日内容 NFS简介 实现 NFS 文件同步功能 NFS 配置详解 统一用户 搭建 web 服务 NFS 实现文件共享 内容详细 1.NFS 简介 1.1 介绍 实现多台 web 服务器可以共享数据资 ...
随机推荐
- ORACLE存储过程详解
1.定义 所谓存储过程(Stored Procedure),就是一组用于完成特定数据库功能的SQL语句集,该SQL语句集经过编译后存储在数据库系统中.在使用时候,用户通过指定已经定义的存储过程名字并给 ...
- uploadify没反应
由于业务问题,需要用到uploadify这个插件,结果官方的case怎么弄都没问题,弄到自己的页面上就有问题了. 后来发现,这个插件是要用到swf的,但是页面加载的过程中并没有加载swf文件,所以将问 ...
- 建议3:正确处理Javascript特殊值---(1)正确使用NaN和Infinity
NaN时IEEE 754中定义的一个特殊的数量值.他不表示一个数字,尽管下面的表达式返回的是true typeof(NaN) === 'number' //true 该值可能会在试图将非数字形式的字符 ...
- C# 中获取一个目录下的目录与文件
//获得目录下所有文件和子目录使用DirectoryInfo类的GetFileSystemInfos()方法. //获得目录下所有目录 string[] dirs = Directory.GetDir ...
- 《Java知识应用》Java通过Get和Post实现HTTP请求。
Http请求,是非常常见并且的数据交互方式. 下面讲解:Get和Post的两个实战案例. 用于测试的Action(controller). @RequestMapping(value = " ...
- SVN服务器和客户端的下载和安装
一.SVN服务器VisualSVN下载和安装 当前版本:4.1.3下载地址:https://www.visualsvn.com/server/download/下载下来的文件:VisualSVN-Se ...
- JavaScript-作用域与作用域链
一.JavaScript作用域: 1.就是代码名字(变量)在某个范围内起作用和效果,目的是为了提高程序的可靠性更重要是减少命名冲突. 2.js的作用域(es6)之前,分为全局作用域.局部作用域 ...
- 基于STM32的无损压缩算法miniLZO移植,压缩率很高,20KB随机数压缩到638字节,耗时275us
说明: 1.miniLZO是采用C编写的无损压缩库. 2.提供了快速压缩和超快速解压缩能力. 3.比较耗内存,需要64KB内存用于压缩,对于H7这种大内存的,非常合适.或者有外置SRAM/SDRAM的 ...
- 流程图软件 drawio 免费 github开源
做程序需要画流程图,发现迅捷流程图的在线版挺好用的,但是,它的导出只允许VIP会员,不是VIP会员只能导出xsd文件,而且要注册账号,极为麻烦. 在知乎看到了一位网友的评论,有一款软件和迅捷流程图一模 ...
- 使用hexo、github Pages搭建博客
1. 安装node 如果本机已经有node,为避免安装出现问题,建议先升级到最新版.参考:https://juejin.im/post/5b9739d1e51d450e9f66ee3b 2. 安装he ...