Linux 内核日志;“文件描述符”;用于选择?
我使用Linux 内核日志;“文件描述符”;用于选择?,linux,syslog,Linux,Syslog,我使用klogctl(或syslog)通过重复获取内核日志消息的输出来收集它们 我想知道是否有可能获得与内核日志相关联的文件描述符,这样我就可以使用select来查看它(我已经在使用udev\u monitor\u get\u fd查看与udev监视器相关联的其他文件描述符,使用select对所有内容都很方便)您最好配置rsyslogd,将所有消息记录到您选择的fifo(mkfifo)中,然后您可以打开并选择从中读取 对于高于3.5的内核版本,/dev/kmsg包含所有内核日志。 开放时间如下:
klogctl
(或syslog
)通过重复获取内核日志消息的输出来收集它们
我想知道是否有可能获得与内核日志相关联的文件描述符,这样我就可以使用
select
来查看它(我已经在使用udev\u monitor\u get\u fd
查看与udev监视器相关联的其他文件描述符,使用select
对所有内容都很方便)您最好配置rsyslogd,将所有消息记录到您选择的fifo(mkfifo
)中,然后您可以打开并选择从中读取 对于高于3.5的内核版本,/dev/kmsg
包含所有内核日志。
开放时间如下:
int fk=open(“/dev/kmsg”,O_RDONLY | O_NONBLOCK)代码>
通过在该点查找此文件的结尾,只能从程序中的某个特定点获取最新的内核消息:
lseek(fk,0,SEEK_END)代码>
然后,fk
将以通常的方式添加到文件描述符集。感谢您的贡献。我最终发现了/dev/kmsg
,由于该应用程序将在最新内核上运行,因此它将为我提供帮助。