串口调试Linux虚拟机

串口调试Linux虚拟机

背景

       由于修改Linux内核,因此在调试程序时经常会导致Linux虚拟机panic,但看不到有用的panic 信息,故十分有必要看到panic 的现场信息。本文通过串口方式将信息保存下来。以下过程中以在Linux 主机上虚拟一个Linux为例说明。

方式

虚拟机串口

1.    Virtualbox设置

使用Virtualbox 自带的串口工具即可,如下图示:

 

启用串口1,即ttyS0,使用主机管道,可以看作是文件类型的串口,记住这个文件/tmp/serial

 

2.    串口登录

在Linux下使用minicom 登录,主要修改串口名称,修改为unix#/tmp/serial,其他的串口属性在“下节”描述。

此时可以简单测试串口的连通性,测试过程,

1)在HostOS中启动minicom:

sudo minicom

在虚拟机中的终端中执行:

echo is that ok? > /dev/ttyS0

会在HostOS中的minicom中回显对应内容

2)在虚拟机中的终端中执行:

cat /dev/ttyS0

这时主机中的minicom中会出现输入状态,在其中输入的信息也会在虚拟机终端上回显。

 

Linux输出到串口

1.    init进程修改

修改文件/etc/inittab,将关于串口登录的行反注释,即以下行打开:

T0:23:respawn:/sbin/getty-L ttyS0 9600 vt100

修改后可以从串口登录虚拟机。

2.    grub修改

修改文件/etc/default/grub,仅修改三行,如下:

GRUB_CMDLINE_LINUX_DEFAULT="console=tty0console=ttyS0,115200n8"

GRUB_TERMINAL=serial

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

修改后可以将系统启动信息输出到串口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值