有没有办法抑制来自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.