NFS(Network File System) 服务安装部署配置

简介: NFS(Network File System)是一种网络文件系统,主要具有以下特点:- 允许网络中的计算机之间通过TCP/IP网络共享文件。- 可以透明地让不同操作系统的机器访问同一个文件系统。- 用户可以像访问本地文件一样访问远程NFS服务器上的文件。- NFS主要由两个组件构成:NFS服务器端与NFS客户端。- 服务器端负责共享文件系统、控制权限,客户端负责访问服务器端的资源。- 主要协议是NFSv3和NFSv4,基于RPC工作。- 支持不同客户端并发访问、文件锁、权限控制等。- 性能稳定,通常用于数据共享。

介绍

NFS(Network File System)是一种网络文件系统,主要具有以下特点:

  • 允许网络中的计算机之间通过TCP/IP网络共享文件。

  • 可以透明地让不同操作系统的机器访问同一个文件系统。

  • 用户可以像访问本地文件一样访问远程NFS服务器上的文件。

  • NFS主要由两个组件构成:NFS服务器端与NFS客户端。

  • 服务器端负责共享文件系统、控制权限,客户端负责访问服务器端的资源。

  • 主要协议是NFSv3和NFSv4,基于RPC工作。

  • 支持不同客户端并发访问、文件锁、权限控制等。

  • 性能稳定,通常用于数据共享。

  • 主要应用在异构操作系统间共享文件,或者数据中心与分支机构之间共享数据。

  • 也可用于Kubernetes集群中不同节点间共享文件存储。

NFS是一个成熟、高效、安全的网络文件共享服务,使得异构系统能透明地访问共享数据。但需要注意配置访问权限控制。

安装

yum -y install rpcbind nfs-utils.x86_64

yum -y install表示使用 yum 命令安装软件包,-y 参数表示自动回答 yes 不需要确认。

需要安装的包是:

  • rpcbind:提供 NFS 远程调用服务的守护进程,NFS 客户端需要依赖该服务。

  • nfs-utils:NFS 实用工具,包含 NFS 挂载需要的命令如 showmount、mount.nfs 等。

所以这条命令安装的包是:

  • rpcbind - NFS 远程调用服务

  • nfs-utils - NFS 客户端和工具

安装这两个包就可以让系统获得访问 NFS 共享目录的能力。

之后还需要将 NFS 主机的共享目录挂载到本地生成挂载点。

配置

定义共享目录

vim /etc/exports

这行打开 NFS 配置文件 /etc/exports 进行编辑。

/nfsdata *(rw,no_root_squash)

这行在配置文件中定义了一个共享目录 /nfsdata,主要参数说明如下:

  • /nfsdata:表示要共享出去的服务器目录

  • *:表示允许所有客户端访问这个共享目录,可以替换为指定的客户端,或者指定网段

  • rw:表示这个共享目录对客户端是可读写的

  • no_root_squash:允许客户端使用 root 用户访问共享目录,不会降级权限

所以这两行命令的效果就是配置了一个对所有客户端开放的可读写的 /nfsdata 共享目录,并允许 root 权限访问。


NFS共享目录在/etc/exports文件的配置中,括号里的参数还可以包括:

  • async:设置为异步模式,提高性能。

  • sync:设置为同步模式,更安全可靠。

  • secure:要求访问使用安全NFS。

  • insecure:允许客户端不使用端口映射访问。

  • wdelay:检查写入权限的延迟时间。

  • nohide:共享隐藏文件。

  • subtree_check:检查子目录权限。

  • no_subtree_check:不检查子目录权限。

  • anonuid/anongid:匿名用户的UID/GID。

  • all_squash:所有访问用户映射为匿名用户。

创建

如果定义的共享目录不存在,请在启动服务前创建目录

mkdir /nfsdata

启动

systemctl enable rpcbind --now
systemctl enable nfs --now

启动和设置 NFS 服务开机启动

rpcbind 服务是 NFS 的重要依赖,提供了远程调用服务,必须启动该服务。

nfs服务是NFS服务器进程 itself,提供文件共享服务。

--now 参数表示启动服务, enable 参数表示设置服务开机自动启动。

所以这两条命令的效果是:

  1. 启动 rpcbind 服务

  2. 设置 rpcbind 开机启动

  3. 启动 nfs 服务

  4. 设置 nfs 开机启动

这样就可以启动 NFS 服务器的服务,并在重启后自动运行。

NFS SERVER 就配置完成了,之后客户端可以挂载共享目录进行访问。

客户端

安装

客户端也需要安装才可以访问挂载

yum -y install rpcbind nfs-utils.x86_64

查看

查看nfs服务器共享的目录

showmount -e "nfs服务器IP"

[root@localhost ~]# showmount -e 192.168.9.9
Export list for 192.168.9.9:
/nfsdata *

挂载

mount -t nfs "nfs服务器地址":"共享目录: "要挂载到客户端本机的那个目录"

[root@localhost ~]# mount -t nfs 192.168.9.9:/nfsdata /opt/

目录
相关文章
|
2月前
|
Unix Linux 网络安全
NFS挂载服务
【10月更文挑战第14天】
68 2
|
4月前
|
运维 Ubuntu 安全
在Linux中,如何配置NFS共享?
在Linux中,如何配置NFS共享?
|
4月前
|
存储 Ubuntu Linux
NFS服务部署全攻略:从零到一,轻松驾驭网络文件系统,让你的文件共享像飞一样畅快无阻!
【8月更文挑战第5天】NFS(网络文件系统)能让网络中的电脑无缝共享文件与目录。基于客户端-服务器模式,用户可像访问本地文件般透明操作远程文件。部署前需准备至少两台Linux机器:一台服务器,其余作客户端;确保已装NFS相关软件包且网络通畅。服务器端安装NFS服务与rpcbind,客户端安装nfs-utils。
135 4
|
5月前
|
存储 算法框架/工具
Ceph提供nfs服务
Ceph提供nfs服务
75 6
|
4月前
|
存储 Linux 网络安全
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
【Azure 存储服务】如何把开启NFS 3.0协议的Azure Blob挂载在Linux VM中呢?(NFS: Network File System 网络文件系统)
|
4月前
|
Ubuntu Linux 网络安全
在Linux中,如何配置Samba或NFS文件共享?
在Linux中,如何配置Samba或NFS文件共享?
|
4月前
|
Kubernetes 关系型数据库 MySQL
k8s练习--通过NFS+PV+PVC+POD,部署一个MySQL服务,并将MySQL的数据进行持久化存储
本文档介绍了如何使用Kubernetes (K8s)、NFS、PersistentVolume (PV)、PersistentVolumeClaim (PVC)和Pod来部署并实现MySQL服务的数据持久化存储。Kubernetes是一个用于自动化部署、扩展和管理容器化应用的强大平台。NFS作为一种网络文件系统协议,能够使Kubernetes集群中的Pod跨节点访问共享文件。PV和PVC机制则提供了持久化的存储解决方案,确保数据即使在Pod生命周期结束后仍得以保留。
212 0
|
6月前
|
Ubuntu
ubuntu搭建NFS服务 磁盘共享 nfs 搭建
ubuntu搭建NFS服务 磁盘共享 nfs 搭建
207 2
|
7月前
|
存储 网络协议 Linux
NFS(Network File System 网络文件服务)
NFS(Network File System 网络文件服务)
|
7月前
|
存储 Kubernetes 数据安全/隐私保护