2013-03-14 10 views
53

मैंने उस निर्देशिका को हटा दिया है जिसमें .vagrant फ़ाइल है। जब मैं एक नया वीएम करता हूं तो यह बंदरगाहों के उपयोग के बारे में शिकायत कर रहा है। तो मैं इसे Vvrant फ़ाइल के बिना वीएम कैसे नष्ट कर सकता हूं?जब मैं .vagrant फ़ाइल हटा देता हूं तो मैं वीएम को कैसे नष्ट करूं?

+0

साझा की गई समस्या एक समस्या है: क्या वास्तव में एक ही गूंगा समस्या थी, तुरंत एक बार फिर से धन्यवाद ... –

उत्तर

86

निम्न वर्चुअलबॉक्स आदेश मदद कर सकते हैं। अगर पॉवरऑफ काम नहीं करता है, तो unregistervm आज़माएं।

$ VBoxManage list runningvms 
$ VBoxManage controlvm <uuid> poweroff 
$ VBoxManage unregistervm <uuid> 

स्रोत: https://support.cloud.engineyard.com/entries/21449637-I-deleted-Vagrantfile-vagrant-and-or-the-app-directory-before-halting-the-VM-Now-ey-local-up-errors-

शैल स्क्रिप्ट को रोकने के लिए चल रहे सभी VMs:

VBoxManage list runningvms | awk '{print $2;}' | xargs -I vmid VBoxManage controlvm vmid poweroff 
+4

ये आदेश निश्चित रूप से वीएम को नष्ट कर देते हैं। लेकिन वे अभी भी "योनि ग्लोबल-स्टेटस" में मशीन के लिए एक प्रविष्टि छोड़ देते हैं। –

+35

@ वाल्कोसिपुली 'योनेंट ग्लोबल-स्टेटस --प्रून' का प्रयास करें। Http://stackoverflow.com/a/24446866/300836 –

+1

देखें मेरे मामले में, मैंने थोड़ी भिन्नता का उपयोग किया: 'VBoxManage सूची vms; VBoxManage को हटा दें; VBoxManage unregistervm ' – N13

29

सबसे आसान करने के लिए सिर्फ VirtualBox के जीयूआई ग्राहक का शुभारंभ और (हटाने संभवतः नीचे बंद के बाद किया जाता है बात) आभासी मशीन। आप वर्चुअल मशीन पर राइट क्लिक कर सकते हैं और इन क्रियाओं को निष्पादित कर सकते हैं।

enter image description here

+4

के साथ करें यदि आप अपने देव बॉक्स में ssh'd हैं या केवल कमांड लाइन से काम नहीं करते हैं। इसके अलावा यदि आप 'alias killvms = "VBoxManage list runningvms | awk' {print \ $ 2;} '| xargs-i vmid vBoxManage controlvm vmid poweroff" आपको केवल लॉन्च करने और जीयूआई की प्रतीक्षा करने के बजाय killvms टाइप करने की आवश्यकता है। – Pickels

+0

मुझे लगता है कि आम तौर पर डेवलपर्स अपनी स्थानीय मशीन पर वाग्रेंट के साथ काम करते हैं और अभी भी पृष्ठभूमि में कहीं भी एक जीयूआई चलाते हैं :) – Gerry

+2

आपकी धारणा गलत थी! लेकिन चूंकि आप मेरे बहुत करीब रहते हैं, इसलिए मैं इसे एक स्लाइड दूंगा। हाय, बस मजाक कर रहे लोगों के लिए यह अभी भी एक अच्छा जवाब है। – Pickels

0

है जिन्हें आप निकालने GUI का उपयोग वीएम और आप अभी भी त्रुटि आ रही है, तो आप "% USERPROFILE% \ VirtualBox VMs" से नामित वी एम को हटाने का प्रयास कर सकते हैं।

function killvms() { 
    VBoxManage list runningvms | awk '{print $2;}' | xargs -I vmid VBoxManage controlvm vmid poweroff 
    VBoxManage list vms | awk '{print $2;}' | xargs -I vmid VBoxManage unregistervm --delete vmid 
} 

अपने ~/.bash_aliases में जोड़कर killvms के माध्यम से अपने खोल में यह कहते हैं: यह मैं

1

निम्नलिखित बैश समारोह poweroff और नष्ट कर वर्तमान उपयोगकर्ता के लिए सभी VMs से संबंधित सभी फ़ाइलों के लिए काम किया।

+1

मेरा दिन धन्यवाद बचाया – Kingalione

संबंधित मुद्दे

 संबंधित मुद्दे