NFS共享服务

文章目录

  • NFS共享服务
    • NFS共享存储服务
      • 1、NFS(Network File System)网络文件系统
        • NFS服务主要进程
      • 2、NFS概述
      • 3、NFS工具
        • 3.1 exportfs
        • 3.2 showmount
        • 3.3 mount.nfs
        • 3.4 服务端的共享服务相关解释
      • 4、使用NFS共享资源
        • 4.1 命令格式步骤
        • 4.2 命令格式步骤(图文详解)
      • 5、搭建一台NFS共享服务器
        • 命令格式

NFS共享服务

NFS共享存储服务

1、NFS(Network File System)网络文件系统

  • 依赖于RPC(远端过程调用)
  • 需安装nfs-utils、rpcbind软件包
  • 系统服务:nfs、rpcbind
  • 共享配置文件:/etc/exports
NFS服务主要进程
  • rpc.nfsd 最主要的NFS进程,管理客户端是否可登录
  • rpc.mountd 挂载和卸载NFS文件系统,包括权限管理
  • rpc.lockd 非必要,管理文件锁,避免同时写出错
  • rpc.statd 非必要,检查文件一致性,可修复文件

说明:CentOS 6 开始portmap进程由rpcbind代替

日志:/var/lib/nfs/

2、NFS概述

  • NFS(Network File System)网络文件系统是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像本地目录一样访问远程服务器中的共享资源。

  • 对于大多数负载均衡群集来说,使用NFS协议来共享数据存储是比较常见的做法,NFS也是NAS存储设备必然支持的一种协议,但是由于NFS没有用户认证机制,而且数据在网络上明文传输,所以安全性很差,一般只能在局域网中使用。

  • NFS服务的实现依赖于RPC(Remote Process Call,远端过程调用)机制,以完成远程到本地的映射过程。所以需要安装nfs-utils、rpcbind软件包来提供NFS共享服务,前者用于NFS共享发布和访问,后者用于RPC支持。

3、NFS工具

3.1 exportfs

常用选项

-v #查看本机所有NFS共享
-r #重读配置文件,并共享目录
-a #输出本机所有共享
-au #停止本机所有共享

NFS共享服务_第1张图片

3.2 showmount

常用选项

showmount  -e  访问的主机地址    #查看共享目录

image-20240116162545115

3.3 mount.nfs

常用选项

mkdir /xxx    #建立文件夹

mount 192.168.10.11:/opt/abc /xxx    #将服务端共享的目录挂载到客户端使用

df -Th    #查看挂载情况

NFS共享服务_第2张图片

3.4 服务端的共享服务相关解释

NFS共享服务_第3张图片

/opt/abc        (rw,sync,wdelay,hide,no_subtree_check,sec=sys,secure,no_root_squash,no_all_squash)

客户机地址可以是主机名、IP地址、网段地址,允许使用“*”、“?”通配符
“rw”表示允许读写
“ro”表示为只读(默认)
sync:表示同步写入到内存与硬盘中
no_root_squash:表示当客户机以root身份访问时赋予本地root权限(默认是root_squash)
no_subtree_check:即使输出目录是一个子目录,,nfs服务器也不检查其父目录的权限,这样可以提高效率

其它常用选项:
all_squash:所有访问用户都映射为匿名用户或用户组
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检查其父目录的权限
root_squash:表示客户机用root用户访问该共享目录时,将root用户映射成匿名用户
anonuid=xxx : 指定NFS服务器/etc/ passwd文件中匿名用户的UID
anongid=xxx : 指定NFS服务器/etc/passwd文件中匿名用户的GID

4、使用NFS共享资源

4.1 命令格式步骤
##服务端和客户端操作之前首先关闭防火墙和防护中心
##服务端操作步骤:
rpm -q rpcbind nfs-utils    #查看相关软件包是否安装

(yum install nfs-utils rpcbind -y    #若没有安装,需要安装软件包)

mkdir -p /opt/abc    #建立文件夹

chmod 777 /opt/abc    #修改文件夹权限

vim /etc/exports    #编辑配置文件
#共享目录     可以访问的主机地址(权限)
/opt/abc    *(rw,sync,no_root_squash)
#/opt/abc表示共享的目录
#*表示所有设备都可以访问
#rw表示读写权限
#sync表示同步写入
#no_root_squash表示允许root用户在客户端上具有root权限

systemctl start rpcbind nfs-utils    #开启服务

exportfs  -v    #显示本机服务端的共享服务

exportfs  -r    #重新加载配置文件

showmount  -e    #查看本机共享的目录

##客户端:
rpm -q rpcbind nfs-utils    #查看相关软件包是否安装

(yum install nfs-utils rpcbind -y    #若没有安装,需要安装软件包)

showmount  -e  ip地址    #查看共享目录

systemctl start rpcbind nfs-utils    #开启服务

mkdir /xxx    #建立文件夹

mount 192.168.10.11:/opt/abc /xxx    #将服务端共享的目录挂载到客户端使用

df -Th    #查看挂载情况

umount /xxx    #解挂

vim /etc/fstab    #编辑配置文件(永久挂载)

mount -a    #重现加载挂载

df    #查看挂载情况

##验证:
cd /opt/abc    #服务端切换到共享目录下

touch xxxx    #服务端新建文件

ll    #在服务端的共享目录中查看到新建的文件

cd /xxx    #客户端切换到挂载点

ll    #在客户端的共享目录中查看到新建的文件
4.2 命令格式步骤(图文详解)
  • 服务端操作步骤(图文详解)

NFS共享服务_第4张图片

NFS共享服务_第5张图片

  • 客户端(图文详解)

NFS共享服务_第6张图片

NFS共享服务_第7张图片

  • 验证

NFS共享服务_第8张图片

NFS共享服务_第9张图片

5、搭建一台NFS共享服务器

设备 ip地址
NFS服务端 192.168.10.11
NFS客户端 192.168.10.13
命令格式
##服务端和客户端操作之前首先关闭防火墙和防护中心
##服务端操作步骤:
rpm -q rpcbind nfs-utils    #查看相关软件包是否安装

(yum install nfs-utils rpcbind -y    #若没有安装,需要安装软件包)

mkdir -p /opt/abc    #建立文件夹

chmod 777 /opt/abc    #修改文件夹权限

vim /etc/exports    #编辑配置文件
#共享目录     可以访问的主机地址(权限)
/opt/abc    *(rw,sync,no_root_squash)
#/opt/abc表示共享的目录
#*表示所有设备都可以访问
#rw表示读写权限
#sync表示同步写入
#no_root_squash表示允许root用户在客户端上具有root权限

systemctl start rpcbind nfs-utils    #开启服务

exportfs  -v    #显示本机服务端的共享服务

exportfs  -r    #重新加载配置文件

showmount  -e    #查看本机共享的目录

echo "this is NFS" >/opt/abc/index.html    #将"this is NFS"写入文件/opt/abc/index.html

##客户端:
yum install httpd -y    #安装软件包

systemctl start httpd    #开启服务

systemctl status httpd    #查看状态

mount 192.168.10.11:/opt/abc /var/www/html    #挂载

df    #查看挂载情况

##验证
浏览器访问客户端网址会显示相同的NFS服务器上的信息
this is NFS

命令格式(图文详解)

  • 客户端

NFS共享服务_第10张图片

NFS共享服务_第11张图片

image-20240116222526204

  • 客户端

NFS共享服务_第12张图片

NFS共享服务_第13张图片

  • 浏览器访问客户端网址会显示相同的NFS服务器上的信息

NFS共享服务_第14张图片

你可能感兴趣的:(linux,运维)