虚拟机扩容——LVM分区

news/2024/12/27 22:57:52/

虚拟机扩容——LVM分区

  • 前提说明
  • 实验环境
  • 一、准备工作
  • 二、查看磁盘扩容后状态
  • 三、对指定磁盘进行初始化操作
  • 四、创建物理卷
    • 1、刷新分区并创建物理卷
    • 2、查看物理卷信息
  • 五、卷组、逻辑卷的操作(加载到已有路径)
    • 1、查看卷组名称,以及卷组使用情况
    • 2、使用 vgextend
    • 3、查看当前逻辑卷的空间状态
    • 4、使用 lvcreate
    • 5、刷新根分区并查看状态
  • 6、卷组、逻辑卷的操作(挂载到指定路径)
    • 1、使用 vgcreate
    • 2、简略查看卷组信息
    • 3、查看卷组属性
    • 4、使用 lvcreate 来创建逻辑卷
    • 5、查看逻辑卷属性
    • 6、查看分区信息
    • 7、根据文件系统类型格式化逻辑卷
    • 8、设置开机自动挂载
    • 9、重启后,查看已挂载成功

前提说明

在虚拟机扩容中,
新增一块硬盘 和 直接在原有硬盘基础上扩容是一样的(只不过在原有硬盘上扩容需要关机才可以执行);
但两者都最好先做数据备份或快照,再进行扩容操作;
新增或扩容后,可以通过命令:fdisk -llsblk 对磁盘大小的变化来判断是否有加载成功;
然后就是一系列的扩容操作了。
关于如何辨别自己的系统是LVM分区 还是 非LVM分区的方法,执行下面命令即可(若没有返回信息则代表不是LVM分区方式):

pvdisplay      # 查看物理卷
vgdisplay      # 查看卷组
lvdisplay      # 查看逻辑卷

实验环境

• 设备:一台CentOS 7.8 硬盘为100G的虚拟机
• 方法:本文使用的是LVM分区,通过在原有硬盘基础上进行扩容
• 并选用两种挂载的方法来讲解:
1、加载到已有路径,如/根目录下
2、挂载到指定路径,如/data目录下
【两种方法前四步的步骤一致,因此将在第五步讲解:加载到已有路径、第六步讲解:挂载到指定路径】

• LVM扩容思维流程:
创建一个物理分区–>将这个物理分区转换为物理卷–>把这个物理卷添加到要扩展的卷组中–>然后才能用extend命令扩展此卷组中的逻辑卷

• 关于LVM分区的图解,如图所示:

一、准备工作

1、做好数据备份,关机;
2、选择需要扩容的磁盘,更改为需要增加的大小;

二、查看磁盘扩容后状态

[root@localhost ~]# df -Th
[root@localhost ~]# lsblk
# 发现已经扩容到200G了,但还没被真正用上

三、对指定磁盘进行初始化操作

[root@localhost ~]# fdisk /dev/xvdbp  # 查看分区信息n  # 创建分区p  # 选择主分区回车默认,默认会将所有剩余空间都划入该分区t   # 修改分区格式L   # 列出所有分区格式信息8e # 输入lvm类型的hex代码p  # 查看分区信息w  # 保存并退出

四、创建物理卷

1、刷新分区并创建物理卷

[root@localhost ~]# partprobe /dev/xvda
[root@localhost ~]# pvcreate /dev/xvda3

2、查看物理卷信息

[root@localhost ~]# pvdisplay
[root@localhost ~]# pvs

五、卷组、逻辑卷的操作(加载到已有路径)

1、查看卷组名称,以及卷组使用情况

# 记住这里的VG Name名称,下一步会使用到
[root@localhost ~]# vgdisplay

2、使用 vgextend

# 将物理卷(/dev/xvda3)扩展到卷组(centos【上一步提到的根目录卷组名】
[root@localhost ~]# vgextend centos /dev/xvda3

3、查看当前逻辑卷的空间状态

# 记住卷组centos的逻辑卷路径/dev/centos/root
[root@localhost ~]# lvdisplay

4、使用 lvcreate

# 将卷组中的空闲空间扩展到根分区逻辑卷
[root@localhost ~]# lvextend -l +100%FREE /dev/centos/root
# 若想指定大小分配,则可以使用:lvcreate -L 2GB -n LV_Name VG_NAME

5、刷新根分区并查看状态

[root@localhost ~]# xfs_growfs /dev/centos/root
# 首先确认下磁盘格式是xfs,还是ext4(用命令df -Th可以看出)
# 若磁盘格式是xfs,则执行如下命令:[root@localhost ~]# xfs_growfs /dev/centos/root
# 若磁盘格式是ext4,则执行如下命令:[root@localhost ~]# resize2fs /dev/centos/root

至此,已完成根目录的扩容

6、卷组、逻辑卷的操作(挂载到指定路径)

1、使用 vgcreate

# 将物理卷(/dev/xvda3)创建到卷组(vg_group【名称自定义】)
[root@localhost ~]# vgcreate vg_group /dev/xvda3

2、简略查看卷组信息

[root@localhost ~]# vgs

3、查看卷组属性

# 卷组名:vg_group、可用空间小于100GB
[root@localhost ~]# vgdisplay

4、使用 lvcreate 来创建逻辑卷

# 以下命令是把VG空间全部给于lv1逻辑卷【名称自定义】
[root@localhost ~]# lvcreate -l +100%FREE -n lv1 vg_group# 若想指定大小分配,则可以使用:lvcreate -L 2GB -n LV_Name VG_NAME

5、查看逻辑卷属性

[root@localhost ~]# lvdisplay

6、查看分区信息

# 可看到逻辑卷lv1已经显示出来了
[root@localhost ~]# fdisk -l

7、根据文件系统类型格式化逻辑卷

# 用命令`df -Th`可以看出文件系统类型(本文为xfs类型)
# 并创建一个目录,将逻辑卷挂载到该目录下
[root@localhost ~]# mkfs.xfs /dev/mapper/vg_group-lv1
[root@localhost ~]# mkdir /data
[root@localhost ~]# mount /dev/mapper/vg_group-lv1 /data

8、设置开机自动挂载

# 注意名称格式不能写错,否则可能开不了机
[root@localhost ~]# echo "/dev/mapper/vg_group-lv1 /data xfs defaults 0 0" >> /etc/fstab
[root@localhost ~]# cat /etc/fstab

9、重启后,查看已挂载成功

至此,已完成指定路径的扩容


http://www.ppmy.cn/news/32944.html

相关文章

【技术方案】常见库存设计方案-各种方案对比总有一个适合你

文章目录一、背景二、功能三、业务流程四、那么最终系统设计要遵循什么原则???五 、具体设计5.1 方案一5.1.1 预占库存5.1.2 扣减库存5.1.3 查询库存5.1.4 超时释放库存5.1.5 问题5.2 方案二(异步操作)5.2.1 预占库存5…

Spring Cloud 整合 Feign 实现服务之间的调用

Spring Cloud 整合 Feign 实现服务之间的调用 添加依赖创建 Feign 接口使用 Feign 接口启用 Feign总结附件@FeignClient 注解参数说明Spring Cloud 是一个分布式微服务框架,Feign 是一个 HTTP 客户端框架。Feign 具有声明式 REST API 定义和客户端请求功能,是一个常用的服务之…

文件上传漏洞(一) upload-labs靶场练习

upload-labs靶场练习1.环境搭建2.关卡解析2.1 less-1 - 基于前端JS的检测2.2 less-2 - MIME头认证2.3 less-3 php3,4,5扩展解析2.4 less-4 .htaccess文件绕过2.5 less-5 点空点空绕过2.6 less-6 大小写文件名混淆2.7 less-7 空格绕过2.8 less-8 小圆点绕过2.9 less-9 Win文件流…

【linux】多线程概念详述

文章目录一、线程基本概念1.1 进程地址空间与页表1.2 页表结构1.3 线程的理解1.3.1 如何描述线程1.4 再谈进程1.5 代码理解1.5.1 原生库提供线程pthread_create1.6 资源共享问题1.7 资源私有问题二、总结2.1 什么是线程2.2 并行与并发2.3 线程的优点2.4 线程的缺点2.5 线程异常…

JS小坑总结

js 在开发中遇到的一些小坑不能用{} ! {} 来判断一个对象是否为空不能用{} ! {} 来判断一个对象是否为空 相等操作符会先转换操作数(通常称为强制转型),然后比较它们的相等性。在转换不同的数据类型时,相等…

I.MX6ULL_Linux_驱动篇(29) GPIO驱动

Linux 下的任何外设驱动,最终都是要配置相应的硬件寄存器。所以本篇的 LED 灯驱动最终也是对 I.MX6ULL 的 IO 口进行配置,与裸机实验不同的是,在 Linux 下编写驱动要符合 Linux 的驱动框架。I.MX6U-ALPHA 开发板上的 LED 连接到 I.MX6ULL 的 …

公司测试员用例写得乱七八糟,测试总监制定了这份《测试用例编写规范》

统一测试用例编写的规范,为测试设计人员提供测试用例编写的指导,提高编写的测试用例的可读性,可执行性、合理性。为测试执行人员更好执行测试,提高测试效率,最终提高公司整个产品的质量。 一、范围 适用于集成测试用…

Anaconda的简单使用(基本命令+jupyter内核切换)

一、Anaconda安装图1 Anaconda官网Anaconda官网,下载所对应的版本。这里2021年之后的版本(大概)需要有python3.9环境。按照安装教程一步步地走下去即可。Anaconda简介在开始菜单栏中可以看到Anaconda一系列的工具,常用的是Anaconda终端、Jupyter Noteboo…