linux – printk()不会在/ var / log / messages中打印

前端之家收集整理的这篇文章主要介绍了linux – printk()不会在/ var / log / messages中打印前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我的操作系统Ubuntu 12.04.我写了这个内核模块,我使用insmod和rmmod命令,但/ var / log消息中没有任何内容.我该如何解决这个问题?
/*  
*  hello-1.c - The simplest kernel module.
*/
#include <linux/module.h>   /* Needed by all modules */
#include <linux/kernel.h>   /* Needed for KERN_INFO */

int init_module(void)
{
   printk(KERN_INFO "Hello world 1.\n");

    /* 
    * A non 0 return means init_module Failed; module can't be loaded. 
    */
    return 0;
 }

 void cleanup_module(void)
 {
   printk(KERN_INFO "Goodbye world 1.\n");
 }

解决方法

检查syslog守护进程是否正在运行,因为如果我是正确的,这是将来自内核环/日志消息缓冲区的printk消息复制到/ var / log / messages的进程.使用dmesg实用程序/命令可以看到printk消息,或者消息将在/ var / log / messages中.如果设置了正确的loglevel,则printk消息将立即显示在控制台上,无需使用dmesg或无需检入/ var / log / messages. printk调试消息也可以是/ var / log / syslog的一部分.

猜你在找的Linux相关文章