qemu linux串口重定向到终端

本文详细介绍了如何使用qemu启动LinuxGuest,并将输出重定向至虚拟串口,最终连接至终端。适用于FedoraGuest,包含不同发行版和版本的设置方法,包括内核在镜像文件内外的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了省事期间,qemu启动一个Linux Guest,如果只需要这个Guest的终端,不需要图形用户界面,可将Linux Guest的输出重定向至虚拟串口(最终是重定向到终端)。下面以Fedora Guest为例说明用法。不同发行版和版本设置方法可能不同(如grub、grub2就不一样,debian这样的发行版需要配置/etc/inittab)。


重定向虚拟串口到console,有两种用法


内核不在虚拟机镜像文件里面
qemu -kernel arch/i386/boot/bzImage -hda root-2.4.20.img -append "root=/dev/hda console=ttyS0" -nographic

参考:http://blog.csdn.net/defeattroy/article/details/5257323


内核在虚拟机镜像文件里面

先正常启动Guest,如果是grub2,编辑文件 /etc/default/grub 

GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Fedora"
GRUB_DEFAULT=saved
GRUB_CMDLINE_LINUX="rd.md=0 rd.lvm=0 rd.dm=0 SYSFONT=True  KEYTABLE=us rd.luks=0 LANG=en_US.UTF-8 rhgb quiet console=tty0 console=ttyS0,9600n8"


GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1"


生成的/boot/grub2/grub.cfg文件应有如下配置

serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1
terminal_input serial
terminal_output serial
......
	linux	/vmlinuz-3.6.11-rt32 root=UUID=0ff1fb64-4e8d-44bf-87f7-8a2f111159d8 ro rd.md=0 rd.lvm=0 rd.dm=0 SYSFONT=True  KEYTABLE=us rd.luks=0 LANG=en_US.UTF-8 rhgb quiet console=tty0 console=ttyS0,9600n8 


然后用-nographic参数启动qemu

qemu-kvm -enable-kvm -m 1024 -nographic -drive file=/mnt/sdb/vms/testfc/testfc.qcow2,if=virtio,index=0,format=qcow2


qemu提供了几个快捷键,ctrl+a h打开帮助

C-a h    print this help
C-a x    exit emulator
C-a s    save disk data back to file (if -snapshot)
C-a t    toggle console timestamps
C-a b    send break (magic sysrq)
C-a c    switch between console and monitor
C-a C-a  sends C-a


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值