PVE-备份&还原
在你上一轮担心的“PVE宿主机损坏”场景下,“提前备份 + 迁移到另一台PVE”正是最稳妥的灾备方案。
整个过程并不复杂,本质上就是将第一台机器上的备份文件,搬到第二台机器的对应位置,然后执行恢复。步骤如下:
备份
📋1 创建备份
首先,在你当前正常的PVE上,为需要迁移的虚拟机(以Windows为例)创建一份完整备份。
- 选择虚拟机:在PVE Web界面左侧,选中你的Windows虚拟机。
- 进入备份:点击顶部菜单栏的
备份-> 然后点击右下角的立即备份。 - 配置备份:在弹出的窗口中,确认备份目标存储(如
local),可以为备份任务设置一个容易识别的名称,然后点击备份。 - 等待完成:PVE会在右下角的任务日志窗口中显示进度,直到显示“TASK OK”即代表备份成功。

📦2 导出备份
备份完成后,你需要从PVE宿主机中,将生成的备份文件“取出来”。
- 定位文件:PVE的虚拟机备份文件默认存放在宿主机的
/var/lib/vz/dump/目录下。文件名格式通常是vzdump-qemu-<虚拟机ID>-<日期时间>.vma.zst。 - 导出文件:你可以通过
SCP(如WinSCP、MobaXterm等工具)或SFTP连接你的PVE宿主机IP,导航至/var/lib/vz/dump/目录,将这个.vma.zst备份文件下载到你的本地电脑或一个中间存储上。
还原
🔁3 导入备份
现在,在全新安装好的第二台PVE上进行操作。
连接目标PVE:使用你熟悉的SSH工具连接到新PVE宿主机的IP地址。
上传备份文件:通过SSH的文件传输功能(或再次使用WinSCP等工具),将上一步得到的
.vma.zst备份文件,上传到新PVE宿主机的/var/lib/vz/dump/目录下。确认文件存在:在新PVE的Shell终端中,使用以下命令列出目录内容,确认文件已成功上传:
bash
1
ls -lh /var/lib/vz/dump/
🔄4 恢复备份
这是最后一步,你可以选择用命令行或Web界面来完成。
方法一:使用命令行(推荐)
这种方式最直接。在新PVE的Shell终端中,使用 qmrestore 命令来恢复备份。命令格式如下:
1 | qmrestore /var/lib/vz/dump/<你的备份文件名> <新的虚拟机ID> --storage <目标存储> |
示例:假设你的备份文件是 vzdump-qemu-100-2026_05_17-10_30_00.vma.zst,你想将它恢复成一个ID为 200 的新虚拟机,并存放到名为 local-lvm 的存储上,那么命令就是:
1 | qmrestore /var/lib/vz/dump/vzdump-qemu-100-2026_05_17-10_30_00.vma.zst 200 --storage local-lvm |
等待命令执行完成,你就会在PVE Web界面的左侧看到ID为 200 的虚拟机了。关于恢复时是否需要对新虚拟机的网络MAC地址等信息进行重新配置,可以在恢复时参考命令行说明进行处理。
方法二:通过Web界面操作
如果你更习惯图形界面,也可以直接在新PVE的网页上操作。
刷新存储:点击数据中心(Datacenter)-> 存储(Storage),选中你存放备份的存储(比如local),然后点击内容(Content)选项卡。如果刚才上传的备份文件没有立刻出现,可以点击上方的刷新按钮。
开始恢复:在备份文件列表中找到它,选中,然后点击上方的还原(Restore)按钮。
确认设置:在弹出的窗口中,可以指定一个新的VM ID,选择目标存储,然后点击还原即可。
完成以上步骤后,你的整个Windows虚拟机环境和配置,就等于从旧机器完整地“搬家”到了新机器上。