控制台上的linux kprint消息

时间:2012-10-19 10:17:47

标签: linux linux-kernel

为了在控制台上打印此meesage,我使用kill -SIGKILL <pid>命令杀死了klogd并使用klogd -s -c 2重新启动了klogd 我仍然没有在控制台上看到该消息。我在这里想念什么? 提前谢谢。

printk(KERN_ALERT "Hello World\n");

2 个答案:

答案 0 :(得分:2)

您必须确保处于完全终端模式(按Alt + Ctrl + f2或f3)而不是图形模式。

然后检查/ proc / sys / kernel / printk是否具有正确的值

# cat /proc/sys/kernel/printk

4 4 1 7

my current setting are above. You can use echo 8 > /proc/sys/kernel/printk to print everything. for kern_alert 4 is enough.

for testing you can use below from full terminal mode.

#echo "<1>Writing critical printk messages from userspace" >/dev/kmsg

这将打印到终端

http://elinux.org/Debugging_by_printing

kern_alert打印到当前终端,而kern_emerg将打印到所有终端。

答案 1 :(得分:0)

还要查看syslog.conf(或等效文件)中的优先级,该级别告诉您在查看/ var / log / messages时将记录的级别。您的设置很可能......

#define KERN_EMERG   "<0>" /* system is unusable               */        
#define KERN_ALERT   "<1>" /* action must be taken immediately */
#define KERN_CRIT    "<2>" /* critical conditions              */
#define KERN_ERR     "<3>" /* error conditions                 */
#define KERN_WARNING "<4>" /* warning conditions               */
#define KERN_NOTICE  "<5>" /* normal but significant condition */
#define KERN_INFO    "<6>" /* informational                    */
#define KERN_DEBUG   "<7>" /* debug-level messages             */