VirtualBox中Linux系统如何备份与恢复
导读:VirtualBox 中 Linux 虚拟机的备份与恢复 一、方法总览与选择建议 快照 Snapshot:适合短期回滚、测试前后快速恢复。操作快、占用空间随差异增长,但不替代长期归档与迁移。 导出/导入 OVF/OVA:适合跨主机迁移、长...
VirtualBox 中 Linux 虚拟机的备份与恢复
一、方法总览与选择建议
- 快照 Snapshot:适合短期回滚、测试前后快速恢复。操作快、占用空间随差异增长,但不替代长期归档与迁移。
- 导出/导入 OVF/OVA:适合跨主机迁移、长期归档与版本管理,可连同配置一起打包,便于共享与备份。
- 整盘克隆或复制磁盘文件:适合同平台快速克隆或替换磁盘,配合 dd/克隆工具使用,注意磁盘 UUID 与注册问题。
- 系统内备份与迁移(tar/rsync/bsdtar):在来宾系统内对文件级做全量/增量备份,灵活、可跨硬件/平台恢复,恢复时需处理引导与分区挂载。
二、方法一 快照 Snapshot(快速回滚)
- 创建快照
- 图形界面:选中虚拟机 → 点击工具栏的快照图标 → 拍摄 → 填写名称与描述。
- 命令行:VBoxManage snapshot “< VM 名称> ” take “< 快照名> ” --description “< 描述> ”
- 恢复快照
- 图形界面:选中虚拟机 → 快照 → 右键目标快照 → 恢复。
- 命令行:VBoxManage snapshot “< VM 名称> ” restore “< 快照名> ”
- 说明
- 快照保存的是虚拟机的运行状态与磁盘差异,适合临时回滚;长期备份建议配合导出或整盘备份。
三、方法二 导出与导入 OVF/OVA(长期归档与迁移)
- 导出为 OVF/OVA
- 图形界面:选中虚拟机 → 文件 → 导出虚拟电脑 → 选择保存位置与格式(OVF/OVA)→ 导出。
- 命令行:VBoxManage export “< VM 名称> ” -o “< 导出路径/文件名.ova> ”
- 导入
- 图形界面:VirtualBox 管理器 → 工具 → 导入虚拟电脑 → 选择 OVF/OVA → 导入。
- 命令行:VBoxManage import “< OVF/OVA 路径> ”
- 适用场景
- 跨主机迁移、版本留存、云端/外置盘长期备份;导入后可在 VirtualBox 中继续调整硬件配置。
四、方法三 整盘克隆与复制磁盘文件(快速克隆/替换磁盘)
- 复制虚拟硬盘文件
- 关闭虚拟机 → 在宿主机复制虚拟硬盘文件(如 .vdi/.vmdk)到备份位置或新主机 → 在新/目标虚拟机设置中添加已有磁盘。
- 克隆磁盘(避免 UUID 冲突)
- VBoxManage clonehd “< 源磁盘> ” “< 目标磁盘> ”
- 迁移带快照的虚拟机
- 需一并迁移快照相关文件,并在目标宿主机用 VBoxManage registervm 或图形界面重新注册;必要时使用 VBoxManage 相关命令处理磁盘 UUID 冲突。
- 适用场景
- 同平台快速克隆、替换系统盘、制作模板机。
五、方法四 系统内备份与迁移(文件级,灵活跨平台)
- 全量备份(来宾系统内)
- 建议关机或在 LiveCD 环境中执行,减少文件变动。
- 使用 tar/bsdtar(bsdtar 对扩展属性保留更完整):
- 示例:sudo bsdtar czf backup.tar.gz --exclude=/proc --exclude=/sys --exclude=/dev --exclude=/mnt --exclude=/media --exclude=/lost+found /
- 增量备份
- rsync 示例:sudo rsync -aAXv --exclude={ “/dev/“,”/proc/”,“/sys/“,”/tmp/”,“/run/“,”/mnt/”,“/media/*”,“/lost+found”} / /path/to/backup/
- 恢复步骤
- 在 LiveCD 中准备分区与文件系统 → 挂载到例如 /mnt → 使用 tar/bsdtar 解包到目标根分区:
- 示例:sudo bsdtar xzf backup.tar.gz -C /mnt
- 处理引导(以 BIOS/MBR 为例):
- mount --bind /dev /mnt/dev & & mount --bind /proc /mnt/proc & & mount --bind /sys /mnt/sys
- chroot /mnt
- grub-install /dev/sda & & update-grub
- exit & & umount /mnt/{ dev,proc,sys}
- 在 LiveCD 中准备分区与文件系统 → 挂载到例如 /mnt → 使用 tar/bsdtar 解包到目标根分区:
- 适用场景
- 跨硬件/平台迁移、精细选择备份内容、节省空间(增量/压缩)。
六、自动化与最佳实践
- 定期备份
- 使用 cron 定时执行备份脚本,例如每日 02:00:
- 0 2 * * * /path/to/backup_script.sh
- 使用 cron 定时执行备份脚本,例如每日 02:00:
- 备份完整性校验
- 定期核对备份文件大小/哈希,并进行恢复演练,确保可用性。
- 一致性建议
- 执行整盘/文件级备份前尽量关闭虚拟机或确保应用处于静默/一致性状态(如数据库冻结)。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: VirtualBox中Linux系统如何备份与恢复
本文地址: https://pptw.com/jishu/752553.html
