识别 Linux 上运行的系统日志守护程序的最佳方法是什么?

mwa*_*wak 5 linux bash shell csh sh

我正在编写 Linux shell 脚本(sh、bash 或 csh)来识别正在运行的系统日志守护程序。最好的方法是什么?由于我只考虑基于 RHEL 和 rpm 的分发,因此可以忽略 Debian 及其衍生产品。

gva*_*kov 3

据我所知,syslog-ngrsyslog(默认)是 RHEL 上唯一可用的。您可以探测进程空间,查看当前处于/var/log/syslog打开状态的进程,或者只是检查安装了哪个 syslog 守护进程(不过,可以同时安装它们)。

$ lsof /var/log/messages /var/log/syslog 2>&1 | grep syslog
$ rpm -q rsyslog syslog-ng
$ pgrep -u root syslog | xargs ps -p
Run Code Online (Sandbox Code Playgroud)