2分钟教会你NFS文件服务器及客户端挂载

news2024/10/3 6:37:25

NFS简介

什么是 NFS?

  • NFS(Network File System)网络文件系统
  • 目标:实现计算机之间通过网络共享资源
  • 将NFS主机分享的目录,挂载到自己电脑,我们就可以用自己电脑使用NFS的硬盘存储资源
  • 大白话说,就像百度云盘差不多哦~~

NFS实现原理是什么?

  • NFS每个功能会开启不同端口,使用RPC管理端口,RPC要先于NFS启动,RPC指定每个NFS功能所对应的端口,并返回给客户端
  • NFS是一个文件系统,RPC负责信息传输
  • RPC(远程过程调用 Remote Procedure Call)协议实现RPC服务(portmap 或rpcbind服务)
  • RPC,基于C/S模型,程序可以使用这个协议请求网络中另一台计算机上某程序的服务

服务器端(共享硬盘方)安装NFS

安装NFS 和 rpcbind

sudo yum install nfs-utils -y

通过systemctl 设置服务自启动(RPC要先于NFS启动)

sudo systemctl enable rpcbind
sudo systemctl enable nfs

查看应用进程(使用 linux 的 ps aux |grep 命令)

  • 直接用ps命令,会显示所有进程的状态
  • grep 表示正则化搜索搜索,它能使用正则表达式搜索文本,并把匹配的行打印出来
  • ps aux 是显示所有进程和其状态。
ps aux | grep nfs
ps aux | grep rpcbind

指令参考
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。 
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 
ps -e 此参数的效果和指定"A"参数相同。 
ps e 列出程序时,显示每个程序所使用的环境变量。 
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 
ps -H 显示树状结构,表示程序间的相互关系。 
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 
ps s 采用程序信号的格式显示程序状况。 
ps S 列出程序时,包括已中断的子程序资料。 
ps -t  指定终端机编号,并列出属于该终端机的程序的状况。 
ps u  以用户为主的格式来显示程序状况。 
ps x  显示所有程序,不以终端机来区分。

验证是否自启动

如果状态为inactive,需要重启服务,再次验证

systemctl is-active nfs-server
systemctl is-active rpcbind

NFS定义共享文件目录

通过/etc/exports文件定义共享目录,vi编辑exports文件,这个步骤一定要使用root权限,否则无法编辑

sudo vi /etc/exports
# 写入(IP为服务器IP)
/opt/resources 192.168.12.0/24(rw,sync,all_squash)

修改后重启或者 重新加载共享文件列表

RPC要先于NFS启动

sudo systemctl restart rpcbind
sudo systemctl restart nfs
或者
exportfs -r

查看共享目录

exports -v
其他命令
# 卸载所有共享
exportfs -au
# 重挂所有
exportfs -ar
文件编辑格式
共享目录绝对路径    授权访问的IP或网段(权限1,权限2)
权限说明
ro                      只读访问  
rw                      读写访问  
sync                    所有数据在请求时写入共享  
async                   NFS在写入数据前可以相应请求  
secure                  NFS通过1024以下的安全TCP/IP端口发送  
insecure                NFS通过1024以上的端口发送  
wdelay                  如果多个用户要写入NFS目录,则归组写入(默认)  
no_wdelay               如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置。  
hide                    在NFS共享目录中不共享其子目录  
no_hide                 共享NFS目录的子目录  
subtree_check           如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)  
no_subtree_check        和上面相对,不检查父目录权限  
all_squash              共享文件的UID和GID映射匿名用户anonymous,适合公用目录。  
no_all_squash           保留共享文件的UID和GID(默认)  
root_squash             root用户的所有请求映射成如anonymous用户一样的权限(默认)  
no_root_squash          root用户具有根目录的完全管理访问权限  
anonuid=xxx          指定NFS服务器/etc/passwd文件中匿名用户的UID  
anongid=xxx          指定NFS服务器/etc/passwd文件中匿名用户的GID

查看NFS服务器共享目录,挂载情况

showmount ip -e

客户端挂载

客户端环境准备

客户端也要按照上述步骤先安装NFS 和 RPC

新建挂载点

mkdir -p /opt/resources

挂载

mount -t nfs ip:/opt/resources/ /opt/resources/

设置开机挂载

vi /etc/rc.local

将挂载命令加入文件即可

mount -t nfs ip:/opt/resources/ /opt/resources/

验证挂载

mount |grep "/opt/resources/"
常用命令
# 使用showmount命令查看远程NFS服务器共享目录
showmount ip -e
# 新建挂载点
mkdir -p /opt/resources
# 挂载
mount -t nfs ip:/opt/resources/ /opt/resources/
# 设置开机挂载
vi /etc/rc.local
# 将挂载命令加入文件即可
mount -t nfs ip:/opt/resources/ /opt/resources/
# 验证挂载
mount |grep "/opt/resources/"
今天就写到这里啦~
  • 小伙伴们,( ̄ω ̄( ̄ω ̄〃 ( ̄ω ̄〃)ゝ我们明天再见啦~~
  • 大家要天天开心哦

欢迎大家指出文章需要改正之处~
学无止境,合作共赢

在这里插入图片描述

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1332237.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

三秦通ETC续航改造

前些天开车时ETC每隔2分钟滴滴响一下,重插卡提示电池电压低 2.8V。看来应该是电池不行了。去银行更换ETC应该是需要费用的。还有一种办法是注销掉,然后去别的银行办一个。不过我想自己更换电池试一下。 首先拆下ETC,我使用的办法是开水烫。烧…

SysTick 定时器

SysTick定时器定义: SysTick 是一个 24 位的倒计数定时器,当计到 0 时,将从 RELOAD 寄存器中自动重装载定时初值。只要不把它在 SysTick 控制及状态寄存器中的使能位清除,就永不停息。 SysTick定时器分类: SysTic…

推荐几个开源H5小程序低代码工具

移动APP、H5、小程序曾风靡一时,结合当前无代码/低代码开发技术,有哪些免费开源的移动端H5/小程序软件,不用写代码即可发布H5页面,笔者对市场上主流的开源H5低代码/无代码工具/框架/组件进行了研究和验证,找到了几款比…

【LeetCode:1954. 收集足够苹果的最小花园周长 | 等差数列 + 公式推导】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

【AI提示词人物篇】创新艺术未来,让科技改变想象空间

AI 绘画学习难度和练习技巧 学习绘画的技巧 学习能难度: 外貌特征:AI需要学习识别和理解各种外貌特征,如发型、肤色、眼睛颜色等。这可能需要大量的训练数据和复杂的模型架构。 镜头提示:AI需要学习理解不同镜头提示的含义&…

谁会主导AIGC企业应用?

文/明道云创始人任向晖 李彦宏在近期的一个行业会议上抱怨大家都卷在大模型本身上,而忽视了AI原生应用的实现。他说的当然对,但这个状况绝对不能怪AI创业者。至少在企业应用领域,很多应用开发者并不确定企业愿意为什么样的应用买单&#xff0…

【shell脚本实战学习笔记】#1

shell脚本实战学习笔记#1 脚本编写场景需求: 编写一个比较数据大小的shell脚本,要求判断用户只能输入两位数字,不能是字符或其他特殊字符;并且在shell脚本中需要用到函数来控制执行顺序。 知识点:shell函数&#xff…

计算机组成原理第6章-(算术运算)【下】

移位运算 对于有符号数的移位称为算术移位,对于无符号数的移位称为逻辑移位。 算术移位规则【极其重要】 对于正数的算术移位,且不管是何种机器数【原码、反码、补码】,移位后出现的空位全部填0。 而对于负数的算术移位,机器数不同,移位后的规则也不同。 对于负数的原…

C#/WPF 播放音频文件

C#播放音频文件的方式: 播放系统事件声音使用System.Media.SoundPlayer播放wav使用MCI Command String多媒体设备程序接口播放mp3,wav,avi等使用WindowsMediaPlayer的COM组件来播放(可视化)使用DirectX播放音频文件使用Speech播放(朗读器&am…

yolo实现数据增强(数据集不够,快速增加数据集)

目录结构 附上数据增强的全部代码 # -*- codingutf-8 -*-import time import random import copy import cv2 import os import math import numpy as np from skimage.util import random_noise from lxml import etree, objectify import xml.etree.ElementTree as ET imp…

2024年,我们要勇敢奔跑!

本“人民+体验官”推广人民日报官方微博文化产品《2024年是个什么年?》 图:来源“人民+体验官”推广平台 朋友,2023已经进入尾声阶段,很快新的一年——2024年就来了。这新的一年是新中国成立75周年、澳门回…

linux运行可执行文件,通过c语言调用java的main方法

前言&#xff1a;以前一直在做Android开发&#xff0c;在某本书上看过一句话“Android上面不只有App类的程序可以运行&#xff0c;能在linux下运行的程序&#xff0c;也可以在Android上面运行” 一.编写C语言部分代码 1.定义java.h头文件 #include <jni.h>#ifndef _JAV…

分巧克力c语言

分析&#xff1a;分巧克力&#xff0c;把每一种大小列举出来&#xff0c;在对巧克力分解&#xff0c;在加上所以的分解块数&#xff0c;在和人数比较&#xff0c;如果够分&#xff0c;就保存这一次的结果&#xff0c;在增大巧克力&#xff0c;如果不够分了&#xff0c;就打印上…

Python 运维(三):使用 zipapp 将 Python 程序打包成单个可执行文件

大家好&#xff0c;我是水滴~~ 在 Python 开发中&#xff0c;我们经常需要将应用程序打包成可执行文件&#xff0c;以便在不具备 Python 环境的计算机上运行。Python 提供了多种打包工具&#xff0c;其中之一就是 zipapp。zipapp 可以将 Python 应用程序及其依赖打包成一个单独…

【高数定积分求解旋转体体积】 —— (上)高等数学|定积分|柱壳法|学习技巧

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 Shell method Setting up the Integral 例题 Example 1: Example 2: Example 3: Computing…

安装Kubernetes1.23、kubesphere3.4、若依项目自动打包部署到K8S记录

1.安装kubernetes1.23详细教程 kubernetes(k8s)集群超级详细超全安装部署手册 - 知乎 2.安装rancher动态存储 kubectl apply -f https://raw.githubusercontent.com/rancher/local-path-provisioner/master/deploy/local-path-storage.yaml3.安装kubesphere3.4 准备工作 您…

详解KMP算法

KMP算法应该是每一本《数据结构》书都会讲的&#xff0c;算是知名度最高的算法之一了&#xff0c;但很可惜&#xff0c;我大二那年压根就没看懂过~~~ 之后也在很多地方也都经常看到讲解KMP算法的文章&#xff0c;看久了好像也知道是怎么一回事&#xff0c;但总感觉有些地方自己…

线段树/区间树(java实现版详解附leetcode例题)

目录 什么是线段树 线段树基础表示 创建线段树&#xff08;Java版详解&#xff09; 线段树的区间查询 leetcode上的线段树相关问题 leetcode303题.区域和检索-数组不可变 使用线段树解题 不使用线段树解题 leetcode307题.区域和检索-数组可修改 不使用线段树解题 线…

基于 ACK One 实现简单的跨云协同,让业务管理更高效

作者&#xff1a;庄宇 本文根据 2023 云栖大会现场分享实录整理 2 年前的云栖大会&#xff0c;我们发布分布式云容器平台 ACK One&#xff0c;随着 2 年的发展&#xff0c;很高兴看到 ACK One 在混合云&#xff0c;分布式云领域帮助到越来越多的客户&#xff0c;今天给大家汇报…

Burnside 引理 与 Pólya 定理 学习笔记

为了防止明天就把好不容易听完的东西都还给 rabbit_lb 了&#xff0c;还是记一点吧。 1. 群论基础 1.1 群(group) 的定义 给定集合 G G G 和 G G G上的二元运算 ⋅ \cdot ⋅&#xff0c;满足下列条件称之为群&#xff1a; 封闭性&#xff1a;若 a , b ∈ G a,b\in G a,…