วิธีการเริ่มและหยุดแขก VirtualBox ผ่านทางบรรทัดคำสั่ง


11

ฉันมี VirtualBox บน Ubuntu 16.04 ในฐานะโฮสต์และแขกด้วย ฉันต้องจัดการกับแขก (เริ่มหยุดเท่านั้น) ผ่านทางบรรทัดคำสั่ง SSH แต่ไม่พบวิธีแก้ปัญหาใด ๆ



มันง่ายกว่าที่ฉันคิด ขออภัยสำหรับ OFF มีเครื่องมือบรรทัดคำสั่งสำหรับ kvm หนึ่งในนั้นคือ "virsh" ในการเริ่ม | หยุด vm เพียงใช้: $ virsh start | shutdown <vmname> (คุณสามารถแสดงรายการโดย $ virsh list --all) คุณสามารถใช้เครื่องมือนี้ใน bash script หรือ crontab เป็นต้น ขอบคุณสำหรับความช่วยเหลืออีกครั้ง
codolom

คำตอบ:


20

ทั้งหมดนี้สามารถทำได้โดยใช้VBoxManage หลังจากคุณสร้างการเชื่อมต่อ ssh:

1. รายการ VMS ของคุณ:

รายการแรกของเครื่องเสมือนที่มีอยู่ของคุณด้วยคำสั่งVBoxManage list vmsฉันแสดงสิ่งนี้ในการตั้งค่าของตัวเอง:

andrew@ilium~$ VBoxManage list vms
"Windows 8" {c4422acd-727b-45a0-9eef-65636bcde44d}
"Windows 10" {a8e262be-a032-4918-9085-63185318a979}
"Trusty Tahr Clean Copy" {c99bcf4b-9fea-4971-b190-425cb0b0cdeb}
"Xenial Xerus Clean Copy" {850122b9-c65f-425b-abb3-ffda68e159c6}
"Precise Pangolin Clean Copy" {169086e6-a3f4-42e7-8a89-63dcb273143f}
"Precise Pangolin Working Copy" {ff8312b6-cfae-4877-aa93-d71036d8882c}
"Xenial Xerus for MPlayer" {44902710-4368-4c06-9d24-3cb55328d31c}
"Xenial Xerus for vlc" {a62ad306-17d9-4ee3-8c1a-e4439c3b0e05}
"Xenial Xerus mingw64" {584d8513-6a16-49c7-b020-d657b93d5552}
"Trusty Tahr Working copy..." {433349e9-52eb-4066-bae7-623592871839}
"Xenial Xerus Working copy..." {dda23e74-cdb5-4c7d-8836-31be4129c02a}
andrew@ilium~$ 

หมายเหตุ: หากคุณไม่แน่ใจว่า VM กำลังใช้งานอยู่จริงคุณสามารถใช้VBoxManage list runningvmsแทน ...

2. เริ่มต้น VM:

VBoxManageคำสั่งและตัวเลือกที่คุณหลังจากการเริ่มต้นเครื่องเสมือนเหล่านี้:

  startvm                   <uuid|vmname>...
                            [--type gui|sdl|headless|separate]

ดังนั้นเพื่อเริ่ม VM "Trusty Tahr Clean Copy" VM ในตัวอย่างของฉันคุณจะใช้:

VBoxManage startvm "Trusty Tahr Clean Copy" --type gui

3. หยุด VM:

เพื่อหยุด VM คุณจะใช้อีกครั้งVBoxManageแต่คราวนี้มีcontrolvmตัวเลือก:

  controlvm                 <uuid|vmname>
                            pause|resume|reset|poweroff|savestate|

และในตัวอย่างของฉันเพื่อปิด VM "Trusty Tahr Clean Copy" VM คำสั่งจะเป็น:

VBoxManage controlvm "Trusty Tahr Clean Copy" savestate

ทั้งหมดนี้ควรจะทำงานได้ดีกับ SSH ผู้ต้องการ GUI หลังจากทั้งหมด :)


ฉันลองคำสั่งเหล่านี้ก่อนถาม VBox จัดการรายการ vms | runningvms | สิ่งอื่น - ผลลัพธ์ว่างเปล่าเป็นไปไม่ได้ vms ถูกสร้างขึ้นบนส่วนหน้าแบบกราฟิกและพวกเขากำลังทำงานอยู่ นี่คือช่วงเวลาที่ฉันขอความช่วยเหลือ
codolom

@codolom Hmmm .... ต้องเป็นการเชื่อมต่อ ssh แล้ว คุณเชื่อมต่อกับคอมพิวเตอร์โฮสต์จากคอมพิวเตอร์เครื่องอื่นผ่าน ssh หรือไม่? ฉันคิดว่าคุณกำลังใช้ commandline ssh ...
andrew.46

@codolom t อยากรู้อยากเห็นฉันทดสอบข้อมูลในคำตอบของฉันไอออนระบบของฉันเองผ่านทาง ssh และมันทำงานได้อย่างสมบูรณ์ `VBoxManage list vms` ให้ข้อผิดพลาดหรือไม่?
andrew.46

ฉันไม่รู้ว่าควรเป็นปัญหา ฉันพยายามแก้ไขด้วยวิธีนี้: stackoverflow.com/questions/5906441/… ฉันเกลียดกล่องข้อความนี้ด้วย Ctrl + Enter :( - ขออภัยสำหรับบรรทัดที่หายไปฉันใช้คำสั่งนี้บนคอนโซล แต่ผลลัพธ์เดียวกัน
codolom

ไม่มีข้อผิดพลาด เอาท์พุทที่ว่างเปล่า
codolom

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.