有没有办法抑制来自syslog的一条特定消息?


8

我得到很多

Dec 27 08:35:49 htpc kernel: [ 1552.153797] pciehp 0000:00:1c.5:pcie04: Card not present on Slot(0-2)
Dec 27 08:35:49 htpc kernel: [ 1552.157744] pciehp 0000:00:1c.5:pcie04: Card present on Slot(0-2)

我的系统日志中的消息,大约每秒10条。那只会使syslog无法使用,我能以某种方式摆脱它们吗?

我不知道也不太在意这些消息的出现原因,部分是因为我的主板上没有pcie插槽,部分是因为我所关心的一切都能正常工作。那可能是我在BIOS中禁用的WiFi芯片,但是,我不想打开wifi,我没有使用它。

那么我可以禁止显示这些消息吗?


如果使用gnome日志查看器,则可以添加过滤器以隐藏它们。并没有真正抑制任何事情,它只是GUI的一种解决方法。
— 哈维尔·里维拉

您应该提交一个错误报告,此消息可能会影响其他无法识别它并使其根目录完整的用户。
— 若奥·平托

@JoãoPinto,基于我的谷歌搜索,这似乎或多或少是已知问题,没有真正的解决方案。
— vava 2010年

Answers:


11

从Ubuntu 10.04开始,使用rsyslog而不是普通的syslog,它具有过滤功能。进行如下:

  • 创建gksudo gedit /etc/rsyslog.d/01-blocklist.conf
  • 在其中添加以下行
    :msg,contains,"Card not present on Slot(0-2)" ~
    :msg,contains,"Card present on Slot(0-2)" ~
  • 重新启动或 service rsyslog restart

该解决方案的工作原理如下:

  • 01- 文件名中的一部分会强制rsyslog在加载其他配置之前先加载此配置
  • 文件中的各行会找到包含我们要忽略的文本的任何消息,并立即丢弃这些消息,谢谢抛弃运算符(〜)
  • 可以通过正则表达式进行匹配或忽略大小写,请在匹配时检查[此实用指南](http://www.rsyslog.com/doc/property_replacer.html)

请注意,始终首选以正确的方式解决此类问题。例如,损坏的pciehp不会让您的CPU进入更深的睡眠状态,并且会增加CPU的有效TDP和功耗。但是,由于pciehp已编译为Ubuntu内核,因此如果不编译自己的内核,您几乎无能为力,这是不可取的。


这是一个问题(现在是12.04),这个答案确实阻止了它们出现在syslog中,但是dmesg仍然显示它们。有什么想法吗?
— Nanne 2012年

4

我不确定第一个选项是否有效,但是由于它比第二个要简单得多(肯定可以工作),请尝试。

选项1

编辑/ etc / default / grub,将pciehp.pciehp_poll_time = 10000附加到GRUB_CMDLINE_LINUX_DEFAULT行。

选项2

在没有CONFIG_HOTPLUG_PCI_PCIE的情况下重建内核,有关说明,请检查此论坛上的最新评论:http ://www.evga.com/forums/tm.aspx?m=630487&mpage =1


我不应该同时竞选sudo update-grub第一个选项吗?
— vava 2010年

是的你应该。
— 若奥·平托

没关系,选项1还是不起作用。
— vava 2010年

选项2确实起作用了
— vava 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.