Vagrant创建的虚拟机怎么迁移?

发布于 2022-09-11 22:06:42 字数 669 浏览 19 评论 0

起初, 使用 Vagrant 创建的虚拟机, 默认在 {用户名}/VirtualBox VMs/{虚拟机名} 下.
后来, 发现太占空间了, 就将 VirtualBox 的默认虚拟机路径改成到移动硬盘中, 比如: E:\VMs\ .
现在的问题, 我想将之前在 {用户名}/VirtualBox VMs/ 下虚拟机迁移到 E:\VMs\ 下.

请问这该怎么做呢?
感觉应该也有不少童鞋有这样的需求吧.

环境:
win10
Vagrant 2.2.4

== 解决方案 ==
针对 VirtualBox 虚拟机迁移, 以及Vgrant迁移场景. 我写了python脚本, 可以方便的解决.
地址: https://github.com/Nisus-Liu/...
适用场景:

  1. 别处复制过来 VirtualBox 镜像文件, 想要放到当前电脑的 VirtualBox 中复用;
  2. VirtualBox 重装了, 旧的虚拟机信息丢失. 但磁盘文件还在, 想要继续使用;

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

悸初 2022-09-18 22:06:42

目前已找到一个方式:

  1. 将原虚拟机所在的整个目录移动到你想要的位置。

clipboard.png

  1. 打开 {虚拟机名}.vbox-prev 或者 {虚拟机名}.vbox (文本打开). 复制 Machine 节点的uuid属性.

clipboard.png

  1. id的文件替换为粘贴板中的值, 也就是上面虚拟机中的uuid.

clipboard.png

---- 更新 ----

上面说的方式, 是在原有 vagrant 工作目录的数据删除的情况下(.Vgrant/).
如果文件没有删除, 可以尝试将 synced_folders 中的 hostpath 的值修改移动后的虚拟机位置:

{
    "virtualbox": {
        "/vagrant": {
            "__vagrantfile": true,
            "disabled": false,
            "guestpath": "/vagrant",
            "hostpath": "E:/Work/Vagrant/{虚拟机名称}"
        }
    }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文