我在测试控制台中启动 Qemu:
% qemu-system-x86_64 -cpu host -boot c -hda fedora.qcow2 -snapshot -m 1024 --enable-kvm -name vm0 -curses -pidfile /var/run/vm0.pid -net none -netdev type=tap,id=net0,script=no,downscript=no,ifname=vhost0,vhost=on -device virtio-net-pci,netdev=net0
它开始启动内核,我看到消息,但是它很快挂起,我在屏幕上看到的只是中间的“1280x1024 图形模式”。我不需要任何图形,所以我什至更新了grub.cfg
访客并将“ rhgb
”替换为“文本”。
也在嘉宾中:
% ls -la /etc/systemd/system/default.target
lrwxrwxrwx. 1 root root 37 Sep 22 17:17 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target
%
我还应该做什么才能以纯文本模式运行它?
答案1
您想要配置访客以将控制台发送到串行端口。
使用 grub:$EDITOR /etc/default/grub
GRUB_TERMINAL="serial console"
GRUB_SERIAL_COMMAND="serial"
GRUB_CMDLINE_LINUX="console=ttyS0 ..."
重新生成 grub 的配置grub-mkconfig
grub2-mkconfig -o /boot/grub2/grub.cfg
正确配置访客后。您将qemu
命令更改为:
qemu-system-x86_64 -cpu host -boot c -hda fedora.qcow2 \
-snapshot -m 1024 --enable-kvm -name vm0 \
-pidfile /var/run/vm0.pid -net none \
-netdev type=tap,id=net0,script=no,downscript=no,ifname=vhost0,vhost=on \
-device virtio-net-pci,netdev=net0 -nographic
它将使用当前终端作为串行控制台和 qemu 监视器控制台。
如果不需要qemu的监控控制台,可以替换-nographic
为-serial stdio