ESC

开始输入,可搜索发票、服务、域名、工单,以及 更多...

搜索... Ctrl+K
虚拟化与母鸡

Proxmox VE 备份与快照教程:vzdump 备份、定时备份任务与 qmrestore 恢复

6 个步骤 9 分钟阅读 3 次阅读 0
本文目录

在独立服务器上用 Proxmox VE 运行虚拟机或出售 VPS,Proxmox VE 备份与快照是必须提前规划的工作:误删文件、系统升级失败、被入侵都需要靠它们恢复。本文介绍 vzdump 的三种备份模式、如何创建定时备份任务、用 qmrestore / pct restore 恢复、快照和备份的区别、Proxmox Backup Server 的作用,以及备份存储空间怎么规划。适用于 Proxmox VE 7.x / 8.x,命令在宿主机 root 下执行。

步骤 1:检查 PVE 存储与备份空间

默认的 local 存储(目录 /var/lib/vz)可以存放备份文件,local-lvm 用于虚拟机磁盘但不能存备份。先看看各存储剩余空间和现有虚拟机:

pvesm status
df -h /var/lib/vz
qm list
pct list
ls -lh /var/lib/vz/dump/
备份和虚拟机放在同一块磁盘上只能防误操作,防不了硬盘故障。重要数据建议另加一块数据盘、挂载 NFS/CIFS,或使用异地的 Proxmox Backup Server 作为备份存储。

步骤 2:用 vzdump 手动备份(snapshot / suspend / stop 三种模式)

vzdump 是 PVE 自带的备份工具,三种模式区别如下:

  • snapshot:虚拟机不停机在线备份,对业务影响最小,最常用;开启 QEMU Guest Agent 后可在备份时冻结文件系统,一致性更好。
  • suspend:主要用于容器,先同步数据再短暂挂起,停顿比 stop 短。
  • stop:先关机再备份,备份完自动开机,一致性最高但会中断服务。
# one VM, live, zstd compressed, to storage "local"
vzdump 100 --mode snapshot --storage local --compress zstd

# one container, suspend mode
vzdump 101 --mode suspend --storage local --compress zstd

# stop mode: most consistent, guest is shut down during backup
vzdump 102 --mode stop --storage local --compress zstd

# all guests on this node, with a note
vzdump --all --mode snapshot --storage local --compress zstd --notes-template '{{guestname}} manual'

推荐使用 zstd 压缩,速度快、压缩率高。备份文件默认保存在 /var/lib/vz/dump/,VM 为 .vma.zst,容器为 .tar.zst。

步骤 3:创建 PVE 定时备份任务并设置保留策略

网页后台进入“数据中心 → 备份 → 添加”即可图形化创建任务:选择节点、存储、计划时间、模式、压缩方式,在“保留”中设置保留份数。也可以用命令创建,效果相同:

# every day 02:30, all guests, keep 7 daily + 4 weekly
pvesh create /cluster/backup --schedule '02:30' --all 1 \
  --storage local --mode snapshot --compress zstd \
  --prune-backups keep-daily=7,keep-weekly=4 --enabled 1

pvesh get /cluster/backup
# preview when a schedule will run
systemd-analyze calendar '02:30'

prune-backups 决定自动清理旧备份的规则,例如 keep-daily=7,keep-weekly=4 表示保留最近 7 天每天一份和最近 4 周每周一份。不设置保留策略,备份会一直累积直到磁盘写满。

步骤 4:用 qmrestore 与 pct restore 恢复备份

恢复时建议优先恢复到一个新的 VM ID,确认数据无误后再切换,避免覆盖掉原机。如果确定要覆盖,需要先停机并加 --force 1:

# list backup files on a storage
pvesm list local --content backup

# restore a VM backup to a NEW id 120 on local-lvm
qmrestore /var/lib/vz/dump/vzdump-qemu-100-2026_10_01-02_30_00.vma.zst 120 --storage local-lvm

# overwrite the existing VM 100 (VM must be stopped)
qm stop 100
qmrestore /var/lib/vz/dump/vzdump-qemu-100-2026_10_01-02_30_00.vma.zst 100 --force 1

# restore a container backup
pct restore 121 /var/lib/vz/dump/vzdump-lxc-101-2026_10_01-02_30_00.tar.zst --storage local-lvm
恢复到新 ID 时,新虚拟机会带着与原机相同的 MAC 与 IP 配置,同时开机会产生 IP 冲突。请先修改网卡或保持原机关机。

步骤 5:PVE 快照的创建与回滚(快照与备份的区别)

快照记录的是某一时刻的磁盘(可选内存)状态,创建和回滚都只需几秒,适合在升级系统、修改配置前“留后路”。但快照和原盘存放在同一存储上,硬盘损坏时一起丢失,而且长期保留会占用越来越多空间、拖慢磁盘性能。所以:快照用于短期回退,备份用于真正的数据保护,两者不能互相替代。

# take a snapshot before an upgrade (add --vmstate 1 to include RAM)
qm snapshot 100 before_upgrade --description "before apt full-upgrade"
qm listsnapshot 100

# roll back if something breaks
qm rollback 100 before_upgrade

# delete it when no longer needed
qm delsnapshot 100 before_upgrade

# containers use pct
pct snapshot 101 before_upgrade
pct rollback 101 before_upgrade

快照要求存储支持,例如 LVM-thin、ZFS、Ceph 或目录存储上的 qcow2 格式;普通 LVM 或 raw 格式不支持快照。

步骤 6:了解 Proxmox Backup Server 与存储空间规划

Proxmox Backup Server(PBS)是官方的专用备份服务器,支持增量备份、数据去重、加密与校验,同一台虚拟机每天备份时只传输变化的数据块,占用空间和备份时间都远小于 vzdump 全量文件。通常把 PBS 部署在另一台服务器或另一个机房,然后在 PVE“数据中心 → 存储 → 添加 → Proxmox Backup Server”中填写地址、数据存储名、用户和指纹即可使用。

# after adding the PBS storage in Datacenter -> Storage, check it
pvesm status
# back up to it like any other storage (named "pbs1" here)
vzdump 100 --mode snapshot --storage pbs1

空间规划可按经验估算:vzdump 全量备份大小约为虚拟机已用数据量 × 压缩比(zstd 通常为 0.4–0.7),乘以保留份数,再预留 20% 余量。例如 10 台已用 20GB 的虚拟机保留 7 份,约需 10 × 20 × 0.6 × 7 ≈ 840GB。使用 PBS 去重后通常会少很多。

常见问题

snapshot 模式备份时提示 “guest-agent not running”?

说明虚拟机选项里启用了 QEMU Guest Agent 但系统内没有运行。在虚拟机内安装并启动 qemu-guest-agent(Debian/Ubuntu 用 apt,CentOS/Rocky/AlmaLinux 用 dnf),或者在 PVE 中关闭该选项。

备份把 local 存储写满了怎么办?

先在备份任务里设置合理的保留策略,再手动删除 /var/lib/vz/dump/ 中不再需要的旧备份(删除前请确认),或把备份目标改到独立的数据盘或 PBS。

只做快照不做备份可以吗?

不建议。快照依赖原存储,硬盘故障、存储损坏或误删虚拟机时快照会一起消失,至少应保留一份存放在其他磁盘或其他服务器的备份。

如仍无法解决,可提交工单联系 IMIDC 7×24 技术支持:https://www.imidc.com/submitticket.php

这篇文章有帮助吗?

相关教程