温馨提示×

ubuntu文件系统快照功能使用教程

小樊
77
2025-09-27 07:32:32
栏目: 智能运维

Ubuntu文件系统快照功能使用教程

文件系统快照是系统或数据某一时刻的静态映像,可用于快速恢复误操作、系统崩溃等问题。Ubuntu中实现快照的功能主要有LVM、Btrfs、Timeshift三种方式,以下是详细教程:

一、LVM快照(适用于使用LVM管理的逻辑卷)

LVM(逻辑卷管理)是Ubuntu中常用的快照技术,需提前确认系统已使用LVM(可通过sudo lvscan查看逻辑卷)。

1. 创建快照

使用lvcreate命令创建快照,需指定快照名称、大小及关联的逻辑卷:

sudo lvcreate -s -L 10G -n my_snapshot /dev/mapper/ubuntu--vg-root
  • -s:表示创建快照;
  • -L 10G:快照大小(需根据逻辑卷数据变化量预留,建议至少10%的源卷容量);
  • -n my_snapshot:快照名称(自定义);
  • /dev/mapper/ubuntu--vg-root:源逻辑卷路径(通过sudo lvdisplay查看)。

2. 挂载快照

创建后,可将快照挂载到指定目录访问:

sudo mkdir /mnt/snapshot  # 创建挂载点
sudo mount /dev/mapper/ubuntu--vg-my_snapshot /mnt/snapshot  # 挂载

挂载后,可通过/mnt/snapshot查看快照中的文件(与源卷一致)。

3. 恢复数据

若需恢复数据,可直接将快照中的文件复制到源卷(需卸载快照):

sudo umount /mnt/snapshot  # 卸载快照
sudo cp -r /mnt/snapshot/home/user/Documents /home/user/  # 示例:恢复Documents目录

或直接覆盖源卷(需谨慎,可能导致数据丢失):

sudo mount /dev/mapper/ubuntu--vg-my_snapshot /mnt/snapshot
sudo rsync -aAXv /mnt/snapshot/ /  # 同步快照到根目录

4. 删除快照

不再需要时,卸载并删除快照以释放空间:

sudo umount /mnt/snapshot  # 卸载
sudo lvremove /dev/mapper/ubuntu--vg-my_snapshot  # 删除快照

删除前需确认快照未被使用。

二、Btrfs快照(适用于Btrfs文件系统)

Btrfs原生支持快照功能,需确认文件系统为Btrfs(可通过df -T查看文件系统类型)。

1. 创建快照

使用btrfs subvolume snapshot命令创建,需指定源子卷和目标快照路径:

sudo btrfs subvolume snapshot /source/subvolume /destination/snapshot

示例:为/home子卷创建快照:

sudo btrfs subvolume snapshot /home /home/snapshot_20250927

该命令会快速生成快照(几乎无IO延迟)。

2. 恢复快照

(1)只读恢复(查看快照内容)

sudo mount -o ro /dev/sdXY /mnt/snapshot  # 挂载为只读(避免误修改)

(2)写入恢复(替换源数据)

sudo mount -o rw /dev/sdXY /mnt/snapshot  # 挂载为可写
sudo rsync -aAXv /mnt/snapshot/ /home/  # 同步快照到源目录

或直接覆盖子卷:

sudo btrfs subvolume delete /home  # 删除原子卷
sudo mv /home/snapshot_20250927 /home  # 将快照重命名为原子卷

3. 删除快照

sudo btrfs subvolume delete /destination/snapshot

删除快照不会影响源数据。

三、Timeshift快照(适用于系统级备份)

Timeshift是基于rsync或Btrfs的图形化系统快照工具,适合新手使用(支持自动计划、增量备份)。

1. 安装Timeshift

sudo apt update
sudo apt install timeshift

2. 配置快照

首次运行时,需完成以下设置:

  • 选择快照类型:推荐RSYNC(兼容性好)或BTRFS(更高效,需Btrfs文件系统);
  • 选择存储位置:建议选择单独分区(如外接U盘、第二块硬盘),避免占用系统盘空间;
  • 设置快照计划:可选择每日、每周自动创建快照(可选);
  • 排除目录:排除/tmp/cache等临时目录,减少快照大小。

3. 创建手动快照

打开Timeshift,点击顶部菜单栏的“创建”按钮,输入快照描述(如“Pre-Update Backup”),等待完成即可。

4. 恢复快照

  • 打开Timeshift,选择左侧“恢复”标签;
  • 选择需恢复的快照(可通过时间、描述筛选);
  • 点击“恢复”按钮,选择恢复目标(默认为根目录/);
  • 确认后,Timeshift会自动同步快照到系统(恢复过程需重启计算机)。

注意事项

  • 快照大小:LVM快照需预留足够空间(建议10%-20%的源卷容量),当快照空间耗尽时,快照会失效;Btrfs快照采用写时复制(CoW)机制,空间占用随数据变化增长。
  • 系统状态:创建快照前,建议关闭正在运行的应用程序,避免数据不一致(尤其是数据库、邮件服务等)。
  • 定期清理:删除过期快照(如超过30天的备份),释放存储空间。
  • 测试恢复:定期测试快照恢复流程,确保备份可用(避免关键时刻无法恢复)。

0