![如何停止 auth.log 中使用 sudo 运行的特定脚本的 PAM 消息?](https://linux22.com/image/164567/%E5%A6%82%E4%BD%95%E5%81%9C%E6%AD%A2%20auth.log%20%E4%B8%AD%E4%BD%BF%E7%94%A8%20sudo%20%E8%BF%90%E8%A1%8C%E7%9A%84%E7%89%B9%E5%AE%9A%E8%84%9A%E6%9C%AC%E7%9A%84%20PAM%20%E6%B6%88%E6%81%AF%EF%BC%9F.png)
我已经设置了一个 bash 脚本以sudo
使用以下权限自动运行(从 crontab)这 visudo
解决方案。
由于该脚本需要多次运行,它会污染我的/var/log/auth.log
,所以我禁用了TTY
输出(仅适用于我指定的特定脚本visudo
) 依照指示这解决成功。我所说的TTY
是指这种日志条目:[user] : TTY=unknown ; PWD=... ; USER=root ; COMMAND=...
。
但我留下了以下两行/var/log/auth.log
每个脚本运行的时间(它以sudo
特权运行)。由于它运行了很多次,所以我多次得到这个输出,这很烦人:
Nov 01 00:00:00 1234567 sudo: pam_unix(sudo:session): session opened for user root by (uid=0)
Nov 01 00:00:00 1234567 sudo: pam_unix(sudo:session): session closed for user root
我知道这个问题:如何停止特定用户的 auth.log 中的 sudo PAM 消息?,这似乎允许禁用 PAM 消息每个用户。
但我找不到禁用上述 PAM 消息的解决方案/var/log/auth.log
仅适用于特定脚本。基本上,我正在寻找TTY
与我对输出所做的等效操作visudo
,它从日志记录中剔除仅有的 我指定的具体脚本。
有任何想法吗?
(系统运行的是Ubuntu 18.04 LTS)
答案1
如果脚本是从crontab
一个选项运行的,则可以从根目录crontab
(或系统目录)运行它,这样就sudo
不再需要了。