Tại sao tôi nhận được màn hình đen khi khởi động VM bằng qemu?


9

Khi tôi cố gắng khởi động một máy ảo bằng cách sử dụng:

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

Bỏ qua màn hình đen ngay sau khi cài đặt bắt đầu (trước khi tôi chọn Ngôn ngữ). Tôi đã thử cài đặt nomodesettrong "Tùy chọn khác" nhưng điều này không giải quyết được vấn đề.

Tuy nhiên, sử dụng cùng ISO, tôi có thể khởi động VM bằng Trình quản lý máy ảo. Tôi cần khởi động VM bằng qemu-system-x86_64một trong các dự án của mình.

Xin vui lòng cho tôi biết làm thế nào để giải quyết điều này.


Không phải là một câu trả lời cho câu hỏi, nhưng nếu bạn cảm thấy muốn thay đổi độ phân giải của màn hình, hãy chơi xung quanh với cờ -vga [std|vmware|cirrus|qxl]. Tham khảo man qemu-kvmđể biết thêm chi tiết.
Nehal J Wani

Ở đây tôi mô tả rất chi tiết cài đặt QEMU KVM tốt nhất mà tôi đã đạt đến nay cho Ubuntu: askubuntu.com/questions/884534/...
Ciro Santilli冠状病毒审查六四事件法轮功

Đến đây vì tôi nhận được màn hình đen trong Win10 VM sau khi thay đổi bộ nhớ VM thành 2536MB. Thay đổi nó một lần nữa thành 2048MB đã giải quyết cho tôi. (Sau đó tôi đã giải quyết với 3072 MB).
Marc.2377

Câu trả lời:


9

Theo mặc định qemu-system-x86_64không thi đua , không ảo hóa. Giả lập chậm và tốn nhiều CPU - bạn có thể thấy điều đó bằng cách chạy top, nó sẽ hiển thị CPU của bạn ở mức gần 100%. Tôi vừa khởi động Xubfox 14.04 bằng qemu-system-x86_64hệ thống của mình và mất 10 phút để khởi động máy tính để bàn. Ubuntu thường ẩn thông tin khởi động, đó là lý do tại sao bạn nhìn thấy màn hình đen (hoặc một số tạo tác đồ họa khác gây ra bởi độ phân giải thay đổi của BIOS). Nếu bạn loại bỏ splash quietvà thêm debugvào các tham số kernel, bạn sẽ thấy nó đang làm gì trong thời gian này.

Những gì bạn có thể muốn làm là chạy qemu-system-x86_64 -enable-kvmđể kích hoạt hỗ trợ ảo hóa phần cứng.

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

Từ man qemu-system-x86_64:

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

(Bạn có thể thấy mọi người giới thiệu chương trình kvmtừ gói qemu-kvm. kvmĐây chỉ là tập lệnh bao bọc exec qemu-system-x86_64 -enable-kvm "$@")

KVM sử dụng ảo hóa phần cứng thay vì mô phỏng, và do đó nhanh hơn nhiều. Nó yêu cầu CPU hỗ trợ các phần mở rộng ảo hóa phần cứng (VT-x cho Intel hoặc AMD-V cho AMD), điều mà hầu hết các hệ thống PC hiện đại đều có.

Với ảo hóa, CPU thực sự đang thực thi mã nhị phân thực thi thô từ hệ điều hành khách. Ảo hóa là nhanh, nhưng có giới hạn là hệ điều hành máy chủ và hệ điều hành khách phải tương thích nhị phân. Với mô phỏng, mã nhị phân của HĐH khách được viết lại để chạy trên CPU chủ. Tuy chậm nhưng có một ưu điểm là bạn có thể chạy HĐH khách được biên dịch cho kiến ​​trúc CPU khác (ví dụ: Hình ảnh QEMU cho Debian armel giải thích cách chạy Debian ARM trên PC).

Một tùy chọn phổ biến khác cho ảo hóa là VirtualBox .


kvm chỉ là một gói trên qemu-system-x86_64. Bằng cách nói qemu-system-x86_64chỉ là giả lập, bạn có nghĩa là nói kvm là một trình bao bọc ảo hóa trên mô phỏng được cung cấp bởi qemu-system-x86_64?
việc

@Jobin cảm ơn đã chỉ ra rằng, câu trả lời điều chỉnh cho phù hợp.
Bain
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.