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 实现服务器之间的文件(目录)共享的更多相关文章

  1. 如何在Linux上使用scp命令进行服务器之间的文件/目录传输

    1. 本地上传文件到远程: scp [local_file_path] [username]@[server_ip]:[remote_dir] 2. 本地上传目录到远程: scp -r [local_ ...

  2. Linux命令(20)linux服务器之间复制文件和目录

    linux的scp命令: scp就是secure copy的简写,用于在linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器. 有时我们需要获得远程服务器上 ...

  3. Linux 两台服务器之间传输文件和文件夹

    今天处理一个项目要迁移的问题,突然发现这么多图片怎么移过去,可能第一时间想到的是先从这台服务器下载下来,然后再上传到另外一台服务器上面去,这个方法确实是可行,但是实在是太费时间了,今天我就教大家怎么快 ...

  4. 在linux服务器之间复制文件和目录命令scp

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

  5. linux的scp命令可以在linux服务器之间复制文件和目录

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

  6. Linux scp命令详解(服务器之间复制文件或目录)

    scp:服务器之间复制文件或目录 一.命令格式: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] ...

  7. linux服务器之间传输文件的四种方式

    linux文件传输在内网渗透中至关重要,所以我在此总结一下几种Linux服务器之间传输文件的四种方式 1. scp [优点]简单方便,安全可靠:支持限速参数[缺点]不支持排除目录[用法]scp就是se ...

  8. vm虚拟机Kali2.0实现与物理机之间的文件拖动共享

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

  9. CentOS 下实现两台服务器之间的共享NFS

    NFS的安装配置:centos 5 :yum install nfs-utils portmapcentos 6 :yum install nfs-utils rpcbind yum install ...

  10. 阿里云两台服务器之间拷贝文件命令scp

    参考:云栖社区 不同的Linux之间copy文件通常有4种方法 1.ftp 2.samba服务 3.sftp 4.scp 最简单的方法就是scp,可以理解为ssh管道下的cp命令 把当前一个文件cop ...

随机推荐

  1. TypeScript 为什么使用 Go 而不是 Rust 重写 ?官方回应来了

    TypeScript官推最近宣布他们正在移植到 Go,速度已经提高了 10 倍之多. 作为以性能为代表的另一语言Rust,人们自然会疑惑为什么没有选Rust语言重构呢?为方便大家快速理解,我用Deep ...

  2. Python数据格式转换神器-提高办公效率

    一.引言 在工作日常里,数据转换总是让人头疼?别急,今天揭秘一个超级实用的Python技巧,帮你轻松搞定各种数据格式转换,提升工作效率不是梦! 场景1:你手头有一堆CSV格式的(逗号分隔符)数据,其他 ...

  3. Docker创建Docker Swarm集群节点

    预置条件一.配置防火墙CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙.1.关闭firewall:systemctl stop firewalld.servi ...

  4. 【Python】介绍以及环境搭建

    Python简介 Python介绍 Python是时下最流流.最火爆的编程语言之一,具体原因如下: 简单.易学,适应人群广泛 免费.开源 应用领域广泛 备注:以下知名框架均是Python语言开发. G ...

  5. 【Linux】U-Boot 加载并启动 Linux 系统程序

    U-Boot 加载并启动 Linux 系统程序 零.介绍 最近在玩一些嵌入式的开发板,在引导操作系统时需要用到U-Boot,故此研究一下. U-Boot(Universal Bootloader)是一 ...

  6. 帮客户解决基于surging的物流速运网关内存泄漏问题

    一.概述 有surging企业客户找到我,系统已经在线上环境运行,在使用过程中碰到内存不能释放的问题,每次都要和客户打招呼进行重启造成很坏的影响,问能不能彻底解决掉,然后我打包票可以解决,解决不了不收 ...

  7. 探秘Transformer系列之(24)--- KV Cache优化

    探秘Transformer系列之(24)--- KV Cache优化 目录 探秘Transformer系列之(24)--- KV Cache优化 0x00 前言 0x01 背景知识 1.1 度量指标 ...

  8. Oracle的listagg函数(多行按顺序合并字符串)(与wm_concat的区别)

    场景: 使用wm_concat函数时,会发现无法对其拼接的字符串进行排序 使用listagg函数可实现按排序进行字符串拼接 select myGroup, listagg(myStr, ',') wi ...

  9. Web前端入门第 41 问:神奇的 transform 改变元素形状,matrix3d 矩阵变换算法演示

    CSS transform 属性中文翻译过来是 变换,始终觉得翻译差那么一点意思.它可以用来改变元素形状,比如旋转.缩放.移动.倾斜等,就是它可以把元素各种拿捏~ transform 特性是在不改变自 ...

  10. Windows查看端口占用、相应进程、杀死进程等[netstat]

    Windows 通过cmd或powerShell查看端口占用.相应进程.杀死进程等的命令 由于一般开发环境是在windows上,相应的一些测试必然涉及到一些端口的监听与使用.当开发使用的端口被占用后, ...