14

次の操作を行うと、このエラーが発生しますvagrant up

anr@anr-Lenovo-G505s ~ $ vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Box 'base' could not be found. Attempting to find and install...
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Adding box 'base' (v0) for provider: virtualbox
default: Downloading: base
An error occurred while downloading the remote file. The error
message, if any, is reproduced below. Please fix this error and try
again.

Couldn't open file /home/anr/base

これは私が持っているVagrantfileです:

 # -*- mode: ruby -*-
 # vi: set ft=ruby :
 Vagrant.configure('2') do |config|
   config.vm.box      = 'precise32'
   config.vm.box_url  = 'http://files.vagrantup.com/precise32.box'
   config.vm.hostname = 'bootcamp'
   config.ssh.forward_agent = true

config.vm.provider 'vmware_fusion' do |v, override|
  override.vm.box     = 'precise64'
  override.vm.box_url = 'http://files.vagrantup.com/precise64_vmware.box'
end

config.vm.provider 'parallels' do |v, override|
  override.vm.box = 'parallels/ubuntu-12.04'
  override.vm.box_url = 'https://vagrantcloud.com/parallels/ubuntu-12.04'

# Can be running at background, see https://github.com/Parallels/vagrant-parallels/issues/39
v.customize ['set', :id, '--on-window-close', 'keep-running']
end

config.vm.network :forwarded_port, guest: 3000, host: 3000

 config.vm.provision :puppet do |puppet|
   puppet.manifests_path = 'puppet/manifests'
   puppet.module_path    = 'puppet/modules'
 end

終わり

これは私のマシンのセットアップです:

 vagrant -v     Vagrant 1.6.2
 VirtualBox     4.3.2
 Linux Mint 15 Olivia Cinammon
4

7 に答える 7

43

私はこの問題を抱えていました。フォルダーを作成し、次のコマンドを使用していました。

vagrant init
vagrant box add hashicorp/precise64
vagrant up

リモートファイルのダウンロードに関するエラーが発生します。

これを試して:

create a folder,
cd folder
vagrant init hashicorp/precise64 (or whatever vm you want to run)
vagrant up

うまくいけば、これで問題が解決します

于 2014-08-18T22:00:26.773 に答える
4

根本的な問題は、VM マシンのラベルが間違っていることです。「precise32」をターゲットにしていることも認識していますが、ここでは例として「ベース」を使用しています。

次の場所に移動する場合:

~/.vagrant.d/boxes

次のように表示されます。

$ ls -la

drwxr-xr-x 4 some_user スタッフ 136 Oct 22 09:43 ./ drwxr-xr-x 10 some_user スタッフ 340 Oct 22 09:41 ../ drwxr-xr-x 4 some_user スタッフ 136 Jun 29 13:23 hashicorp-VAGRANTSLASH -precise32/

最後の行は、ボックスが 1 つしかなく、それが precision32 ボックスであることを示しています。

ただし、次のようにデフォルトの Vagrant セットアップをセットアップすると仮定します。

$ cd ~/src/vagrant/myvm
$ vagrant init

あなたのために作成されたVagrantファイルの中を見ると:

$ vim Vagrant

次の出力が表示されます。

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
    config.vm.box = "base" 
end

「base」という名前のボックスを探していることに注意してください。だから私がしたことは:

$ cd ~/.vagrant.d/boxes
$ cp -R hashicorp-VAGRANTSLASH-precise32 base
$ cd ~/src/vagrant/myvm
$ vagrant up

「hashicorp-VAGRANTSLASH-precise32」ボックスは重複しているため、戻って削除できます。

もちろん、これを別の方法で実行して名前を変更することもできました

config.vm.box = "base"

ボックスの名前は何でもいいのですが、デフォルトのボックスに基づいて 2 番目の vm を作成したい場合は、同じ問題に直面するため、前者の方が良いことがわかりました。したがって、「vagrant init」のたびに名前を変更するのではなく、ボックスの名前を変更することをお勧めします。

于 2014-10-22T13:53:42.623 に答える
0

git bash で次のコマンドを実行します。

  1. $ vagrant box list
    the following results :
    --$ vagrant box list
    --2017/07/03 00:30:19 launcher: detected 32bit Windows installation
    --ubuntu/trusty64 (virtualbox, 20170619.0.0)
    copy boxname : ubuntu/trusty64
  2. $ vagrant init ubuntu/trusty64
  3. $ vagrant up
于 2017-07-02T17:41:48.980 に答える
-1

git bash で次のコマンドを実行します。

cp /mingw64/bin/curl.exe /c/HashiCorp/Vagrant/embedded/bin/curl.exe

私と一緒に仕事

于 2016-07-29T13:46:08.843 に答える