什么是LVM?
LVM(Logical Volume Manager,逻辑卷管理器)是一种用于Linux系统的存储管理技术。它提供了一种灵活的方式来管理磁盘存储,允许管理员动态调整存储卷的大小和配置,而无需中断系统运行。LVM的主要功能和优势包括:
动态调整卷大小 LVM允许在不停止系统的情况下动态调整逻辑卷的大小。这对于需要频繁调整存储空间的环境非常有用。
创建快照 LVM支持创建卷的快照(snapshot),这对于备份和恢复操作非常有用。快照可以在某一时刻捕获卷的状态,允许在不影响正常操作的情况下进行备份。
聚合存储设备 LVM可以将多个物理存储设备(如硬盘或分区)聚合成一个或多个逻辑卷组(Volume Group,VG),然后在这些卷组上创建逻辑卷(Logical Volume,LV)。这使得存储管理更加灵活和高效。
提高存储利用率 通过将多个物理存储设备合并为一个逻辑卷组,LVM可以更有效地利用存储空间,减少碎片化问题。
简化存储管理 LVM提供了一套命令行工具,使得存储管理任务(如创建、删除、调整卷大小等)更加简单和直观。
LVM的基本概念
物理卷(Physical Volume,PV):LVM管理的基本存储单元,可以是整个硬盘、硬盘分区或RAID设备。
卷组(Volume Group,VG):由一个或多个物理卷组成的存储池。逻辑卷从卷组中分配空间。
逻辑卷(Logical Volume,LV):从卷组中分配的存储单元,类似于传统分区,可以格式化并挂载到文件系统。
物理扩展(Physical Extent,PE):卷组中的最小分配单元,所有的物理卷都被划分为大小相等的PE。
创建系统快照
检查现有的卷组和逻辑卷
sudo vgdisplay sudo lvdisplay
创建逻辑卷快照
sudo lvcreate --size 4G --snapshot --name root_snap /dev/vg0/root
--size 1G
指定了快照的大小,--snapshot
表示创建快照,--name root_snap
是快照的名称,/dev/vg0/root
是要快照的逻辑卷, 一般是快照整个系统/
对应的逻辑卷是/dev/??/root
查看逻辑卷列表
sudo lvs
检查快照内容(可选)
如果你需要访问快照中的数据,可以将其挂载到文件系统中。例如,将快照挂载到/mnt/snapshot:
mkdir /mnt/snapshot
mount /dev/vg0/root_snap /mnt/snapshot
现在你可以在/mnt/snapshot目录中访问快照中的数据。你可以进行备份或其他操作。
完成操作后, 卸载快照:
sudo umount /mnt/snapshot
释放快照
当你不再需要快照时,可以删除它以释放空间:
sudo lvremove /dev/vg0/root_snap
恢复快照
1. 确认快照存在
首先,确认你已经创建了快照,并且快照存在。
sudo lvs
你应该能看到类似如下的输出,其中包含你的快照:
LV VG Attr LSize Pool Origin Data% Meta%
root vg0 -wi-ao---- 50.00g
root_snap vg0 swi-a-s--- 50.00g root 0.00
2. 挂载快照(可选)
如果你想确认快照的内容,可以先挂载快照。
sudo mkdir /mnt/snapshot
sudo mount /dev/vg0/root_snap /mnt/snapshot
检查快照内容:
ls /mnt/snapshot
3. 进入单用户模式或救援模式
由于你要恢复的是root文件系统,最好在单用户模式或救援模式下进行操作,以避免文件系统正在被使用。
进入单用户模式
重启系统。
在GRUB菜单中选择你的内核版本,然后按 e 键编辑启动项。
找到以 linux 开头的行,在行末添加 single 或 1。
按 Ctrl + X 或 F10 启动。
进入救援模式
重启系统。
在GRUB菜单中选择高级模式
Advanced options for debian
选择恢复模式
Recovery mod
4. 恢复快照
使用lvconvert
命令来恢复快照。
sudo lvconvert --merge /dev/vg0/root_snap
输出以下内容表示系统逻辑卷/
被占用, 重启后会自动开始恢复快照
delaying merge since origin is open.
merging of snapshot vg0/root_snap will occur on next activetion of vg0/root
6. 重启系统
重启系统, 恢复操作开始。
sudo reboot
后记
重启后快照开始恢复, 这时旧快照被删除, 使用其他方法判断是否合并完成, 等恢复完成后再重启一次, 要不然此时无法创建新的快照.