你或许听过LVM这个词,也可能知道它能“动态分区”或“扩容不重启”,但你是否知道:LVM还可以直接“拍快照”、管理系统级镜像,像打游戏一样存档,然后随时恢复!没错,LVM的快照机制可以说是Linux下最轻巧、原生的镜像管理方式之一。
快照就是对某个逻辑卷(如/dev/vg0/root)的瞬时副本。类似“保存当前游戏进度”,你可以:创建一个快照,保存系统某个时间点状态接下来大胆操作(升级系统、改配置、测试应用)如果出问题,一键还原回快照,秒变“读档复活”
核心亮点:快照不占多少空间(仅保存变更块),不影响正在运行的系统,比用dd或rsync快得多,灵活很多。
准备环境:你得先有个LVM系统
在多数发行版安装时(如 CentOS、Ubuntu Server),你可以选择启用 LVM 分区。
假设你现在有一个逻辑卷 /dev/mapper/vg0-root,我们后面用它来练手。
查看当前卷组和逻辑卷:
vgdisplay # 查看卷组信息
lvdisplay # 查看逻辑卷信息
示例输出:
LV Path /dev/vg0/root
LV Size 20.00 GiB
创建快照:一行命令,马上“拍照”
lvcreate --size 1G --snapshot --name root_snap /dev/vg0/root
- --size 1G:快照空间(注意只是保存“改动”的那部分)
- --snapshot:说明这是创建快照
- --name:快照名称
- /dev/vg0/root:原始逻辑卷
创建成功后,你可以在 /dev/vg0/root_snap 或 /dev/mapper/vg0-root_snap 中看到新设备。
你可以挂载快照读数据:
mkdir /mnt/snap
mount /dev/vg0/root_snap /mnt/snap
ls /mnt/snap
是不是熟悉又完整?这说明快照可用!
出错了怎么办?一键还原!
假如你执行了某个“毁灭性操作”(比如误删了 /etc/passwd),怎么办?
方案一:使用快照还原整个卷(破坏性,覆盖原始数据)
lvconvert --merge /dev/vg0/root_snap
这条命令会把快照内容覆盖原始卷,像系统回滚一样。
注意事项:
恢复前需要先卸载逻辑卷,或重启系统进入 rescue 模式
一旦合并,快照将自动消失
用完快照后如何清理?
快照毕竟占空间,用完记得删除:
lvremove /dev/vg0/root_snap
或者:
lvremove /dev/mapper/vg0-root_snap
LVM 快照不是永久的,长时间不用会造成性能下降,建议只用于短期测试或变更操作备份。
LVM 快照 ≠ 高大上,它是 Linux 的“存档神器”,你不需要复杂镜像工具,只要系统启用了 LVM,就已经拥有一把原生、高效、好用的“镜像快照”管理利器。
别再只把LVM当成“可动态分区”的工具了,它本质上是一种轻量级的镜像系统。善用快照,玩转系统变更、测试和救命操作,从此再也不怕“回不去了”。