1. 串口
这个基本就不用说了,只要通过串口线连接目标主机的串口,在本地设置好串口相关参数,就可以捕获内核通过printk打印出来的相关信息了。
2. netconsole
这个大家可以参考内核源码目录中的Documentation/networking/netconsole.txt,简单翻译一下。
介绍: ============= 此模块通过UDP记录kernel printk信息,从而可以在磁盘记录失败和串口不可用的情况下进行调试(debugging)。 此模块可以build-in或者作为一个模块加载。如果作为built-in,netconsole在NIC之后立刻初始化并将尽快的启动特定的接口。然而这并不运行捕获早期的kernel panics,会捕获大多数开机消息。 配置发送者和接收者: ================================== "netconsole"接收string配置参数,格式如下: netconsole=[src-port]@[src-ip]/[<dev>],[tgt-port]@<tgt-ip>/[tgt-macaddr] where src-port source for UDP packets (defaults to 6665) src-ip source IP to use (interface address) dev network interface (eth0) tgt-port port for logging agent (6666) tgt-ip IP address for logging agent tgt-macaddr ethernet MAC address for logging agent (broadcast) 例子: linux netconsole=4444@10.0.0.1/eth1,9353@10.0.0.2/12:34:56:78:9a:bc or insmod netconsole netconsole=@