LVM
一些链接B站视频
网易云课堂原视频
简书vm假造机扩容
一、LVM简介
1. 定义
LVM(Logical volume Manager)逻辑卷管理通过将底层物理硬盘抽象封装起来,以逻辑卷的情势表现给上层系统,逻辑卷的大小可以动态调整,而且不会丢失现有数据。新加入的硬盘也不会改变现有上层的逻辑卷。
2. 逻辑卷的根本概念
[*]PV: physical volume,底层磁盘需要先格式化成PV,这一步实际上是将硬盘空间划分成了一个一个的PE(下图中灰块为PE)。
[*]PE: physical extend,PE是逻辑卷空间管理的最根本单元。PE默认4M大小。
[*]VG: volume group,VG可以理解为一个空间池,用于装PE,可以将一个或多个PV加入VG当中(下图中黄块为VG)。
[*]LV: logical volume,操纵系统最终使用的是LV,用于代替传统的硬盘分区(下图中橙块)。
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520162117702-1851509060.png
提示:当创建完毕一个逻辑卷后,会多出一个设备:/dev/vgname/lvname
3. LVM创建过程
[*]物理磁盘被格式化为PV,空间被分为一个个PE
[*]差异的PV加入同一个VG,差异的PV的PE全部进入VG的PE池内
[*]LV基于PE创建,大小为PE的整数倍,组成LV的PE可能来自差异物理磁盘
[*]LV现在就直接可以格式化后挂载使用了
[*]LV的扩充缩减实际上就是增加或减少组成该LV的PE的数量。其过程不丢失原始数据
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520162158476-1057261440.png
二、创建与删除LVM
1. 创建LVM
[*]将物理磁盘设备初始化为物理卷: pvcreate /dev/sdb /dev/sdc
[*]创建卷组,并将PV加入卷组中:vgcreate linuxcast /dev/sdb /dev/sdc
[*]基于卷组创建逻辑卷: lvcreate -n mylv -L 2G linuxcast
[*]为创建好的逻辑卷创建文件系统: mkfs.ext4 /dev/linuxcast/mylv
[*]将格式化好的逻辑卷挂载使用: mount /dev/linuxcast/mylv /mnt
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520162746727-2036094660.png
注意:需要使用root用户运行上述命令,另外还可以使用fdisk -l来查看分区情况
2. 查看LVM信息
可以使用下述命令查看LVM相关信息:
[*]查看物理卷信息: pvdisplay(详细) pvs
[*]查看卷组信息: vgdisplay(详细) vgs
[*]查看逻辑卷信息: lvdisplay(详细) lvs
3. 删除LVM
可以使用下述命令删除LVM,注意删除肯定要按照下述次序删除,假如挂载了的lv需要先卸载
[*]删除LV: lvremove /dev/linuxcast/mylv
[*]删除VG: vgremove linuxcast
[*]删除物理卷: pvremove /dev/sdb
三、LVM的拉伸与缩小
1. 拉伸LVM
逻辑卷的拉伸操纵可以在线执行,不需要卸载该逻辑卷
[*]包管VG中有富足的空闲空间 vgdisplay
[*]扩充逻辑卷 lvextend -L +1G /dev/linuxcast/mylv或者直接指定PE数目: lvextend -l +200 /dev/linuxcast/mylv
[*]查看扩充后LV大小 lvdisplay
[*]更新文件系统 resize2fs /dev/linuxcast/mylv
[*]查看更新后文件系统 df -h
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520162833295-837560001.png
2. 扩容VG
[*]将要添加到VG的硬盘格式化为PV pvcreate /dev/sdd
[*]将新添加的PV添加到指定卷组中 vgextend linuxcast /dev/sdd
[*]查看扩充后VG大小 vgdisplay
3. 缩小一个逻辑卷
注意:逻辑卷的缩小必须离线执行,要先卸载逻辑卷,另外缩小逻辑卷是非常危险的操纵,容易丢失数据,最好留一部分余量,即缩小LV的空间小于缩小文件系统的空间。
[*]卸载已经挂载的逻辑卷 umount /dev/linuxcast/mylv
[*]缩小文件系统(会提示需要运行fdisk检查文件系统) resize2fs /dev/linuxcast/mylv 10G(缩小到10G)
[*]缩小LV lvreduce -L -10G /dev/linuxcast/mylv
[*]查看缩小后的LV lvdisplay
[*]挂载 mount /dev/linuxcast/mylv /mnt
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520162905714-2110683837.png
4. 缩小VG
缩小VG之前务必包管VG剩余空间比要拿走的那块硬盘的空间大。
[*]将一个PV从指定卷组中移除 vgreduce linuxcast /dev/sdd
[*]查看缩小后的卷组大小 vgdisplay
[*]查看PV pvs
[*]移除PV pvremove /dev/sdd
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520162935435-996814679.png
四、vmware假造机的扩容
链接: VM假造机Ubuntu 20.04 LVM磁盘扩容 - 简书 (jianshu.com)
1. 增加假造机硬盘容量
直接在vmware中扩展假造磁盘大小,操纵完之后使用df -h查看硬盘信息,可以发现硬盘容量并没有扩大,使用fdisk -l,会发现有一个GPT PMR size mismatch的报错,但是这个时候可以看到sda已经是扩容之后的容量了,sda3的大小没有改变,也就是说在sda后部有一个空闲空间。
办理GPT PMR size mismatch报错的方法是输入parted -l修复分区表,假如需要输入命令的话输入fix即可(操纵完这一步后可能使用fdisk -l查看还是有报错,忽略之)。
2. 扩容硬盘
[*]输入命令parted /dev/sda
[*]输入unit s设置size单元,方便追加输入
[*]输入命令p free查看详情
[*]输入命令resizepart 3追加容量到sda3
[*]输入命令83886046s空闲空间区Free Space结束位置
[*]输入命令q退出
[*]输入命令pvresize /dev/sda3更新物理卷,物理卷扩容之后,操纵就与第三节中的操纵一致了。
https://img2024.cnblogs.com/blog/3297814/202405/3297814-20240520163003281-307657264.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]