0

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

printk(KERN_ALERT "Hello World\n");
4

2 回答 2

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 将打印到所有终端。

于 2012-10-19T18:10:36.273 回答
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             */
于 2012-10-19T20:08:45.847 回答