वर्चुअलबॉक्स में कमांड लाइन का उपयोग करके अतिथि ओएस को सुरक्षित रूप से कैसे बंद करें


70

मेरे पास Ubuntu 10.10 है और VirtualBox 3.2 का उपयोग कर रहा है। अतिथि ओएस के रूप में मेरे पास वर्चुअलबॉक्स में एक और उबंटू है।

मैं होस्ट उबंटू बूट के बाद एक बार निम्नलिखित कमांड का उपयोग करके अतिथि उबंटू शुरू कर रहा हूं:

VBoxHeadless -startvm Ubuntu --vrdp on

फिर मैं इसे ssh या tsclient के साथ एक्सेस कर सकता हूं।

अब मुझे अपने होस्ट Ubuntu को शटडाउन करने के बाद, स्वचालित रूप से अतिथि उबंटू को बंद करना होगा। क्या किसी को कमांड लाइन के साथ अतिथि उबंटू को स्वचालित रूप से बंद करने की कोई सुरक्षित विधि पता है? मुझे पता चला है कि दो तरीके गेस्ट ओएस को बंद कर सकते हैं लेकिन मुझे यकीन नहीं है कि वे सुरक्षित हैं या नहीं। ये हैं:

VBoxManage controlvm Ubuntu acpipowerbutton

या

VBoxManage controlvm Ubuntu poweroff

जवाबों:


57

यदि आप गनोम पावर प्रबंधन वरीयताओं को खोलते हैं, तो आप पावर बटन के समय क्या कार्रवाई कर सकते हैं। यदि आप इसे शट डाउन करने के लिए सेट करते हैं, तो VBoxManage controlvm Ubuntu acpipowerbutton कमांड के साथ वर्चुअल पावर बटन दबाने पर यह इनायत से बंद हो जाएगा ।


16

शट डाउन vm को सुरक्षित रखने के लिए इस कमांड का उपयोग करें:

vboxmanage controlvm Ubuntu poweroff soft

9
क्या आप अपना स्रोत प्रदान कर सकते हैं? मुझे VBox प्रलेखन के अध्याय 8 में इस "नरम" विकल्प पर कुछ भी नहीं मिल रहा है।
rbaleksandar

5
2013 के बाद से बेकार वीएमएस को मारना। शायद इस जवाब को हटा दें? किसी को?
अपदस्थ

11

यदि आप सर्वर बंद होने पर vm को बंद कर रहे हैं, तो आपको vm (s) का इंतजार करना होगा

(इस शेल्स्क्रिप्ट में 'रूट' इनवॉकर है, और 'theuser' 'thevm' का मालिक है)

मुझे पता है कि vms समाप्त हो गया है जब कमांड का आउटपुट VBoxManage list runningvmsएक खाली स्ट्रिंग देता है।

मैं अपनी शेल स्क्रिप्ट में इसका इस्तेमाल करता हूं

...
stop(){
    su -c "VBoxManage controlvm thevm acpipowerbutton" -s /bin/bash theuser
    while [ "`su -c 'VBoxManage list runningvms' -s /bin/bash theuser`" != "" ]
    do
        echo waiting for VMs to shutdown
        sleep 3
    done
}
...

9

ऐसा न करें:

VBoxManage controlvm Ubuntu poweroff

यह वास्तविक कंप्यूटर पर पावर प्लग को खींचने के बराबर है। आप ऐसा नहीं करना चाहते हैं!

एसीपीआई शटडाउन विधि का उपयोग करें (पावर प्रबंधन सेटिंग की जांच करें जैसे कि एगिल सुझाव देता है) या शायद राज्य की विधि ( savestate) को आज़माएं।


1
शायद ऐसा नहीं करना चाहिए ! कमांड से पहले का हिस्सा। मैंने पहली दो पंक्तियाँ पढ़ीं और कमांड चला दी!
nsane

1
@ nisargshah95 मैं आपको इस सूत्र द्वारा दिए गए उदाहरण का उल्लेख कर सकता हूं । हमेशा सभी निर्देशों को पहले पढ़ें और हमेशा इसे चलाने से पहले किसी भी आदेश को समझने का प्रयास करें। विशेष रूप से लिनक्स में सच है।
सैमुअल हैमर

2
मैं समझता हूं, लेकिन सबसे आम मामले में, कमांड पढ़ने के बाद, एक व्यक्ति यह अनुमान
लगाएगा

मैं सहमत हूं @nsane - मैंने एक संपादन का सुझाव दिया है ताकि दूसरों के साथ ऐसा न हो।
एडम के डीन

6

आपको अपने वर्चुअल उबंटू को पॉवरऑफ करना चाहिए जैसे आप अपने असली हार्डवेयर को पॉवरऑफ करते हैं। एक सत्र सत्र से दूर से एक मुद्दे पर:

sudo poweroff

यदि आप मशीन स्टेट (सस्पेंड / हाइबरनेट के समान) को सेव करना चाहते हैं तो @ htorque के उत्तर में दूसरे बिंदु का उपयोग करें ।


-4

मैं आमतौर पर वीएम (लिनक्स) को बंद कर देता $ sudo shutdown -h now हूं, मुझे लगता है कि यह वीएम को समाप्त करने का सबसे अच्छा तरीका है क्योंकि यह शटडाउन (पावरऑफ नहीं) है और लॉगिन उपयोगकर्ताओं को संदेश देने के लिए अनुग्रह समय और (कब्जे में) प्रदान करता है।


1
सवाल मेजबान से अतिथि ओएस को बंद करने से संबंधित है। यदि आप इसे होस्ट मशीन से चलाते हैं, तो यह ... एर ... इच्छित प्रभाव नहीं होगा।
डेव
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.