Linux创建逻辑卷并扩容(超详细)
目录
编辑
一、概念解析
1、LV逻辑卷
2、PV物理卷
3、VG卷组
二、扩容前准备
三、创建逻辑卷并扩容
1、打开虚拟机
2、进入root用户
3、查看新加入的硬盘
4、创建主分区
5、创建物理卷
6、打包为一个卷组
7、创建逻辑卷
8、格式化逻辑卷
9、挂载逻辑卷--开机自启动挂载(永久挂载)
10、逻辑卷扩容
一、概念解析
1、LV逻辑卷
LV(Logical Volume,逻辑卷)是Linux系统中的一种逻辑卷,它是在物理卷(PV)和卷组(VG)之上创建的,可以动态地调整大小和迁移数据。通常,LV被格式化为文件系统,以提供高级别的数据管理和访问方式。LV提供了更好的灵活性和可用性,可以根据需要增加或减少存储空间,同时提供了数据冗余和恢复功能。在Linux系统中,LVM(Logical Volume Manager,逻辑卷管理)为LV提供了管理和配置工具。
2、PV物理卷
PV(Physical Volume)物理卷是在LVM(Logical Volume Manager)中使用的一个概念,它表示一个硬盘或分区。在LVM中,多个PV物理卷可以组成一个VG(Volume Group)卷组,VG卷组则可以被分成多个LV(Logical Volume)逻辑卷。PV物理卷通常使用命令pvcreate来创建,之后可以使用vgextend命令将其添加到VG卷组中。
3、VG卷组
VG是Linux中的卷组(Volume Group)的缩写。VG是逻辑卷(Logical Volumes)的基础,它将一个或多个物理卷(Physical Volumes)组合在一起,形成一个单一的卷组。VG提供了一种灵活的方式,来管理一个或多个物理硬盘驱动器的存储空间。VG中的所有物理卷都必须属于同一系统,并且必须使用相同的块大小。VG可以被划分成多个逻辑卷(Logical Volumes),每个逻辑卷都可以被格式化为一个文件系统,或被用作其他用途,如MySQL数据目录等。
二、扩容前准备
笔者这里做的操作是先创建一个逻辑卷,然后在对这个逻辑卷扩容,这里是先创建5G的逻辑卷,然后在将这个5g逻辑卷扩容到10G,因为原来的硬盘已经全部分完,所以在这里我选择了接着添加硬盘,为了方便看出细节,笔者没有选择直接添加10G的硬盘,选择了添加两个5G的硬盘进行操作和扩容
添加一个硬盘

选择SCSI

创建新虚拟磁盘

选择大小5G,这里可以根据自己的需求进行改变

这样之后我们就会得到一个5G的硬盘,再重复一次操作,我们可以得到两个这样的硬盘,最终结果如下图

三、创建逻辑卷并扩容
1、打开虚拟机
这里应该没什么说的了吧![]()
2、进入root用户
su root

3、查看新加入的硬盘
lsblk
我们可以看到我们刚刚加进去的两个5G的硬盘
4、创建主分区
在创建LVM逻辑卷之前我们需要先创建主分区
使用 fdisk /dev/sdb 创建主分区。注意:我这里是新添的两块硬盘,所以此操作要执行两次,只是硬盘名不一样。依次输入 n , p, 1, 然后回车回车,输入w后保存。
注意下行命令sdb哪里需要和上边我们查看到的空硬盘名字一致,先对其中一个创建主分区,在对另一个创建,步骤都是一样的。
fdisk /dev/sdb

依次输入n,p,1,然后两次回车选择默认大小


然后输入w进行保存

同样的方法在对sdc执行一下,我们要将两个盘都创建主分区

5、创建物理卷
下面一条语句是创建物理卷的命令,注意刚刚那个过程,其中的编号我们选择的是1,所以sdb变成主分区之后是sdb1,sdc变成sdc1,如果你写的是其他的数字就会显示其他的。
如果你还不确定你是什么的情况下,可以在执行一下lsblk进行查看
lsblk
这里就是我们刚刚的主分区
关于这里我们之前填的数字1,2,3之类的在解释一下吧,这里的话就类似我们windows系统一样,1就相当于C盘,2相当于D盘这个意思,一般我们新的硬盘都是从1开始,比如我们有一个20G的硬盘,在第一次创建主分区的时候我们输入1
就是这里,我们可以自定义这个分区的大小,他给的有一个范围2048-10485759,第一处问的是从哪里开始,第二处问从哪里结束,我们所选择默认就是从2048开始,到10485759结束,其实我们可以自定义第一块给5G,那么第二块可以给15G,就相当于我们windows系统c盘给了5G,D盘给了15G,这里如果不懂的话也不影响接下来的操作,尽量还是理解的好
pvcreate /dev/sdb1 /dev/sdc1

我们的物理卷已经创建成功了。
6、打包为一个卷组
- 格式:vgcreate+卷组名+设备1+设备2+设备...
卷组的名字随便起,笔者是随便打了几个字母
vgcreate ysh /dev/sdb1 /dev/sdc1
![]()
查看一下我们打包的卷组
vgdisplay ysh

可以看到我们有9.99G的空间
7、创建逻辑卷
- 格式:lvcreate -L 指定的大小 -n 指定的逻辑卷名 卷组名
第一个ysh是我当前逻辑卷的名字,第二个是之前的卷组名字,这里可以参考上边格式就能理解
lvcreate -L +5G -n ysh ysh
![]()
查看我们创建的逻辑卷
lvdisplay /dev/ysh/ysh

8、格式化逻辑卷
- 格式:mkfs.xfs+创建的LVM卷组
mkfs.xfs /dev/ysh/ysh

9、挂载逻辑卷--开机自启动挂载(永久挂载)
//开机自启动挂载的方式不是唯一的,这里使用的是blkid-UUID的方法
//使用 mkdir 建立一个挂载的目录 mkdir /ysh
//使用blkid查看自己的UUID编码,然后复制最下面的UUID编码,不要双引号。
创建挂载目录,这里名字自己起
mkdir /ysh
![]()

查看blkid-UUID
blkid

注意最后一个是的UUID
现在吧UUID复制一下,保存
a99e6802-1cc8-4e9c-88d2-fd301e078ed5
注意不要复制到双引号
//编辑vim /etc/fstab 然后把/boot那一行的格式复制在最下面,把UUID替换为刚刚复制的UUID,把/boot换成自己的挂载目录,保存退出
vim /etc/fstab
添加这条语句,将UUID换成自己的,将/ysh换成自己刚刚创建的目录
UUID=a99e6802-1cc8-4e9c-88d2-fd301e078ed5 /ysh xfs defaults 0 0

//使用 mount -a 命令刷新,然后 df -h 查看
//挂载成功,大小为5G接下来可以进行扩容,然后也可以不扩容,看自己需求
mount -a
df -h

可以看到逻辑卷创建成功
10、逻辑卷扩容
需要手动操作
lvextend -L +4.9G /dev/ysh/ysh
xfs_growfs /dev/ysh/ysh
df -h
执行上列命令就可以了

如果出现下列报错的话,我们看保存信息,5G需要1280内存块,但是我们只有1278。所以把5G改成4.9G就ok了。如果还不行就在该小点。

好啦,大功告成,完结散花
相关文章:
Linux创建逻辑卷并扩容(超详细)
目录 编辑 一、概念解析 1、LV逻辑卷 2、PV物理卷 3、VG卷组 二、扩容前准备 三、创建逻辑卷并扩容 1、打开虚拟机 2、进入root用户 3、查看新加入的硬盘 4、创建主分区 5、创建物理卷 6、打包为一个卷组 7、创建逻辑卷 8、格式化逻辑卷 9、挂载逻辑卷--开机自…...
buuctf_练[安洵杯 2019]easy_web
[安洵杯 2019]easy_web 文章目录 [安洵杯 2019]easy_web掌握知识解题思路代码分析正式解题 关键paylaod 掌握知识 url地址和源代码的信息捕捉;图片和base64之间转换;base64和十六进制编码的了解;代码审计,绕过正则匹配对关键字的…...
入学生活科研随笔
近而立之年,巅峰享受的时期有两段。一是高考后,收到入学通知书。早晨,八点多,我醒来在院子里看到,爸爸在门口和邮政快递员寒暄。那天应该是8月15号,清晨凉凉爽爽的,杨树遮住了大半个院子。第二段…...
【1++的Linux】之进程间通信(共享内存)
👍作者主页:进击的1 🤩 专栏链接:【1的Linux】 我们在前面的文章中提到过,进程间的通信本质都是先看到同一块资源,然后通过这同一块资源进行通信,并且是单向的通信,只能一端发&#…...
Linux高性能服务器编程——ch8笔记
第8章 高性能服务器程序框架 8.1 服务器模型 服务器启动后,首先创建一个(或多个)监听socket,并调用bind函数将其绑定到服务器感兴趣的端口,然后调用listen函数等待客户连接。服务器稳定运行之后,客户端就可…...
Android WMS——ViewRootImpl分析(六)
一、简介 ViewRootImpl是View中的最高层级,属于所有View的根(但ViewRootImpl不是View,只是实现了ViewParent接口),维护了整个视图结构,并作为输入事件的分发器和绘图管道的输入端点,承担着输入事件分发、窗口管理、视图绘制和系统事件响应等关键角色。对于Android应用程…...
Unsatisfied dependency expressed through bean property ‘sqlSessionTemplate‘;
代码没有问题,但是启动运行报错 2023-10-25 16:59:38.165 INFO 228964 --- [ main] c.h.h.HailiaowenanApplication : Starting HailiaowenanApplication on ganluhua with PID 228964 (D:\ganluhua\code\java\hailiao-java\target\classes …...
【C++】智能指针:auto_ptr、unique_ptr、share_ptr、weak_ptr(技术介绍 + 代码实现)(待更新)
文章目录 0. 概述智能指针,智能在哪儿?RAII 的介绍四个智能指针的特点: 1. auto_ptr(C98)🐎核心功能的简单实现 2. unique_ptr(C11)🐎核心功能的简单实现 3. shared_ptr&…...
nodejs+vue全国公考岗位及报考人数分析
传统的搜索引擎尽管解决了信息搜索问题,但无法进行有效的数据分析和优质资源的获取。并且,人们的需求不同,数据的要求也不同。为了解决这一问题,定向抓取数据的爬虫诞生了。它的诞生把人们从重复性的劳动中解放出来,节…...
【0基础学Java第二课】数据类型与变量
2. 数据类型与变量 2.1 字面常量2.2 数据类型2.3 变量2.3.1 变量概念2.3.2 语法格式 2.4 整型变量2.4.1 整型变量2.4.2 长整型变量2.4.3 短整型变量2.4.4 字节型变量 2.5 浮点型变量2.6 字符型2.7 布尔型变量2.8 类型转换2.9 类型提升2.10 字符串类型2.10.1 字符串拼接操作符 2…...
Pytorch整体工作流程代码详解(新手入门)
一、前言 本文详细介绍Pytorch的基本工作流程及代码,以及如何在GPU上训练模型(如下图所示)包括数据准备、模型搭建、模型训练、评估及模型的保存和载入。 适用读者:有一定的Python和机器学习基础的深度学习/Pytorch初学者。 本文…...
读图数据库实战笔记02_图数据建模
1. 概念 1.1. 实体 1.1.1. 通常用名词来表示 1.1.2. 描述一个领域中的事物或者事物类型 1.1.2.1. 汽车 1.1.2.2. 用户 1.1.2.3. 地理位置 1.1.3. 在逻辑模型和技术实现过程中,实体通常会变成“顶点” 1.2. 关系 1.2.1. 用动词(或动词短语&#…...
竞赛 深度学习卫星遥感图像检测与识别 -opencv python 目标检测
文章目录 0 前言1 课题背景2 实现效果3 Yolov5算法4 数据处理和训练5 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **深度学习卫星遥感图像检测与识别 ** 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐…...
对Happens-Before的理解
Happens-Before Happens-Before 是一种可见性模型,也就是说,在多线程环境下。原本因为指令重排序的存在会导致数据的可见性问题,也就是 A 线程修改某个共享变量对 B 线程不可见。因此,JMM 通过 Happens-Before 关系向开发人员提供…...
分类预测 | MATLAB实现SSA-CNN-BiGRU麻雀算法优化卷积双向门控循环单元数据分类预测
分类预测 | MATLAB实现SSA-CNN-BiGRU麻雀算法优化卷积双向门控循环单元数据分类预测 目录 分类预测 | MATLAB实现SSA-CNN-BiGRU麻雀算法优化卷积双向门控循环单元数据分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.MATLAB实现SSA-CNN-BiGRU麻雀算法优化卷积双…...
Java面试八股文之暑假合集
八股文暑假合集 基础篇二分查找 java基础篇7月12号面向对象和面向过程的区别重载和重写String 7月13号自动装箱和拆箱静态方法构造方法成员变量和局部变量对象引用和对象实例返回值 与equals(重要)hashcode()和equals()HashMap 7月16号线程,进程和程序final关键字的…...
竞赛选题 深度学习卫星遥感图像检测与识别 -opencv python 目标检测
文章目录 0 前言1 课题背景2 实现效果3 Yolov5算法4 数据处理和训练5 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 **深度学习卫星遥感图像检测与识别 ** 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐…...
机器学习第一周
一、概述 机器学习大致会被划分为两类:监督学习,无监督学习 1.1 监督学习 监督学习其实就是,给计算机一些输入x和正确的输出y(训练数据集),让他总结x->y的映射关系,从而给他其他的输入x&a…...
大数据采集技术与预处理学习一:大数据概念、数据预处理、网络数据采集
目录 大数据概念: 1.数据采集过程中会采集哪些类型的数据? 2.非结构化数据采集的特点是什么? 3.请阐述传统的数据采集与大数据采集的区别? 4.大数据采集的数据源有哪些?针对不同的数…...
MySQL - 为什么索引结构默认使用B+树,而不是其他?
B-Tree的缺点: 范围查询效率相对较低:虽然B-Tree支持范围查询,但在实际操作中可能需要进行多次树遍历,性能较差。磁盘空间利用不高:B-Tree中的非叶子节点也存储数据,导致磁盘空间利用率相对较低。更复杂的平…...
JavaScript 中的 ES|QL:利用 Apache Arrow 工具
作者:来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗?了解下一期 Elasticsearch Engineer 培训的时间吧! Elasticsearch 拥有众多新功能,助你为自己…...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路
进入2025年以来,尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断,但全球市场热度依然高涨,入局者持续增加。 以国内市场为例,天眼查专业版数据显示,截至5月底,我国现存在业、存续状态的机器人相关企…...
ESP32读取DHT11温湿度数据
芯片:ESP32 环境:Arduino 一、安装DHT11传感器库 红框的库,别安装错了 二、代码 注意,DATA口要连接在D15上 #include "DHT.h" // 包含DHT库#define DHTPIN 15 // 定义DHT11数据引脚连接到ESP32的GPIO15 #define D…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个生活电费的缴纳和查询小程序
一、项目初始化与配置 1. 创建项目 ohpm init harmony/utility-payment-app 2. 配置权限 // module.json5 {"requestPermissions": [{"name": "ohos.permission.INTERNET"},{"name": "ohos.permission.GET_NETWORK_INFO"…...
uni-app学习笔记三十五--扩展组件的安装和使用
由于内置组件不能满足日常开发需要,uniapp官方也提供了众多的扩展组件供我们使用。由于不是内置组件,需要安装才能使用。 一、安装扩展插件 安装方法: 1.访问uniapp官方文档组件部分:组件使用的入门教程 | uni-app官网 点击左侧…...
STL 2迭代器
文章目录 1.迭代器2.输入迭代器3.输出迭代器1.插入迭代器 4.前向迭代器5.双向迭代器6.随机访问迭代器7.不同容器返回的迭代器类型1.输入 / 输出迭代器2.前向迭代器3.双向迭代器4.随机访问迭代器5.特殊迭代器适配器6.为什么 unordered_set 只提供前向迭代器? 1.迭代器…...
mcts蒙特卡洛模拟树思想
您这个观察非常敏锐,而且在很大程度上是正确的!您已经洞察到了MCTS算法在不同阶段的两种不同行为模式。我们来把这个关系理得更清楚一些,您的理解其实离真相只有一步之遥。 您说的“select是在二次选择的时候起作用”,这个观察非…...



