/proc/sys/kernel/printk

通过procfs控制printk打印消息
1. 查看当前printk打印消息的log等级


# cat /proc/sys/kernel/printk
# 7 4 1 7
“7 4 1 7” 分别对应console_loglevel、default_message_loglevel、minimum_c onsole_loglevel、default_console_loglevel,

意味着只有优先级高于KERN_DEBUG(7)的打印消息才能输出到终端

 

2. 改变console_loglevel


# echo 8 4 1 7 > /proc/sys/kernel/printk

输入“8 4 1 7”改变console_loglevel值,使得所有的打印消息都能输出到终端

3. procfs系列节点
// kernel/sysctl.h

static struct ctl_table kern_table[] = {
    ......
#if defined CONFIG_PRINTK
    {
        .procname   = "printk",
        .data       = &console_loglevel,
        .maxlen     = 4*sizeof(int),
        .mode       = 0644,
        .proc_handler   = proc_dointvec,
    },
    {
        .procname   = "printk_ratelimit",
        .data       = &printk_ratelimit_state.interval,
        .maxlen     = sizeof(int),
        .mode       = 0644,
        .proc_handler   = proc_dointvec_jiffies,
    },
    {
        .procname   = "printk_ratelimit_burst",
        .data       = &printk_ratelimit_state.burst,
        .maxlen     = sizeof(int),
        .mode       = 0644,
        .proc_handler   = proc_dointvec,
    },
    {
        .procname   = "printk_delay",
        .data       = &printk_delay_msec,
        .maxlen     = sizeof(int),
        .mode       = 0644,
        .proc_handler   = proc_dointvec_minmax,
        .extra1     = &zero,
        .extra2     = &ten_thousand,
    },
    {
        .procname   = "printk_devkmsg",
        .data       = devkmsg_log_str,
        .maxlen     = DEVKMSG_STR_MAX_SIZE,
        .mode       = 0644,
        .proc_handler   = devkmsg_sysctl_set_loglvl,
    },
    {
        .procname   = "dmesg_restrict",
        .data       = &dmesg_restrict,
        .maxlen     = sizeof(int),
        .mode       = 0644,
        .proc_handler   = proc_dointvec_minmax_sysadmin,
        .extra1     = &zero,
        .extra2     = &one,
    },
    {
        .procname   = "kptr_restrict",
        .data       = &kptr_restrict,
        .maxlen     = sizeof(int),
        .mode       = 0644,
        .proc_handler   = proc_dointvec_minmax_sysadmin,
        .extra1     = &zero,
        .extra2     = &two,
    },
#endif

    ......

    { }
};
 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值