Jak usunąć skrzynkę Vagranta ze statusu globalnego po usunięciu tej skrzynki z systemu plików?

87

//, usunąłem folder zawierający działające pudełko Vagranta, zanim zdałem sobie sprawę, że nadal działa.

Jak mogę go teraz usunąć z Vagrant (status globalny)?

Usunąłem już maszynę wirtualną Virtualbox.

mettjus
źródło
1
To, czy Vagrant VM działa, czy nie, nie ma znaczenia (niedawno się o tym dowiedziałem). Nawet jeśli maszyna wirtualna zostanie zatrzymana, jeśli ręcznie usuniesz jej pliki zamiast uruchomić vagrant destroy, vagrant global-statusnadal będzie zgłaszać problem „nieznany stan hosta”.
John Berberich

Odpowiedzi:

194

Aby odrzucić stare skrzynki wymienione w vagrant global-status(np. Usunąłeś folder zawierający katalog .vagrantz systemu plików), wystarczy uruchomić:

vagrant global-status --prune

Może być konieczne usunięcie maszyny wirtualnej bezpośrednio z interfejsu sterowania dostawcy (VMWare, Virtualbox, ...).

Jon Dowdle
źródło
Stworzyłem problem dla siebie w odwrotnej kolejności: usunąłem pliki maszyny wirtualnej od dostawcy, a także zmieniłem plik Vagrantfile, aby maszyna wirtualna nie była już częścią konfiguracji Vagrant projektu. Ta --pruneopcja działała również w moim scenariuszu. Dzięki!
John Berberich,
U mnie zadziałało tylko z poziomu istniejącej, uruchomionej maszyny wirtualnej z obsługą Vagrant.
Nikos Alexandris
1
Nie działa dla mnie. Musiałem ręcznie edytować ~/.vagrant.d/data/machine-indexi usunąć obraźliwy wpis.
Dalin
To zadziałało w moim przypadku. Jeśli zmienisz nazwę swojego komputera i stary (który już nie działa) nadal jest wyświetlany według statusu globalnego włóczęgi.
Dayron Gallardo
6

Uważam, że nowa nazwa pliku danych globalnych to ~/.vagrant.d.

Możesz więc uruchomić, rm -r ~/.vagrant.daby usunąć wszystkie dane użytkownika, aby rozpocząć od nowa.

Alex Phelps
źródło
0

W moim przypadku: gdzie kuchnia i .kitchen / folder mogą zawierać ukryte pliki włóczęgów utworzone przez

$ kitchen create

Muszę pójść dalej niż niszczenie kuchni lub niszczenie włóczęgów, a nawet niszczenie włóczęgów machineID (od statusu globalnego włóczęgi - który zawiera listę instancji włóczęgów w przestrzeni użytkownika).

W moim przypadku musiałem zdmuchnąć błędne pliki blokady maszyny zawarte w ukrytym katalogu użytkowników .vagrant.

$ rm -r ~/.vagrant/data

A w moim przypadku muszę wykonać sudo powyższe polecenie.

W końcu doszedłem do porządku

$ vagrant global-status

lista

Terry J Fundak
źródło
0

Najpierw należy vagrant global-statuswyświetlić listę wszystkich włóczęgów i ich stanu oraz ids.

wtedy możesz użyć:

 vagrant destroy -f the_id_of_the_machine

po tym, jeśli uruchomisz vagrant global-statusponownie, zobaczysz, że identyfikator podany w vagrant destroy -fpoleceniu został usunięty z listy.

a następnie może być konieczne ponowne uruchomienie komputera Jednak te polecenia nie wpłyną na twoje skrzynki.

Amr Aly
źródło
0

Powyższe polecenia nie usunęły starego pudełka w moim przypadku na komputerze z systemem Windows. .vagrantUsunąłem już folder i pudełko z folderu dostawcy virtualbox, ale pudełko nadal znajdowało się w vagrant global-status list.

Jak wspomniano w komentarzu wydanym przez vagrant uppolecenie:

If you believe this message is in error, please check the process
listing for any "ruby" or "vagrant" processes and kill them. Then
try again.

Więc zabiłem ruby.exez listy procesów i zrobiłem kolejny vagrant global-status --prune.

ulrich
źródło