2013-07-02 12 views
8

Próbowałem uruchomić maszynę Vagrant, ale wystąpiły błędy, ponieważ miałem zainstalowany Vagrant 1.0.1. Następnie odinstalowałem i zainstalowałem Vagrant 1.2.2. Jednak gdy uruchomię włóczęgę, dostaję błąd.Jak zaktualizować vagrant exact32 do nowszej wersji?

Podjęto próbę inicjacji włóczęgi, ale również wystąpił błąd.

$ vagrant init precise32 http://files.vagrantup.com/precise32.box 

`Vagrantfile` already exists in this directory. Remove it before 
running `vagrant init`. 

Jak mogę uaktualnić moje pudełko exact32 do nowej wersji Vagrant?

Odpowiedz

15

Run

vagrant box repackage precise32 virtualbox 
+0

Ostrzeżenie: ta ma efekt uboczny pozostawiając duży plik (rozmiar prawdopodobnie zależy od VM, mam plik 640 meg) o nazwie 'pakiet.box' w twoim bieżącym katalogu roboczym. A jeśli już taki plik miałeś, zostanie on cicho nadpisany (kończę to, znajdując tylko jeden pakiet package.box, mimo przepakowania trzech pudeł z włóczniami). –

0

Pudełka pakowane przy użyciu Vagrant 1.1+ ma dodatkowy plik o nazwie metadata.json jak na docs.

spróbować ręcznie utworzyć plik metadta.json pod ~/.vagrant.d/boxes/precise32/virtualbox z treścią

{"provider": "virtualbox"} 

spróbować ponownie i sprawdzić, czy problem nadal występuje.

Jeśli to nie pomoże, jedynym sposobem, jaki mogę wymyślić, jest usunięcie pudełka i dodanie go ponownie przy użyciu nowej wersji Vagrant. Nie musisz niszczyć skrzynek, nawet jeśli nie pracują już z włóczęgą, nadal możesz je obsługiwać za pomocą interfejsu GUI VBoxManage i VirtualBox.

+0

Musisz również przenieść pozostałe pliki (box-disk1.vmdk box.ovf Vagrantfile) do podkatalogu virtualbox /. –

0

Format struktury katalogów zmiennych zmienił się między tymi wersjami. Dodaje się podkatalog o nazwie virtualbox, a następnie dodajemy do tego plik metadata.json z takimi treściami jak "{" dostawca ":" virtualbox "}".

Oto opis skryptu basha, za pomocą którego można automatycznie wykonać tę czynność i wydrukować zmiany na ekranie.

wget -q -O - https://gist.github.com/xrd/6055536/raw/8398322313a7e8a60ee8f9ad4d6a87d50ee55b8d/gistfile1.txt | bash 

Wyjście jest rzeczywiście runnable odwrócić zmiany, jeśli pragniesz, aby powrócić do tego, co już miałem.

To wszystko jest opisane w blogu, które mogą pomóc:

Upgrading vagrant boxes to 1.2

+0

Dziękujemy za zamieszczenie odpowiedzi! Pamiętaj, że powinieneś opublikować najważniejsze części odpowiedzi tutaj, na tej stronie lub usunąć informacje o Twoim ryzyku [Zobacz FAQ, gdzie mowa jest o odpowiedziach, które są "zaledwie łączem".] (Http: // stackoverflow. com/faq # deletion) Możesz dodać link, jeśli chcesz, ale tylko jako "referencję". Odpowiedź powinna być samodzielna bez potrzeby korzystania z linku. – Taryn

Powiązane problemy