Bagaimana cara mengirim acara shutdown ke tamu QEMU (OpenBSD)?

15

Saya menggunakan virtualisasi hanya untuk menginstal OpenBSD ke perangkat keras, dan selama instalasi, pengalihan ke port serial tidak dapat dikonfigurasi, jadi, saya berakhir dengan sistem berjalan, tetapi tidak ada cara untuk login dan melakukan pembersihan menutup.

kvm -m 6144 -smp 4 -drive file=/dev/sda,if=ide \
    -drive file=/dev/sdb,if=scsi -drive file=/dev/sdc,if=scsi \
    -cdrom install52.iso -boot d -nographic

Bagaimana saya bisa mengirim acara shutdown ke sesi ini? AFAIK, Ctrl- a xseperti ditunjukkan di sini atau pkill kvmbelum akan melakukan shutdown bersih.

Atau, bagaimana saya bisa beralih dari -nographicmode ke -cursesmode?

cnst
sumber

Jawaban:

6

Mungkin Ctrl- a cdan system_powerdown?

Seharusnya bekerja, meskipun sepertinya tidak berhasil dalam kasus saya; mungkin OpenBSD dan QEMU ACPI tidak berinteraksi dengan cukup baik.

cnst
sumber
6

libvirttahu cara menangani ini. Jika Anda tidak keberatan menginstal libvirtddan virsh, maka Anda dapat menggunakan:

virsh list

untuk menunjukkan nama tamu. Dan, untuk mematikan tamu dengan nama guest_001, gunakan perintah:

virsh shutdown guest_001
Malaikat Genchev
sumber
5

Pada prinsipnya: Mengirim "system_powerdown" ke monitor QEMU (lihat jawaban lain) akan memberi sinyal OS tamu untuk mati (seperti jika Anda menekan tombol daya). Anda akan perlu mengatur powerdown=YESdi/etc/rc.shutdown untuk benar-benar mematikan mesin sepenuhnya.

Sayangnya dalam pengaturan saya yang sebenarnya di sini, sementara ini bekerja dengan sangat baik untuk mesin perangkat keras nyata, VM membeku saat menerima suatu powerdownperistiwa. (Ini dengan QEMU-KVM 1.1.2 on Debian Wheezy/amd64 and OpenBSD 5.5 amd64 GENERIC.SP) Jadi yang dapat Anda lakukan adalah mengirim a shutdown -h nowatau halt -pke konsol (OpenBSD).

pengguna81513
sumber
0

qemu mengirimkan acara shutdown acpi ke VM, jika tidak bisa mengartikan panggilan ini, ia tidak akan mematikan. Di Linux ini berarti Anda perlu menjalankan acpid, seperti untuk BSD, saya kira sesuatu yang serupa harus ada

dyasny
sumber
Apakah tidak ada opsi untuk mengirim acara shutdown non-ACPI ke OS tamu?
cnst
mendefinisikan "acara shutdown non acpi"
dyasny
1
Ctrl-Alt-Del, APM, dll.
cnst
1
tidak satupun dari ini adalah shutdown. sistem berhenti tanpa poweroff dan reboot tidak mematikan. Mungkin Alt + SysRQ + o akan berfungsi (ini APM, jadi saya ragu VM akan berhenti setelah menghentikan semuanya, tapi ...) kombinasi kuncinya dapat dikirim melalui rutin sendkey monitor-qemu-monitor
dyasny
Bagaimana cara mengirim semua ini dalam sekejap? Saya tidak peduli apa yang dilakukan VM; hanya penting bahwa tamu mendapatkan salah satunya, dan melakukan sinkronisasi dengan jumlah dan barang yang tepat.
cnst