我已经在虚拟机上安装了 Ubuntu 16..。我需要将此 Ubuntu 备份到 SD 卡或 USB,然后将其安装在物理机上。我该怎么做?
答案1
以下步骤描述了如何创建虚拟机的可启动备份 ISO。您将拥有 ISO。如果只需要备份。您可以忽略将 ISO 映像传输到新驱动器的参考。
目标驱动器的大小必须至少与源驱动器的大小相同。只要不小于源驱动器的大小,大小无关紧要。如果小于源驱动器的大小,则传输将失败。
以下是所需的步骤:
- 从虚拟机的 HD 创建 ISO 映像
- 将 ISO 复制到物理驱动器
- 修复物理驱动器或分区的完整性
从虚拟机的 HD 创建 ISO 映像
$ VBoxManage clonehd ["source vdi pathname"] ["target iso pathname"] --format RAW
路径名将被替换为类似于以下内容的内容:
源 VDI:“~/VirtualBox VMs/Ubuntu 16.04 LTS” 目标 ISO:“~/isoimages/ubuntu-16.04lts.iso”
仅当路径名中有空格时才需要使用引号。不要包含括号。
现在将该 ISO 映像放入新的目标驱动器(使用上面的示例源和目标):
$ sudo dd if="~/isoimages/ubuntu-16.04lts.iso" of=[/dev/sdc] bs=4M status=progress
上面的命令中/dev/sdc
是您要将 VM 驱动器传输到的新目标驱动器。不要在命令中包含括号。
很重要! 这日命令是低级命令,不会执行正常的保护措施。如果您犯了错误并在非预期驱动器上运行它,它将被覆盖。您将丢失驱动器上的当前数据。因此,请非常小心地使用该of=
命令。
现在运行分区在新的目标驱动器上。使用此功能调整分区大小以适应驱动器大小的差异。
我经常执行这些步骤,为客户端机器进行全新的 Ubuntu 安装的默认安装。
答案2
尝试创建一个档案:
sudo tar -cpzf name.tar.gz /
然后启动实时会话并创建可启动的 ext4 分区、挂载它,然后:
sudo tar -xpzf name.tar.gz -C /target_drive
然后将更改为/etc/fstab
正确的,UUIDs
然后chroot
进入该系统并运行sudo update-grub
,然后回来告诉我它是否有效,因为我没有尝试过......
不要从虚拟盒中删除系统,以防它不起作用......