如何在登录提示之前获取启动日志消息中的时间戳?

时间:2013-08-25 05:34:06

标签: linux linux-kernel embedded embedded-linux boot

如何在bootlog中获取时间戳,如下所示?

[Tue Mar 19 13:46:28.140 2013] U-Boot 1.4.0XXXXXX (Mar 04 2013 - 08:41:02)MPC83XX  
[Tue Mar 19 13:46:28.156 2013]  
[Tue Mar 19 13:46:28.156 2013] Reset Status:  
[Tue Mar 19 13:46:28.156 2013]   
[Tue Mar 19 13:46:28.156 2013] CPU:   e300c3, MPC8308, Rev: 1.0 at 333.333 MHz, CSB:     133.333 MHz  
[Tue Mar 19 13:46:28.187 2013] Board: XXXXX  
[Tue Mar 19 13:46:28.187 2013] I2C:   ready  
[Tue Mar 19 13:46:28.187 2013] ZDRAM:  256 MiB (DDR2, 32-bit, ECC off, 266.667 MHz)  
[Tue Mar 19 13:46:28.203 2013] ZDRAM Test Started ... DRAM Test Passed.  
[Tue Mar 19 13:46:28.312 2013] ZFlash: 4 MiB  
[Tue Mar 19 13:46:28.312 2013] ZNAND:  512 MiB  
[Tue Mar 19 13:46:28.312 2013] Using default environment  
.  
.  
[Tue Mar 19 13:49:58.640 2013] Jan  1 04:41:28 localhost kernel: device xxxx-1 entered promiscuous mode  
[Tue Mar 19 13:49:58.656 2013] Jan  1 04:41:28 localhost kernel: device xxxx-2 entered promiscuous mode  
[Tue Mar 19 13:49:58.671 2013] Jan  1 04:41:28 localhost kernel: device xxxx-3 entered promiscuous mode  
[Tue Mar 19 13:49:58.687 2013] Jan  1 04:41:28 localhost kernel: device xxxx-4 entered promiscuous mode  
[Tue Mar 19 13:49:58.703 2013] Jan  1 04:41:32 localhost kernel: linux-xxx_port_mode(0, 2)  
[Tue Mar 19 13:49:58.734 2013] Jan  1 04:41:32 localhost kernel: linux-xxx interface [2]  
[Tue Mar 19 13:49:58.750 2013] Jan  1 04:41:48 localhost kernel: xxxx_ioctl(284): xxx.  
[Tue Mar 19 13:49:58.765 2013] root@localhost:/root>   

如何获取启动日志和内核初始化日志,直到登录提示符?
有些专家早先在我的项目中记录了上述产品 有人可以帮助完成这项工作吗?

3 个答案:

答案 0 :(得分:5)

您还可以查看内核配置参数CONFIG_PRINTK_TIME。如果使用此支持编译内核(CONFIG_PRINTK_TIME = y),内核将为其生成的每个内核消息添加准确的时间戳。输出如下所示:

[    2.226780] NET: Registered protocol family 2
[    2.227345] TCP established hash table entries: 8192 (order: 4, 65536 bytes)
祝你好运!!

答案 1 :(得分:1)

您可能想要使用grabserial。它允许您为来自引导系统的串行线路的每条消息加时间戳。您甚至可以重置与字符串匹配的基准时间。

答案 2 :(得分:0)

据我所知,人类可读的日期和时间是由syslog而不是内核生成的。通常情况下,linux内核只会在重启后为您提供时间戳。您可以更改内核源代码并使用getnstimeofday()函数。

相关问题