CentOS-7 通过 NFS 实现服务器之间的文件(目录)共享
1、概述
NFS(Network File System):是在 UNIX(Linux)系统中最流行的网络文件系统,其功能是通过网络让不同的机器(或操作系统)可以共享彼此的文件或目录。
2、相关依赖组件
在使用 NFS 之前,服务端(提供共享文件或目录的一方)和客户端(使用共享文件或目录的一方)都需要先安装 rpcbind 和 nfs-utils 依赖组件。
2.1、确认已安装rpcbind

rpm -qa | grep rpcbind
如果还没安装 rpcbind 依赖组件,请参考 CentOS-7离线安装rpcbind 。
2.2、确认已安装nfs-utils

rpm -qa | grep nfs-utils
如果还没安装 nfs-utils 依赖组件,请参考 CentOS-7离线安装nfs-utils 。
注意:在安装 nfs-utils 依赖组件之前,必须先安装 rpcbind 依赖组件;一般来说,CentOS-7 已默认安装 rpcbind 依赖组件,只需要 nfs-utils 依赖组件即可。
3、服务端操作
3.1、创建共享目录

如上图所示,(本例)在服务端(提供共享文件或目录的一方)的根目录“/”,创建了一个目录,用于和客户端共享。
mkdir 共享目录名称
3.2、编辑配置文件

vi /etc/exports

共享目录路径 *(rw,no_root_squash,insecure,sync)
注意:如果需要进行网段限制,“*”改为对应网段,例如:
共享目录路径 192.168.56.0/24(rw,no_root_squash,insecure,sync)
| 参数 | 说明 |
|---|---|
| rw | 共享目录的访问权限为可读可写(read-write),实际权限还和文件系统的 rwx 权限以及用户身份有关 |
| ro | 共享目录的访问权限为只读(read-only) |
| no_root_squash | 允许客户端以 root 身份访问共享目录 |
| root_squash | 客户端的 root 身份会被切换成和 anonymous 匿名用户身份一样的权限 |
| insecure | 允许 nfs 服务使用比 1024 更大的端口号 |
| secure | nfs 服务只能使用 1024 以内的端口号 |
| sync | 数据同步写入到内存与硬盘中 |
| async | 数据先暂存在内存当中,不直接写入硬盘 |
3.3、确认rpcbind服务已开启

systemctl status rpcbind
| 命令 | 说明 |
|---|---|
| systemctl status rpcbind | 查看 rpcbind 服务运行状态 |
| systemctl start rpcbind | 启动 rpcbind 服务 |
| systemctl restart rpcbind | 重启 rpcbind 服务 |
| systemctl enable rpcbind | 设置 rpcbind 服务开机自启动 |
3.4、重启nfs服务

systemctl restart nfs
| 命令 | 说明 |
|---|---|
| systemctl status nfs | 查看 nfs 服务运行状态 |
| systemctl start nfs | 启动 nfs 服务 |
| systemctl restart nfs | 重启 nfs 服务 |
| systemctl enable nfs | 设置 nfs 服务开机自启动 |
3.5、开启防火墙

firewall-cmd --add-service=nfs --permanent
firewall-cmd --reload
3.6、相关监测命令
| 命令 | 说明 |
|---|---|
| nfsstat | 查看NFS的运行状态 |
| rpcinfo | 查看rpc执行信息,可以用于检测rpc运行情况的工具,利用rpcinfo -p 可查看出RPC开启的端口所提供的程序 |
4、客户端操作
4.1、确认rpcbind服务已开启

systemctl status rpcbind
| 命令 | 说明 |
|---|---|
| systemctl status rpcbind | 查看 rpcbind 服务运行状态 |
| systemctl start rpcbind | 启动 rpcbind 服务 |
| systemctl restart rpcbind | 重启 rpcbind 服务 |
| systemctl enable rpcbind | 设置 rpcbind 服务开机自启动 |
4.2、启动nfs服务

systemctl start nfs
| 命令 | 说明 |
|---|---|
| systemctl status nfs | 查看 nfs 服务运行状态 |
| systemctl start nfs | 启动 nfs 服务 |
| systemctl restart nfs | 重启 nfs 服务 |
| systemctl enable nfs | 设置 nfs 服务开机自启动 |
4.3、创建共享目录挂载点

如上图所示,(本例)在客户端(使用共享文件或目录的一方)的“/root”目录下,创建了一个目录,用于挂载服务端的共享目录。
mkdir 共享目录挂载点名称
4.4、挂载服务端共享目录

mount -t nfs 服务端IP地址:/服务端共享目录路径 客户端挂载点路径
注意:如果(普通用户)挂载共享目录时报错“mount.nfs: failed to apply fstab options”,则需要使用 sudo 权限执行该挂载命令。
4.5、确认挂载情况

如上图所示,已实现服务器之间的文件(目录)共享。
df -h
4.6、解除挂载的命令

umount 客户端挂载点路径
本文参考
【1】【Word哥】【Linux下NFS服务的安装与配置】【CSDN】【2020-08-05】
【2】【Jason_huawen】【NFS文件共享时报错的解决方法】【博客园】【2022-11-09】
【3】【我真的啥也不会】【NFS配置及开机自动挂载】【博客园】【2022-03-06】
CentOS-7 通过 NFS 实现服务器之间的文件(目录)共享的更多相关文章
- 如何在Linux上使用scp命令进行服务器之间的文件/目录传输
1. 本地上传文件到远程: scp [local_file_path] [username]@[server_ip]:[remote_dir] 2. 本地上传目录到远程: scp -r [local_ ...
- Linux命令(20)linux服务器之间复制文件和目录
linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们需要获得远程服务器上 ...
- Linux 两台服务器之间传输文件和文件夹
今天处理一个项目要迁移的问题,突然发现这么多图片怎么移过去,可能第一时间想到的是先从这台服务器下载下来,然后再上传到另外一台服务器上面去,这个方法确实是可行,但是实在是太费时间了,今天我就教大家怎么快 ...
- 在linux服务器之间复制文件和目录命令scp
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...
- linux的scp命令可以在linux服务器之间复制文件和目录
scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...
- Linux scp命令详解(服务器之间复制文件或目录)
scp:服务器之间复制文件或目录 一.命令格式: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] ...
- linux服务器之间传输文件的四种方式
linux文件传输在内网渗透中至关重要,所以我在此总结一下几种Linux服务器之间传输文件的四种方式 1. scp [优点]简单方便,安全可靠:支持限速参数[缺点]不支持排除目录[用法]scp就是se ...
- vm虚拟机Kali2.0实现与物理机之间的文件拖动共享
MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...
- CentOS 下实现两台服务器之间的共享NFS
NFS的安装配置:centos 5 :yum install nfs-utils portmapcentos 6 :yum install nfs-utils rpcbind yum install ...
- 阿里云两台服务器之间拷贝文件命令scp
参考:云栖社区 不同的Linux之间copy文件通常有4种方法 1.ftp 2.samba服务 3.sftp 4.scp 最简单的方法就是scp,可以理解为ssh管道下的cp命令 把当前一个文件cop ...
随机推荐
- TypeScript 为什么使用 Go 而不是 Rust 重写 ?官方回应来了
TypeScript官推最近宣布他们正在移植到 Go,速度已经提高了 10 倍之多. 作为以性能为代表的另一语言Rust,人们自然会疑惑为什么没有选Rust语言重构呢?为方便大家快速理解,我用Deep ...
- Python数据格式转换神器-提高办公效率
一.引言 在工作日常里,数据转换总是让人头疼?别急,今天揭秘一个超级实用的Python技巧,帮你轻松搞定各种数据格式转换,提升工作效率不是梦! 场景1:你手头有一堆CSV格式的(逗号分隔符)数据,其他 ...
- Docker创建Docker Swarm集群节点
预置条件一.配置防火墙CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙.1.关闭firewall:systemctl stop firewalld.servi ...
- 【Python】介绍以及环境搭建
Python简介 Python介绍 Python是时下最流流.最火爆的编程语言之一,具体原因如下: 简单.易学,适应人群广泛 免费.开源 应用领域广泛 备注:以下知名框架均是Python语言开发. G ...
- 【Linux】U-Boot 加载并启动 Linux 系统程序
U-Boot 加载并启动 Linux 系统程序 零.介绍 最近在玩一些嵌入式的开发板,在引导操作系统时需要用到U-Boot,故此研究一下. U-Boot(Universal Bootloader)是一 ...
- 帮客户解决基于surging的物流速运网关内存泄漏问题
一.概述 有surging企业客户找到我,系统已经在线上环境运行,在使用过程中碰到内存不能释放的问题,每次都要和客户打招呼进行重启造成很坏的影响,问能不能彻底解决掉,然后我打包票可以解决,解决不了不收 ...
- 探秘Transformer系列之(24)--- KV Cache优化
探秘Transformer系列之(24)--- KV Cache优化 目录 探秘Transformer系列之(24)--- KV Cache优化 0x00 前言 0x01 背景知识 1.1 度量指标 ...
- Oracle的listagg函数(多行按顺序合并字符串)(与wm_concat的区别)
场景: 使用wm_concat函数时,会发现无法对其拼接的字符串进行排序 使用listagg函数可实现按排序进行字符串拼接 select myGroup, listagg(myStr, ',') wi ...
- Web前端入门第 41 问:神奇的 transform 改变元素形状,matrix3d 矩阵变换算法演示
CSS transform 属性中文翻译过来是 变换,始终觉得翻译差那么一点意思.它可以用来改变元素形状,比如旋转.缩放.移动.倾斜等,就是它可以把元素各种拿捏~ transform 特性是在不改变自 ...
- Windows查看端口占用、相应进程、杀死进程等[netstat]
Windows 通过cmd或powerShell查看端口占用.相应进程.杀死进程等的命令 由于一般开发环境是在windows上,相应的一些测试必然涉及到一些端口的监听与使用.当开发使用的端口被占用后, ...