写入“/ var / adm / messages”的进程是什么? 从我收集的内容来看,Syslogd完成了这项工作。我对吗?
我还看到了多个文件,消息,messages.0,messages.1等等。为什么会这样?
还有其他系统进程写入这些文件吗?
非常感谢任何帮助。
答案 0 :(得分:3)
是的,使用syslog框架的进程向syslogd发送消息,syslogd读取/etc/syslog.conf
以确定应根据工具和在何处(或是否)编写消息消息的级别。例如,如果syslog.conf
有条目
user.debug /var/log/mylog
然后所有来自debug
设施(即非系统)进程的级别高于user
(最低级别)的消息流程)将发送至/var/log/mylog
(man syslog.conf
以获取完整说明,包括可能的设施和级别)。
由/var/adm/messages.X
cron作业轮换/var/adm/messages
时创建logadm
个文件(再次参见logadm
和logadm.conf
的手册页)。
注意:这个答案基于Solaris的经验;文件位置和行为可能因其他* NIX风格而异。
答案 1 :(得分:0)
你可以通过dtrace找到自己:
http://dtracebook.com/index.php/File_Systems
Syscall使用文件名写入(2):dtrace -n'scccall :: write:entry { @ [fds [arg0] .fi_pathname] = count(); }“