nfs文件系统及搭建nfs共享服务(代码片段)

blog-pl blog-pl     2022-11-29     414

关键词:

一、什么是文件系统?

  文件系统是对一个存储设备上的数据和元数据进行组织的一种机制。文件系统是在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区上组织文件方式方法,常见文件系统如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 包,服务端和客户端都需要安装。

1
yum groupinstall #查看软件包,软件包是中文修改字符集(LANG=en)。

技术图片

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

 技术图片

 (2)服务端(nfsserver)启动 rpc 服务

1
/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 777 /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-server)配置客户端(web-client)NFS服务简单执行流程NFS文件访问权限NFS服务端配置客户端地址的表示方法/etc/exports参数/etc/exports生效创建共享目录NFS服务端配置小结NFS客户端配置查看远端共享目录挂载共享目录 查看详情

02-nfs存储服务(代码片段)

1、NFS存储服务概念NFS是NetworkFileSystem的缩写及网络文件系统。NFS主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录,NFS客户端可以通过挂载的方式将NFS服务端共享数据的文件目录挂载到本地挂载点,这样对本地... 查看详情

redhat6.5中搭建nfs共享存储服务(代码片段)

NFS是一种基于TCP/IP传输的网络文件系统协议,通过NFS服务客户机可以像访问本地目录一样访问远程NFS服务器中提供的共享资源,对于大多数负载均衡群集来说,使用NFS协议来共享数据库较为常见,但NFS服务没有用户认证机制,且... 查看详情

nfs文件网络共享(代码片段)

@[TOC]NFS文件网络共享简介官网:http://nfs.sourceforge.net/推荐博客:Linux挂载命令mount用法及参数详解光盘或光盘镜像:iso9660DOSfat16文件系统:msdosWindows9xfat32文件系统:vfatWindowsNTntfs文件系统:ntfsMountWindows文... 查看详情

nfs文件网络共享(代码片段)

@[TOC]NFS文件网络共享简介官网:http://nfs.sourceforge.net/推荐博客:Linux挂载命令mount用法及参数详解光盘或光盘镜像:iso9660DOSfat16文件系统:msdosWindows9xfat32文件系统:vfatWindowsNTntfs文件系统:ntfsMountWindows文... 查看详情

nfs文件网络共享(代码片段)

@[TOC]NFS文件网络共享简介官网:http://nfs.sourceforge.net/推荐博客:Linux挂载命令mount用法及参数详解光盘或光盘镜像:iso9660DOSfat16文件系统:msdosWindows9xfat32文件系统:vfatWindowsNTntfs文件系统:ntfsMountWindows文... 查看详情

nfs架构搭建及配置

...14章NFS服务搭建与配置14.1NFS介绍NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上... 查看详情

nfs架构搭建及配置

...14章NFS服务搭建与配置14.1NFS介绍NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上... 查看详情

nfs应用及搭建

...是服务端,一台是客户端NFS:NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上... 查看详情

搭建nfs服务实现两台虚拟机之间共享(代码片段)

NFS网络文件系统,实现Linux与Linux之间的简化文件共享服务1.创建目录,将光盘镜像挂载到新建目录上mkdir-p/media/cdrommount-oloop/dev/cdrom/media/cdrom2.配置yum源,安装nfs服务cd/etc/yum.repos.dvilocal.repo[redhat]name=redhatbaseurl=file:///media/cdromen 查看详情

ubuntu下搭建nfs服务(代码片段)

1、NFS介绍NFS(NetworkFileSystem)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上... 查看详情

搭建nfs网络文件共享服务(干货)(代码片段)

先上干货:以下是配置全过程(客户端和服务端对比)查看NFS软件包[[email protected]~]#rpm-aqnfs-utilsportmaprpcbind#这个命令比(yumgrouplist)的更有效率安装法一:[[email protected]~]#yumgroupinstall"NFSfileserver"也可以使用法二:[... 查看详情

搭建nfs文件共享--实例解析

1NFS简介  NFS是NetworkFileSystem的缩写,即网络文件系统。一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布。功能是通过网络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应用程序在客户... 查看详情

nfs网络文件共享系统-综合架构no.2(代码片段)

相信可能成就一切可能,相信不可能就是自废武功!!!nfs服务器搭建文档1.先打印系统版本cat/etc/redhat-releaseuname-runame-m2.在所有需要使用nfs的服务器上安装nfs-utilsrpcbindyuminstallnfs-utilsrpcbind-yrpm-qanfs-utilsrpcbind安装好nfs系统会创建... 查看详情

在centos中搭建nfs(代码片段)

概述NFS是一款经典的网络文件系统,在Linux上我们可以通过创建一个NFS服务在不同的服务器之间共享磁盘文件,而不用在多个服务器之间进行不断的拷贝复制,麻烦且浪费存储空间。在k8s中我们也可以使用NFS来作为我们的存储类... 查看详情

nfs网络共享文件服务搭建

一.NFS(networkfilesystem)1.概念:NFS(networkfilesystem)网络共享文件系统2.作用:类似于windows系统网络共享,但无法部署在windows中,适用于中小型企业共享部署,大型网站不适合(Moosefs,FASTdfs)windows网络共享FTP(linux),samba(linux),... 查看详情

nfs共享存储服务(代码片段)

NFS是NetworkFileSystem的简写,即网络文件系统,网络文件系统是FreeBSD支持的文件系统中的一种,也被称为NFS.NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。... 查看详情

nfs企业级网络文件共享(代码片段)

企业级NFS网络文件共享服务1、NFS介绍什么是NFS?NFS是networkfilesystem的缩写,中文意思是网络文件系统。它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或者目录。NFS客户端(一般为应用服务器,例... 查看详情