linux磁盘的LVM、交换分区以及文件系统
目录
逻辑卷LVM
LVM管理
LVM特点
LVM的制作
创建物理卷
创建卷组
创建逻辑卷
格式化文件系统
挂载逻辑卷
LVM的扩容
添加硬盘做物理卷
卷组扩容
扩容逻辑卷
给文件系统扩容
LVM移除
LVM的缩容
交换分区
查看当前交换分区:free
Swap:虚拟内存
增加交换分区
基本分区方式增加
File方式增加
RAID
RAID:磁盘阵列
RAID常见的级别
raid0
raid1
raid5
raid10
逻辑卷LVM
LVM管理
LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。
LVM:Logical Volume Manager(逻辑卷管理)
LVM特点
当采用LVM时:
1.将硬盘的多个分区由LVM统一为卷组管理,可以方便的加入或移走分区以扩大或减小卷组的可用容量,充分利用硬盘空间;
2.当磁盘空间不足而加入新的硬盘时,不必将数据从原硬盘迁移到新硬盘,而只须把新的分区加入卷组并扩充逻辑卷即可。
3.文件系统建立在LVM上,可以跨分区,方便使用;
使用LVM主要是方便管理、增加了系统的扩展性。可以跨分区,多个硬盘组合。
lvm和基本分区的区别
基本分区(MBR|GPT) ----> Filesystem(制作文件系统类型) ----> mount(挂载)
逻辑卷LVM ----> Filesystem(制作文件系统类型) ----> mount(挂载)
LVM的制作
创建物理卷
pvcreate 硬盘路径 //将新的硬盘转化为物理卷
查看物理卷信息:
pvs //格式化输出物理卷报表
pvscan //列出找到的物理卷
pvdisplay //显示物理卷属性
创建卷组
vgcreate 卷组命名 物理卷路径 //将物理卷加入新建的卷组
查看卷组信息:
vgs //显示逻辑卷组信息
vgscan //扫描并显示卷组
vgdisplay //显示VG卷组信息
创建逻辑卷
lvcreate -L 逻辑卷大小 -n 逻辑卷名称 卷组名称 //创建逻辑卷分区
-L 设置逻辑卷的大小(容量值)
-n 设置新的逻辑卷名
-l 设置逻辑卷的大小(PE个数)
查看逻辑卷信息:
lvs //显示有关逻辑卷的信息
lvscan //扫描并显示LVM逻辑卷
lvdisplay //显示LVM逻辑卷属性
格式化文件系统
mkfs.ext4 lvm逻辑卷路径 //使用ext4文件系统
mkfs.xfs lvm逻辑卷路径 //使用xfs文件系统
挂载逻辑卷
mount 逻辑卷路径 挂载点
开机自动挂载方法一:
vim /etc/fstab //进入磁盘开机自动挂载文件
使用磁盘路径方式编辑
/dev/centos/sdb1 /data1 ext4 defaults 0 0
/dev/卷组/lv卷名称 挂载点路径 文件系统 文件系统属性 不备份 不检查
使用uuid方式编辑 blkid 分区后的磁盘路径 //获取uuid uuidgen //获取系统的uuid
UUID=" "/data2 xfs defaults 0 0
uuid 挂载点路径 文件系统 文件系统属性 不备份 不检查
LVM的扩容
添加硬盘做物理卷
pvcreate 硬盘路径
卷组扩容
vgextend 卷组 物理卷路径
扩容逻辑卷
lvextend -L 15G 逻辑卷路径 //扩容逻辑卷到15G
lvextend -L +15G 逻辑卷路径 //给逻辑卷加15G
给文件系统扩容
resize2fs 逻辑卷路径 //ext4文件系统扩容
xfs_growfs 逻辑卷路径 //xfs文件系统扩容
LVM移除
lvremove 逻辑卷路径 //移除逻辑卷
vgremove 卷组路径 //移除卷组
vgreduce 卷组名称 物理卷名称 //卸载卷组里面的物理卷
pvremove 物理卷路径 //移除物理卷
LVM的缩容
在 Linux 系统中,LVM (Logical Volume Manager) 是一种用于管理磁盘分区的工具,它允许你创建、删除、扩展和缩小逻辑卷(Logical Volume)。
提示:在进行任何磁盘操作前,请务必备份重要数据。操作错误可能导致数据丢失。
备份数据: 在开始缩小逻辑卷之前,首先备份其中的所有数据,以防止数据丢失。
卸载逻辑卷: 如果逻辑卷包含操作系统的根目录或者已挂载的其他重要目录,需要在进入单用户模式下或使用 Live CD 环境下卸载该逻辑卷。这是因为无法在线缩小当前正在使用的逻辑卷。
卸载文件系统: 在缩小逻辑卷之前,确保已卸载文件系统。如果是 ext2/ext3/ext4 文件系统,可以使用以下命令:
umount /mnt/vg2/lv1/
检查文件系统: 在缩小逻辑卷之前,最好使用文件系统检查工具检查文件系统是否有错误。对于 ext2/ext3/ext4 文件系统,可以运行:
e2fsck -f /dev/vg2/lv1
缩小逻辑卷: 使用 lvresize 命令来缩小逻辑卷。例如,假设你要将逻辑卷 `/dev/vg2/lv1` 缩小到 10G,可以运行:
lvresize --resizefs --size 缩小多少储存空间 逻辑卷 //这将缩小逻辑卷的大小,并自动调整文件系统大小。
重新挂载逻辑卷: 如果你在步骤2中卸载了逻辑卷,现在可以重新挂载它。
验证操作: 确认文件系统和逻辑卷已成功缩小到所需大小。
请注意,缩小逻辑卷涉及风险,如果操作不当可能导致数据丢失。因此,在进行此操作之前,务必备份所有重要数据,并谨慎操作。如果你对这些步骤不确定或不熟悉,建议寻求专业人士的帮助。
交换分区
查看当前交换分区:free
free -m //查看内存信息
swapon -s //查看交换分区信息
Swap:虚拟内存
作用: 提升内存的容量,防止OOM(Out Of Memory)
增加交换分区
基本分区方式增加
fdisk 硬盘路径 //分一个主分区出来
mkswap 分区后的硬盘路径 //格式化文件系统
vim /etc/fstab //挂载
硬盘路径 swap swap defaults 0 0
swapon -a //激活swap分区(读取/etc/fstab)
swapon -s //显示交换分区的使用情况
File方式增加
dd if=/dev/zero of=/文件名 bs=1M count=512 //做一个file文件添加交换分区
dd 读入 从空设备里面拿空块 到交换分区 块多大 一共多少
mkswap /文件名 //格式化,制作文件系统
chmod 600 /文件名 //交换分区权限需要设置为600,默认644权限不安全
vim /etc/fstab //挂载
swapon -a //激活swap分区(读取/etc/fstab)
swapon -s //显示交换分区的使用情况
RAID
RAID:磁盘阵列
RAID ( Redundant Array of Independent Disks )即独立磁盘冗余阵列,通常简称为磁盘阵列。简单地说, RAID 是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能和数据冗余的技术。 RAID:廉价磁盘冗余阵列(Redundant Array of Independent Disks) 作 用:容错、提升读写速率
| RAID类型 | 个数 | 利用率 | 优缺点 |
|---|---|---|---|
| RAID0 条带集 | 2+ | 100% | 读写速率最快,不容错 |
| RAID1 镜像集 | 2 | 50% | 读写速率一般,容错 |
| RAID5 带奇偶校验条带集 | 3+ | (n-1)/n | 读写速率快,容错,允许坏一块 |
| RAID6 带奇偶校验条带集双校验dp | 4+ | (n-2)/n | 读写快,容错,允许坏两块 |
| RAID10 RAID1的安全+RAID0的高速 | 4 | 50% | 读写速率快,容错 |
RAID常见的级别
raid0
raid0 ---数据条带卷 最少需要两块磁盘,分别往每一块磁盘上写一部分数据 优点: 1.读写速度快, 2.磁盘利用率:100% 缺点:不提供数据冗余,无数据检验,不能保证数据的正确性,存在单点故障。 应用场景: 1)对数据完整性要求不高的场景,如:日志存储,个人娱乐 2)要求读写效率高,安全性能要求不高,如图像工作站
raid1
raid1 又叫镜像raid,通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。 一般需要两块磁盘,每块磁盘上都会存储一份完整数据。其数据安全性就会较高,但是磁盘空间利用率是比较低的。 优点:提供数据冗余,数据双倍存储安全性高支持容错。读速度快 缺点:写速度慢,无数据校验。磁盘利用率不高 磁盘利用率:50% 应用场景: 存放重要数据,如数据存储领域
raid5
raid5:RAID5应该是目前最常见的 RAID 等级,它的校验数据分布在阵列中的所有磁盘上。RAID5的磁盘上同时存储数据和校验数据。当一个数据盘损坏时,系统可以根据其他数据块和对应的校验数据来重建损坏的数据。 raid5最少需要3块磁盘。 优点: 1.可以找回丢失的数据---数据可以通过校验计算得出, 2.冗余磁盘-->(需要4快磁盘将其中一块做热备)当某一块磁盘坏掉后,冗余磁盘会自动替换上去 3.有校验机制 4.读写速度高 5.磁盘利用率高 缺点: 1.磁盘越多安全性能越差 定义: RAID 5是RAID 0和RAID 1的折中方案。RAID 5具有和RAID0相近似的数据读取速度,只是多了一个校验信息。RAID5的磁盘空间利用率要比RAID 1高,存储成本相对较低,是目前运用较多的一种解决方案。 应用场景:安全性高,如金融、数据库、存储等。
raid10
RAID10:先做镜像再作条带--也叫混合raid 优点: 1.较高的IO性能 2.有数据冗余 3.无单点故障 4.安全性能高 缺点:成本稍高 应用场景: 特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
相关文章:
linux磁盘的LVM、交换分区以及文件系统
目录 逻辑卷LVM LVM管理 LVM特点 LVM的制作 创建物理卷 创建卷组 创建逻辑卷 格式化文件系统 挂载逻辑卷 LVM的扩容 添加硬盘做物理卷 卷组扩容 扩容逻辑卷 给文件系统扩容 LVM移除 LVM的缩容 交换分区 查看当前交换分区:free Swap:虚…...
【HDFS】ActiveNamenodeResolver#getNamespaces 方法调用点梳理
获取所有的注册在router里的active状态的集群。 /*** Get a list of all namespaces that are registered and active in the* federation.** @return List of name spaces in the federation* @throws IOException Throws exception if the namespace list is not* av…...
算法—双指针
双指针算法可以帮忙把时间复杂度降低一个维度,即原本O(n2)降为O(n);将O(n)降为O(1) 移动零 移动零 题目解析 将所有0移动到末尾保持非0元素相对顺序对数组进行原地操作(不开辟额外空间) 算法原理 数组…...
[Oracle]编写程序,键盘输入n,计算1+前n项之和。测试案例:输入:10 输出:22.47
编写程序,键盘输入n,计算1前n项之和。 测试案例: 输入:10 输出:22.47 代码如下: set serveroutput on declare v_sum number:0;v_n number;beginv_n:&n;for i in 1..v_n loopv_sum:v_sumsqrt(i); end loop; d…...
【视觉SLAM十四讲学习笔记】第三讲——旋转向量和欧拉角
专栏系列文章如下: 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵 本章将介绍视觉SLAM的基本问题之一:如何描述刚体在三维空间中的运动? 旋转向…...
【UGUI】制作用户注册UI界面
这里面主要的操作思想就是 1.打组 同一个事情里面包含两个UI元素都应该打组便于管理和查找 2.设置锚点位置 每次创建一个UI都应该设置他的锚点以便于跟随画布控制自己的:相对位置 3. 设置尺寸(像素大小) 每一次UI元素哪怕是作为父物体的…...
【UE】透视效果
效果 步骤 1. 新建一个空白工程 2. 添加一个第三人称游戏和初学者内容包到内容浏览器 3. 新建一个材质,这里命名为“M_Perspective” 打开“M_Perspective”,设置材质域为后期处理 添加三个“SceneTexture”节点,场景纹理ID选项分别设置为“…...
前端下载文件或者图片方式,window.open或者a标签形式
首先分别讲一下下载文件的方式都有哪些 1.通过a标签的方式下载文件 <a href"http://www.baidu.com" download"baidu.html">下载</a> 我们点击下载,发现是跳转到了百度的首页,并没有真的下载文件。 因为a标签下载只能…...
webpack配置scss loader
国内GPT站点:https://www.atalk-ai.com 在 Webpack 中配置 sass-loader 用于处理 .scss 文件通常涉及以下步骤: 安装必要的依赖: 你需要安装 sass-loader,以及 sass 本身(sass 是 node-sass 的替代品,更快且…...
k8s有状态部署mysql主从(local pv持久化)
1、修改自己对应的命名空间 2、local pv的方式必须先创建好目录在给权限 3、sts部署文件密码都要修改好在部署 yaml资源文件如下: #配置mysql的root密码再部署,如果部署了在修改root密码就会失败,必须在初始化就把root密码修改好 #部署采…...
下载并安装anaconda和VScode,配置虚拟环境,并使用VScode运行代码
文章目录 前言软件下载Anaconda下载VScode下载 软件安装Anaconda安装Vscod安装 配置虚拟环境并运行代码Anaconda创建环境VScode使用,运行代码1. 打开代码所在文件夹2. 选择解释器3. 运行代码 总结 前言 运行python代码,需要2个软件如下: Ana…...
拼图 游戏
运行出的游戏界面如下:按住A不松开,显示完整图片;松开A显示随机打乱的图片 User类 package domain;/*** ClassName: User* Author: Kox* Data: 2023/2/2* Sketch:*/ public class User {private String username;private String password;p…...
python循环语句和函数
1.使用for循环打印9*9乘法表 for i in range(1, 10):for j in range(1, i1):print(i, "*", j, "", i*j, end"\t")print()结果: 2.使用while循环打印9*9乘法表 i 1 while i < 10:j 1while j < i1:print(i, "*", j…...
php框架dcat-admin速查笔记
要想灵活的使用dcat-admin框架开发,必须知道框架有哪些类提供给我们使用. 每一个自定义的按钮,弹框,信息展示,小组件都用到特定的类和接口. 常用核心类 Dcat\Admin\Http\Controllers\AdminController 需要继承的公共控制器 Dcat\Admin\Layout\Content 布局核心 Dcat\Admin\Gr…...
【Java】文件I/O-文件内容操作-输入输出流-Reader/Writer/InputStream/OutputStream四种流
导读 在文件I/O这一节的知识里,对文件的操作主要分为两大类: ☑️针对文件系统进行的操作 ☑️针对文件内容进行的操作 上文已经讲了针对文件系统即File类的操作,这篇文章里博主就来带了解针对文件内容的操作,即输入输出流&am…...
rocky8.9配置K8S集群kubernetes,centos同理
注意!!! 虚拟机实验环境不要使用’克隆’!!! 唯一标识冲突:K8S集群中的每个节点都需要具有唯一的标识符,例如节点名称、IP地址、MAC地址等。当克隆虚拟机时,这些唯一标识…...
Linux下的文件IO之系统IO
1. 知识点 读入写出,切记以我们程序为中心向文件或者别的什么东西读入写出(输入流输出流) 人话就是 文件向我们程序就是读入 程序向文件或者别的什么就是写出 2. open打开文件 open.c /****************************************************…...
iptables防火墙之SNAT与DNAT
1. SNAT SNAT 应用环境:局域网主机共享单个公网IP地址接入Internet (私有IP不能在Internet中正常路由) SNAT原理:源地址转换,根据指定条件修改数据包的源IP地址,通常被叫做源映射。 数据包从内网发送到公网时,SNAT会把数据包的源IP由私网IP…...
Python与设计模式--命令模式
23种计模式之 前言 (5)单例模式、工厂模式、简单工厂模式、抽象工厂模式、建造者模式、原型模式、(7)代理模式、装饰器模式、适配器模式、门面模式、组合模式、享元模式、桥梁模式、(11)策略模式、责任链模式、命令模式、中介者模…...
uni-app 自带返回方法onBackPress,返回上一级并且刷新页面内容获取最新的数据
onBackPress 返回上一级并且刷新页面内容获取最新的数据 onBackPress 方法是uinapp自带返回键方法,也就是在app和H5返回键 onBackPress() {setTimeout(() > {uni.switchTab({url: /pages/Users/index,})}, 300)return true}, methods: {}在这里 uni.switchTab…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
Admin.Net中的消息通信SignalR解释
定义集线器接口 IOnlineUserHub public interface IOnlineUserHub {/// 在线用户列表Task OnlineUserList(OnlineUserList context);/// 强制下线Task ForceOffline(object context);/// 发布站内消息Task PublicNotice(SysNotice context);/// 接收消息Task ReceiveMessage(…...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
QT: `long long` 类型转换为 `QString` 2025.6.5
在 Qt 中,将 long long 类型转换为 QString 可以通过以下两种常用方法实现: 方法 1:使用 QString::number() 直接调用 QString 的静态方法 number(),将数值转换为字符串: long long value 1234567890123456789LL; …...
Mac下Android Studio扫描根目录卡死问题记录
环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
