为了在控制台上打印此消息,我使用kill -SIGKILL <pid>
命令杀死了 klogd 并重新启动了 klogd,klogd -s -c 2
但仍然没有在控制台上看到该消息。我在这里想念什么?提前致谢。
printk(KERN_ALERT "Hello World\n");
为了在控制台上打印此消息,我使用kill -SIGKILL <pid>
命令杀死了 klogd 并重新启动了 klogd,klogd -s -c 2
但仍然没有在控制台上看到该消息。我在这里想念什么?提前致谢。
printk(KERN_ALERT "Hello World\n");
您必须确保您处于完整终端模式(按 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 将打印到所有终端。
还要查看您的 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 */