Mengapa saya mendapatkan layar hitam saat mem-boot VM menggunakan qemu?

9

Ketika saya mencoba mem-boot mesin virtual menggunakan:

qemu-system-x86_64 -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu

Saya mendapatkan layar hitam tepat setelah instalasi dimulai (sebelum saya memilih Bahasa). Saya mencoba pengaturan nomodesetdi "Opsi lain" tetapi ini tidak menyelesaikan masalah.

Namun, menggunakan ISO yang sama, saya bisa mem-boot VM menggunakan Virtual Machine Manager. Saya perlu mem-boot VM menggunakan qemu-system-x86_64untuk salah satu proyek saya.

Tolong beri tahu saya cara mengatasi ini.

Sagar Patni
sumber
Bukan jawaban untuk pertanyaan itu, tetapi jika Anda ingin mengutak-atik resolusi monitor, bermain-main dengan bendera -vga [std|vmware|cirrus|qxl]. Lihat man qemu-kvmuntuk lebih jelasnya.
Nehal J Wani
Di sini saya menjelaskan dengan sangat rinci pengaturan QEMU KVM terbaik yang telah saya capai sejauh ini untuk Ubuntu: askubuntu.com/questions/884534/...
Ciro Santilli 冠状 病毒 审查 六四 六四 事件 事件
Datang ke sini karena saya mendapatkan layar hitam di Win10 VM setelah mengubah memori VM menjadi 2536MB. Mengubahnya kembali ke 2048MB diselesaikan untuk saya. (Saya kemudian puas dengan 3072MB).
Marc.2377

Jawaban:

9

Secara default qemu-system-x86_64tidak meniru , bukan virtualisasi. Emulasi lambat dan CPU intensif - Anda dapat melihatnya dengan menjalankan top, yang akan menampilkan CPU Anda mendekati 100%. Saya baru saja qemu-system-x86_64mem- boot Xubuntu 14.04 menggunakan pada sistem saya, dan butuh 10 menit untuk boot ke desktop. Ubuntu biasanya menyembunyikan informasi boot, itulah sebabnya Anda melihat layar hitam (atau beberapa artefak grafis lainnya yang disebabkan oleh resolusi perubahan BIOS). Jika Anda menghapus splash quietdan menambahkan debugke parameter kernel Anda akan melihat apa yang dilakukannya selama ini.

Apa yang mungkin ingin Anda lakukan adalah menjalankan qemu-system-x86_64 -enable-kvmuntuk mengaktifkan dukungan untuk virtualisasi perangkat keras.

qemu-system-x86_64 -enable-kvm -m 1024 -cdrom /host/iso/ubuntu-13.10-desktop-amd64.iso -name mac -hda ~/ubuntu

Dari man qemu-system-x86_64:

-enable-kvm
       Enable KVM full virtualization support. This option is only available
       if KVM support is enabled when compiling.

(Anda mungkin melihat orang merekomendasikan program kvmdari paket qemu-kvm. kvmHanya skrip pembungkus yang melakukannya exec qemu-system-x86_64 -enable-kvm "$@")

KVM menggunakan virtualisasi perangkat keras daripada simulasi, dan karenanya jauh lebih cepat. Ini membutuhkan CPU yang mendukung ekstensi virtualisasi perangkat keras (VT-x untuk Intel, atau AMD-V untuk AMD), yang dimiliki sebagian besar sistem PC modern.

Dengan virtualisasi, CPU sebenarnya mengeksekusi kode biner yang dapat dieksekusi dari OS guest. Virtualisasi cepat, tetapi memiliki batasan bahwa host OS dan guest OS harus kompatibel dengan biner. Dengan emulasi, kode biner OS tamu ditulis ulang untuk dijalankan pada CPU host. Ini lambat, tetapi memiliki keuntungan bahwa Anda dapat menjalankan OS tamu yang dikompilasi untuk arsitektur CPU yang berbeda (mis. Gambar QEMU untuk Debian armel menjelaskan cara menjalankan Debian ARM pada PC).

Pilihan populer lain untuk virtualisasi adalah VirtualBox .

bain
sumber
kvm hanya penutup saja qemu-system-x86_64. Dengan mengatakan qemu-system-x86_64hanya emulasi, apakah Anda bermaksud mengatakan kvm adalah pembungkus virtualisasi atas emulasi yang disediakan oleh qemu-system-x86_64?
jobin
@Obob terima kasih telah menunjukkannya, jawabnya disesuaikan.
bain