逻辑卷与分区大小调整
- 如何从 LVM 的卷组中删除物理卷?
- 多块弹性云硬盘构建 LVM 逻辑卷—腾讯云
- centos7根目录扩容(根目录在sda3 vgdisplay为空)—【简单有效】
- resize2fs 详解和 LVM 逻辑卷缩减
- Linux分区调整(LVM和非LVM环境中扩容和缩小)—【详细】
构建 LVM 逻辑卷
逻辑卷管理(Logical Volume Manager,LVM)通过在硬盘和分区之上建立一个逻辑层,将磁盘或分区划分为相同大小的 PE(Physical Extents)单元,不同的磁盘或分区可以划归到同一个卷组(VG,Volume Group),在 VG 上可以创建逻辑卷(LV,Logical Volume),在 LV 上可以创建文件系统。
相较于直接使用磁盘分区的方式,LVM 的优势在于弹性调整文件系统的容量:
- 文件系统不再受限于物理磁盘的大小,可以分布在多个磁盘中。
例如,您可以购买3块4TB的弹性云硬盘并使用 LVM 创建一个将近12TB的超大文件系统。 - 可以动态调整逻辑卷大小,不需要对磁盘重新分区。
当 LVM 卷组的空间无法满足您的需求时,您可以单独购买弹性云硬盘并挂载到相应的云服务器上,然后将其添加到 LVM 卷组中进行扩容操作。
0️⃣:准备工作:
- 两个空分区(没有创建文件系统),假设有
/dev/sda4
和/dev/sdb
两个分区 - 已使用 root 用户登录服务器
1️⃣:创建物理卷 PV
$ pvcreate /dev/sda4 /dev/vdd /dev/sdb
创建成功,如图所示(因为sdb 分区之前创建了文件系统,所以要擦除)
通过以下命令,查看现在系统中的物理卷
$ lvmdiskscan | grep LVM# 或者
$ pvdisplay
2️⃣:创建卷组 VG
创建一个名为 lvm_demo
的卷组
$ vgcreate lvm_demo /dev/sda4 /dev/sdb
创建成功则如图所示
可以通过以下命令,向卷组中添加新的物理卷
# vgextend 卷组名 新物理卷路径
# 假设有一个物理卷为 sda5
$ vgextend lvm_demo /dev/sda5
通过 vgs
、vgdisplay
等命令可以查看当前系统中的卷组信息
3️⃣:创建逻辑卷 LV
创建大小是500MB,名为 lv_demo 的逻辑卷
$ lvcreate -L 500MB -n lv_demo lvm_demo
创建成功后,如图所示,物理卷 /dev/sda4 被使用了 500MB 的空间
4️⃣:创建并挂载文件系统
$ mkfs.ext4 /dev/lvm_demo/lv_demo
创建成功后,如图所示
挂载至目录 /tmp/test
下
$ mkdir /tmp/test
$ mount /dev/lvm_demo/lv_demo /tmp/test/
说明:
通过 fdisk -l 可以看到逻辑卷 /dev/lvm_demo/lv_demo 的信息
可以通过 df -TH 命令查看是否挂载成功
5️⃣:动态扩展逻辑卷及文件系统大小
扩展前提:
仅当卷组 VG 容量有剩余时,LV 容量可动态扩展。扩展 LV 容量后,需一并扩展创建在该 LV 上的文件系统的大小。
扩展逻辑卷大小,增加 500MB
# lvextend [-L +/- <增减容量>] <逻辑卷路径>
$ lvextend -L +500MB /dev/lvm_demo/lv_demo
说明:如图所示 两个物理卷被使用了 1000MB 的空间
此时逻辑卷虽然变为 1000MB,但是文件系统并没有变大,还需要执行以下命令
$ resize2fs /dev/lvm_demo/lv_demo
最后可以通过 df -h
命令,查看容量是否变为 1000MB
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OiOL2q2F-1652022822997)(E:/%E7%AC%94%E8%AE%B0/pic/image-20220502235714069.png)]
压缩逻辑卷
假设 /tmp/test 文件夹需要的最大容量是 500MB,现在想要压缩逻辑卷 lvm_demo_lv_demo
,由 1000MB 变为 500MB,并且将分区 /dev/sdb 移出卷组 lv_demo,用作其他用途。
❗️ 注意:压缩逻辑卷前,要保证逻辑卷的总容量大于逻辑卷所有文件的总容量。
1️⃣:对 LVM 强制执行文件系统检测
$ e2fsck -f /dev/mapper/lvm_demo-lv_demo
2️⃣:调整文件系统大小
压缩为文件系统大小为 500M (其中文件总共小于500M)
# 大小单位可以为 'K', 'M', 'G', 'T',大小写均可
$ resize2fs /dev/lvm_demo/lv_demo 500M
注意:resize2fs 的大小参数不支持小数。
如:
$ resize2fs /dev/lvm_demo/lv_demo 0.5G # 报错 resize2fs 1.42.9 (28-Dec-2013) resize2fs: 无效的新大小(Invalid new size):500MB
3️⃣:压缩逻辑卷大小
# 压缩逻辑卷至 500MB
$ lvreduce -L 500M /dev/lvm_demo/lv_demo
通过 pvs 可以看到 /dev/sdb 完全空闲,可以将其移出
4️⃣:将物理卷 /dev/sdb 移出卷组 lvm_demo
$ vgreduce lvm_demo /dev/sdb
通过 vgs 可以看到 卷组的情况
5️⃣:擦除物理卷 /dev/sdb
$ pvremove /dev/sdb
之后就可以将 /dev/sdb 用作其他用途了
非 LVM 分区调整分区大小
总的来说调整分区大小步骤就是:
- 1、卸载分区 —> 2、扩容或缩小分区和文件系统 —> 3、重新挂载分区
但是在非 LVM 分区,可以在线扩容,但是不可以在线缩小分区(在线即挂载了目录)。
如图所示,不能够在线调整文件系统(ext4)的大小,必需要先卸载分区(umount)才能调整大小。但是根目录( / )在系统运行状态是不能卸载的。
不同的文件系统格式下可以做的操作有所不同,这里只以 ext4 为例。
ext4支持扩容和缩小,home分区(你的私人分区)扩容或缩小均可以在root用户登录做卸载后调整,其他分区必须进救援模式进行扩容或缩小。
扩容分区
扩容分区可以通过将待扩容分区的相邻分区,划分到一起进行扩容。 ===> 参考
或者构建逻辑卷进行扩容,这里不再赘述。
缩小分区
现有一个分区 /dev/sdb1,大小为 500MB,但是平常最多只会使用 250MB,所以计划缩小分区为 250MB
通过 df -TH
查看挂载分区的使用情况 (以下图片仅供参考)
1️⃣:卸载待修改分区(/dev/sdb1)
umount /dev/sdb1
2️⃣:检查该分区,并且缩小文件系统的大小
# 先检查格式系统
$ e2fsck –f /dev/sdb1
#开启journal,在系统事故,或者掉电的情况下, journal 可以帮助文件系统找回丢失的文件。 (可选)
$ tune2fs -o has_journal /dev/sdb1# 缩小文件系统大小,缩小为 250M
resize2fs -f /dev/sdb1 250M
3️⃣:缩小分区大小
$ fdisk /dev/sdb1# 1.删除原分区 /dev/sdb1
# 2.创建新分区 /dev/sdb1 ===> 容量只有一半(根据Unit大小和扇区起始位置计算即可)
# 3.创建新分区 /dev/sdb2 (可选) ===> 默认即可
4️⃣:调整文件系统,并挂载
# 让文件系统自动适应分区
resize2fs -f /dev/sdb1# 重新挂载到文件夹
mount /dev/sdb1 /tmp/test
逻辑卷与分区大小调整相关推荐
- 关于 Linux中逻辑卷/物理分区等知识的一些总结
我的需求: 准备红帽考试,这块听课听得稀里糊涂的. 我是这样做的: 请教了公司大佬,书里找了些资料.这里整理笔记加以记忆,不足之处请小伙伴指出来.生活加油.2021.01.08 一,思维导图梳理关系 ...
- Linux使用LVM逻辑卷 给分区扩容 不重启 热扩容
虚拟机的硬盘不够用了,里面又正在跑着服务 不能重新格式化分区 该怎么办呢?跟大家说一下 如何使用LVM来进行动态热扩容. 首先:确定你的操作系统安装时 是使用LVM进行分区的,否则是无法使用LVM进行 ...
- 新服务挂载1T硬盘进行逻辑卷的分区
本片文章介绍有关linux的磁盘分区,磁盘分区的租用和好处,小伙伴自行去查阅资料脑补一下吧,这里不做更多的相关介绍了. 进入正题!(这里针对的是linux系统) 首先无论是自己搭建的服务器或者购买的服 ...
- windows下调整linux分区大小,fdisk、parted无损调整普通分区大小 (附:win的c盘分区大小调整)...
版权声明:本文为haibing.org原创文章,转载请附上本文链接. 本文永久链接:http://haibing.org/123 环境:oracle linux 6.4 #fdisk -v fdisk ...
- android8.1新建分区并挂载,Android8.1 MTK Vendor分区大小调整无效分析
最近想修改一下MTK Vendor分区大小,结果被 坑.只能说MTK真的太laji. 查找资料,正规的流程是: 1. device/mediatek/build/build/tools/ptgen/ ...
- linux调小根目录,Linux根目录分区大小调整教程
1.备份 home 查看未调整前的根目录容量,可以看到默认是分配 50G,但大都数的软件安装都默认在根目录 所以这里将home的容量分给根目录. [root@localhost ~]# df -h 文 ...
- linux缩小根目录分区如何缩小,Linux根目录分区大小调整教程
1.备份 home 查看未调整前的根目录容量,可以看到默认是分配 50G,但大都数的软件安装都默认在根目录 所以这里将home的容量分给根目录. [root@localhost ~]# df -h 文 ...
- 支持win7的无损分区大小调整软件
以前win xp一直用PQ magic.现在win7了,使用卷的概念来分区了,很多以前的分区软件都无法支持. 在网上找到一款使用方便,速度不错的无损调整分区的软件,支持win7!用下来挺强大的,写出来 ...
- Linux分区大小调整
这是很久之前遇到的问题了,参考的博客加了书签,最近闲下来,转成自己的. 先简述一下之前的情况,本地的一台测试服务器,一直只使用root用户,但安装系统时默认只给root用户分配了50G空间,使用一段时 ...
最新文章
- RequestResponseServletContext
- Flink 和 Iceberg 如何解决数据入湖面临的挑战
- 从内存中加载并运行exe(两种方法)
- qq纵横四海源码_【0基础】纵横中文网python爬虫实战
- 【转】C++学习三 模板类出错总结(Missing template arguments before ‘L‘)
- java字符串拼接_这样写Java,同事直呼666
- Java基础学习总结(124)——Java9逆天的十大新特性
- 编写算法判别给定二叉树是否为完全二叉树_推荐一位实力超强的平安前端算法大佬:瓶子君...
- docker容器资源配额控制
- 【Django 2021年最新版教程6】前端传递数据到后端处理 POST方法
- Ubuntu 8.04和Windows Server 2008 双体系的安置与卸载记
- Layui 数据表格:用户个性化定制列(拖拽,隐藏)
- 计算机专业四次评估,教育部第四次学科评估:信息与通信工程一级学科排行,仅供参考...
- 有机酸的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- linux系列---常见命令
- 【前端】你真的理解JavaScript中的变量和数据类型吗
- 【ES6】let、const变量提升的验证,以及TDZ死区的理解
- element audio 标签 不显示_青云神书【陆鸣】=书虫强推amp;不容错过
- 猿圈 题库_小猿圈总结常见HTML5基础知识面试题汇总
- 【趣味】一个将任意数字分解成 114514 构成的公式的工具