NFS网络文件系统的应用
1.配置2台服务器要求如下:
a)服务器1:
主机名:user-server.timinglee.org
ip地址: 172.25.254.100
[root@server100 桌面]# hostnamectl hostname user-server.timinglee.org
[root@server100 桌面]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.25.254.100 netmask 255.255.255.0 broadcast 172.25.254.255
inet6 fe80::9b83:9bbf:15db:3ba3 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:4b:1a:e5 txqueuelen 1000 (Ethernet)
RX packets 2602 bytes 1806557 (1.7 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1239 bytes 85606 (83.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
配置好软件仓库
b)服务器2:
主机名:storage-server.timinglee.org
ip地址:172.25.254.200
[root@server200 桌面]# hostnamectl hostname storage-server.timinglee.org
[root@server200 桌面]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.25.254.200 netmask 255.255.255.0 broadcast 172.25.254.255
inet6 fe80::2834:8c5:3f98:ad4f prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:9f:14:e7 txqueuelen 1000 (Ethernet)
RX packets 4647 bytes 6646305 (6.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2493 bytes 142730 (139.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
配置好软件仓库
[root@storage-server yum.repos.d]# vim rhel9.repo
[AppStream]
name=AppStream
baseurl=file:///rhel9/AppStream
gpgcheck=0
[BaseOS]
name=BaseOS
baseurl=file:///rhel9/BaseOS
gpgcheck=0
2.在storage-server主机中部署nfs要求如下:
安装nfs服务
[root@storage-server ~]# dnf install nfs-utils -y
建立共享目录/users/user1,当root用户挂载此共享时不转换用户身份,确保对挂载主机可写权限
建立共享目录/users/user2,当root用户挂载此共享时不转换用户身份,确保对挂载主机可写权限
[root@storage-server ~]# mkdir -p /users/user{1,2} 创建共享目录
[root@storage-server ~]# chmod 777 /users/ 给足权限
[root@storage-server ~]# ls /users/
user1 user2
[root@storage-server ~]# vim /etc/exports 编辑共享策略文件
/users/user1 172.25.254.200(rw,no_root_squash)
/users/user2 172.25.254.200(rw,no_root_squash
[root@storage-server ~]# exportfs -rv 刷新
exporting 172.25.254.200:/users/user2
exporting 172.25.254.200:/users/user1
[root@storage-server ~]# showmount -e 172.25.254.100 列出客户端的共享资源
Export list for 172.25.254.100:
/users/user2 172.25.254.100
/users/user1 172.25.254.100
测试 挂载
[root@storage-server ~]# mount 172.25.254.2100:/users/ /users/user1
[root@storage-server ~]# df
文件系统 1K-块 已用 可用 已用% 挂载点
devtmpfs 4096 0 4096 0% /dev
tmpfs 886608 0 886608 0% /dev/shm
tmpfs 354644 7804 346840 3% /run
/dev/mapper/rhel-root 53768192 4658120 49110072 9% /
/dev/mapper/rhel-home 26218496 215956 26002540 1% /home
/dev/nvme0n1p2 983040 297876 685164 31% /boot
/dev/nvme0n1p1 613184 7140 606044 2% /boot/efi
/dev/sr0 10281784 10281784 0 100% /rhel9
tmpfs 177320 104 177216 1% /run/user/0
172.25.254.100:/users 53768192 4657920 49110272 9% /users/user1
3.在user-server中建立用户要求如下:
安装nfs服务
[root@user-server 桌面]# dnf install nfs-utils -y
启动nfs服务
[root@user-server 桌面]# systemctl enable --now nfs-server
(1)user1,密码为lee,家目录为/home/users/user1,当切换到此用户时,系统自动挂载其家目录到storage-server主机的/users/user1目录中
[root@user-server 桌面]# useradd user1
[root@user-server 桌面]# passwd user1
更改用户 user1 的密码 。
新的密码:
无效的密码: 密码少于 8 个字符
重新输入新的密码:
passwd:所有的身份验证令牌已经成功更新。
[user1@user-server ~]$ pwd
/home/user1
(2)user2,密码为lee,家目录为/home/users/user2,当切换到此用户时,系统自动挂载其家目录到storage-server主机的/users/user2目录中
确保user1和user2使用的家目录在闲置状态时可以自动卸载
[root@user-server 桌面]# useradd user2
[root@user-server 桌面]# passwd user2
更改用户 user2 的密码 。
新的密码:
无效的密码: 密码少于 8 个字符
重新输入新的密码:
passwd:所有的身份验证令牌已经成功更新
[user2@user-server ~]$ pwd
/home/user2
[root@user-server ~]# vim /etc/exports 编辑共享策略文件
home/user1 172.25.254.200(rw,no_root_squash)
home/user2 172.25.254.200(rw,no_root_squash)
在客户端安装autofs服务
[root@storage-server ~]# dnf install autofs -y
[root@storage-server ~]# systemctl enable --now autofs
Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.
[root@storage-server ~]# vim /etc/autofs.conf 设置动态卸载时间
timeout = 5
[root@storage-server ~]# vim /etc/auto.master 编辑动态挂载点
/misc /etc/auto.misc
/users /etc/auto.users --timeout=5
[root@storage-server ~]# vim /etc/auto.users
* 172.25.254.100:/home/user1/&
* 172.25.254.100:/home/user2/&
[root@storage-server ~]# systemctl restart autofs.service
相关文章:
NFS网络文件系统的应用
1.配置2台服务器要求如下: a)服务器1: 主机名:user-server.timinglee.org ip地址: 172.25.254.100 [rootserver100 桌面]# hostnamectl hostname user-server.timinglee.org [rootserver100 桌面]# ifconfig eth0: fl…...

AttributeError: module ‘PIL.Image‘ has no attribute ‘ANTIALIAS‘
问题描述 修改图片大小的时候,代码报错:AttributeError: module PIL.Image has no attribute ANTIALIAS 解决方案 在pillow的10.0.0版本中,ANTIALIAS方法被删除了。 方法1:修改版本(不推荐) pip instal…...

进程的共享主存通信实验
进程的共享主存通信 【预备知识】 共享存储区为进程提供了直接通过主存进行通信的有效手段,不像消息缓冲机制那样需要系统提供缓冲,也不像pipe机制那样需要事先建立一个特殊文件,而是由通信双方直接访问某些共享虚拟储存空间。在Linux中&…...

深度缓冲技术在AI去衣中的神奇作用
引言: 随着人工智能技术的飞速发展,其在图形处理和视觉领域的应用日益增多。AI去衣技术便是其中一个颇具争议但又技术上引人入胜的话题。今天,我们将深入探讨一项关键技术——深度缓冲(Depth Buffering),它…...

能效?性能?一个关于Windows下使用openssl speed进行速度测试的诡异问题
问题描述 最近的某个软件用到了openssl,所以就想着测试一下速度。我的电脑是惠普的,CPU是AMD Ryzen 7 PRO 6850HS,系统是Win11。我使用openssl自带的speed测试加密/解密的速度,命令大致如下: openssl speed -evp aes…...
block性能考虑和线程安全
性能考虑 频繁地创建和销毁大量的 block 可能会对性能造成影响,特别是当这些 block 被拷贝到堆上时。同时,block 捕获大量数据时也会增加内存使用。 在讨论性能考虑时,主要关注的是 block 的创建、拷贝到堆上以及捕获变量的成本。以下是针对…...

没有公网ip,如何实现外网访问内网?
目前拨号上网是最广泛的上网方式,这种方式优点是价格便宜,缺点是没有固定公网ip,每次重新您拨号ip地址都会变。如果有一台服务器,需要实现外网访问,在没有固定公网ip的环境下,该如何实现呢?使用…...
Python中如何将小数转化为百分数进行输出
小数转化为百分数 Python中如何将小数转化为百分数进行输出基本概念使用字符串格式化1. 使用字符串格式化操作符 %2. 使用str.format()方法3. 使用f-string(格式化字符串字面量) **重点内容**:**无论是通过使用%格式化操作符、str.format()方…...

加入全球少儿编程运动:Scratch让每个孩子都能成为创造者(Scratch最新版客户端和初/中/高级学习资料整理分享)
文章目录 📖 介绍 📖🏡 演示环境 🏡📒 文章内容 📒📝 安装与使用📝 社区与资源 🎈 获取方式 🎈⚓️ 相关链接 ⚓️ 📖 介绍 📖 你知道…...

引擎:主程渲染
一、引擎发展 二、引擎使用 1.游戏渲染流程 2.3D场景编辑器操作与快捷键 3.节点的脚本组件 脚本介绍 引擎执行流程 物体节点、声音组件\物理组件\UI组件、脚本组件 暴露变量到面板 4.节点的查找 基本查找 this.node:挂载当前脚本的节点A; this.nod…...
Java 高级面试问题及答案
问题6:请解释Java中的异常处理机制。 探讨过程: 异常处理是Java程序中错误处理的关键部分。正确地处理异常可以提高程序的稳定性和健壮性。 答案: Java中的异常处理机制允许程序在出现错误时,不会导致程序立即终止,而…...
邮件的安全认证(dkim/spf/dmarc)
dkim dkim是用来识别电子邮件合法以及完整性的一种技术手段,主要方式是通过非对称加密对邮件本身进行签名,邮件接收方可以使用发送方提供的公钥对签名进行校验,来确认邮件是否伪造或者被篡改。 如何查看dkim dkim签名被放在邮件原始内容的…...

单调栈问题
原理 单调栈的核心原理是:在栈内保持元素的单调性(递增或递减) 单调递增栈: 用于处理“下一个更小的元素”问题。当新元素比栈顶元素小或等于时,直接入栈;否则,一直从栈顶弹出元素,…...

Hexo博客重新部署与Git配置
由于电脑重装了一次,发现之前Hexo与NexT主题版本过于落后,重新部署了下。 1 Node.js与git安装 这一块安装就不赘述了。去两个官网找安装文件安装即可。 node.js git 打开git以后配置的几个关键命令行。 git config --global user.name "你的gi…...
KUKA机器人专业名词解释
1、CCU Cabinet Control Unit (控制柜控制单元) 2、CIB Cabinet Interface Board (控制柜接口板) 3、HMI Human Machine Interface (人机界面);KUKA.HMI 是 KUKA 操作界面。 4、KCB …...

阿里云 物联网平台 MQTT连接、数据传输
阿里云 物联网平台 MQTT连接、数据传输 1、设备连接阿里云 2、多设备之前的通信、数据流转 3、设备数据来源的读取。 基于C# winform 开发上位机,读取设备、仪器、MES或者电子元器件的数据,MQTT传输至阿里云平台,可视化界面构建界面&#…...

栈和队列OJ练习题及解答
前言 上一篇博客已经讲到了栈和队列的数据结构,概括一下:栈后进先出(Last In First Out)、队列先进先出(First In First Out)。那么,接下来就来讲讲,关于栈和队列的相关练习题&#…...

渗透测试-信息收集
网络安全信息收集是网络安全领域中至关重要的一环,它涉及到对目标系统、网络或应用进行全面而细致的信息搜集和分析。这一过程不仅有助于理解目标网络的结构、配置和潜在的安全风险,还能为后续的渗透测试、风险评估和安全加固提供有力的支持。 在网络安…...
电力乙级资质延伸换证:企业转型的契机
电力乙级资质延伸换证不仅是企业合规运营的必要步骤,同时也为企业转型提供了重要的契机。在这个过程中,企业可以重新审视自身的业务模式、管理体系、技术能力等方面,寻找新的增长点和发展方向。 首先,电力乙级资质延伸换证要求企业…...
基于Redis实现分布式锁——Java版本
基于Redis实现分布式锁——Java版本 版本一版本二版本三Redisson 定义分布式锁接口如下: public interface ILock {boolean tryLock(long timeoutSec);void unlock(); }版本一 设定业务超时时间,到期自动解锁。缺点是超时时间不好估计,需要…...
Java 语言特性(面试系列2)
一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...
基于数字孪生的水厂可视化平台建设:架构与实践
分享大纲: 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年,数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段,基于数字孪生的水厂可视化平台的…...

令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...

DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文全面剖析RNN核心原理,深入讲解梯度消失/爆炸问题,并通过LSTM/GRU结构实现解决方案,提供时间序列预测和文本生成…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()
操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 在 GPU 上对图像执行 均值漂移滤波(Mean Shift Filtering),用于图像分割或平滑处理。 该函数将输入图像中的…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
C++.OpenGL (14/64)多光源(Multiple Lights)
多光源(Multiple Lights) 多光源渲染技术概览 #mermaid-svg-3L5e5gGn76TNh7Lq {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-3L5e5gGn76TNh7Lq .error-icon{fill:#552222;}#mermaid-svg-3L5e5gGn76TNh7Lq .erro…...

[免费]微信小程序问卷调查系统(SpringBoot后端+Vue管理端)【论文+源码+SQL脚本】
大家好,我是java1234_小锋老师,看到一个不错的微信小程序问卷调查系统(SpringBoot后端Vue管理端)【论文源码SQL脚本】,分享下哈。 项目视频演示 【免费】微信小程序问卷调查系统(SpringBoot后端Vue管理端) Java毕业设计_哔哩哔哩_bilibili 项…...
JS手写代码篇----使用Promise封装AJAX请求
15、使用Promise封装AJAX请求 promise就有reject和resolve了,就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...