【问题标题】:Virtualbox image corrupted on vagrant upVirtualbox 图像在 vagrant up 上损坏
【发布时间】:2016-06-16 09:34:31
【问题描述】:

我最近在使用 Vagrant 和 Virtualbox 时遇到了一些问题,我无法确定发生了什么。我正在尝试在此存储库 (https://github.com/sapienza/vagrant-php-box) 中使用 Vagrant 设置,但每次我发出 vagrant up 命令时,我都会收到关于损坏图像的相同回溯错误:

There was an error while executing `VBoxManage`, a CLI used by Vagrant
for controlling VirtualBox. The command and stderr is shown below.

Command: ["import", "/home/dan/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64/20160602.0.0/virtualbox/box.ovf", "--vsys", "0", "--vmname", "ubuntu-cloudimg-trusty-vagrant-amd64_1466024621846_36463", "--vsys", "0", "--unit", "6", "--disk", "/home/dan/VirtualBox VMs/ubuntu-cloudimg-trusty-vagrant-amd64_1466024621846_36463/box-disk1.vmdk"]

Stderr: 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Interpreting /home/dan/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64/20160602.0.0/virtualbox/box.ovf...
OK.
0%...
Progress state: VBOX_E_FILE_ERROR
VBoxManage: error: Appliance import failed
VBoxManage: error: Could not create the imported medium '/home/dan/VirtualBox VMs/ubuntu-cloudimg-trusty-vagrant-amd64_1466024621846_36463/box-disk1.vmdk'.
VBoxManage: error: VMDK: Compressed image is corrupted '/home/dan/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64/20160602.0.0/virtualbox/box-disk1.vmdk' (VERR_ZIP_CORRUPTED)
VBoxManage: error: Details: code VBOX_E_FILE_ERROR (0x80bb0004), component ApplianceWrap, interface IAppliance
VBoxManage: error: Context: "RTEXITCODE handleImportAppliance(HandlerArg*)" at line 877 of file VBoxManageAppliance.cpp

我尝试使用vagrant box remove ubuntu/trusty64 删除损坏的盒子并重新发出vagrant up 命令,盒子似乎已成功下载,但每次导入基本盒子时都失败。

我目前在 Ubuntu 14.04 上使用 Vagrant 1.8.4 和 Virtualbox 5.0.20。任何帮助将不胜感激。

【问题讨论】:

  • 能否删除/home/dan/.vagrant.d/boxes/ubuntu-VAGRANTSLASH-trusty64/home/dan/.vagrant.d/tmp然后重试
  • @FrédéricHenri 我删除了你所说的目录并得到了同样的错误。每当我下载一个新的盒子时,它似乎就会发生,就好像源从一开始就损坏了,或者工具链中的某些东西没有正确完成下载。
  • 这里也有同样的问题。在 Ubuntu 16.04 上从我家中删除 VirtualBox VMs.vagrant.d 并重新启动 vagrant up。这一次它完美地工作了。我认为下载的图像已损坏。

标签: vagrant virtualbox


【解决方案1】:

为了帮助进行故障排除,如何:

  1. 创建一个新目录
  2. 在新目录中,执行vagrant init ubuntu/trusty64
  3. 流浪

机器会启动吗?如果是这样,那么环境应该没问题。

接下来我将再次创建一个新目录,并仅从该 github 存储库中复制相关文件,不包括隐藏目录 .vagrant

理想情况下,.gitignore 应该存在于该 repo 中,不包括 .vagrant 目录。

祝你好运!

【讨论】:

  • 我尝试了你所说的,并且出现了与之前相同的损坏错误。
猜你喜欢
  • 2016-03-30
  • 2014-09-03
  • 1970-01-01
  • 2015-05-14
  • 1970-01-01
  • 2017-01-11
  • 2016-11-09
  • 1970-01-01
  • 2011-01-08
相关资源
最近更新 更多