如何使用 ps 在 Ubuntu 12.04 上设置自动检查监督(服务监控)?

如何使用 ps 在 Ubuntu 12.04 上设置自动检查监督(服务监控)?

我正在 Ubuntu 12.04 服务器上设置监督。其中一项检查旨在确保某些进程正常运行。

基本上,它运行ps -aux并检查给定的进程是否存在。

不幸的是,在 Ubuntu 上ps只会显示当前用户的进程。我的监管系统当然不会以 root 用户身份运行。

有什么方法可以实现这个吗?

(除了以 root 身份设置 cron 作业,转储ps -aux到临时文件 :D)

编辑

实际上,该问题仅发生在 12.04 机器上(ps -aux在 14.04 上正常运行)。

有什么办法可以修复此问题?服务器将很快升级,但暑假不是升级的最佳时机 :)

答案1

好的,那麼...!

这个“进程沙盒功能”似乎只在 12.04 上出现。

绕过此问题的一种方法是允许预期用户ps以 sudo 身份运行:

编辑/etc/sudoers

accountname ALL = NOPASSWD: /bin/ps

然后使用sudo ps -aux而不是ps -aux

相关内容