
我已經設定了一個 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
不再需要了。