Linux

crontab 以提升的權限重複計劃

  • June 2, 2020

我需要每 15 分鐘執行一次以下命令:

   sudo chmod -R 777 /directory

我正在使用 Ubuntu 伺服器。該指令必須以提升的權限 (root) 執行。

我正在考慮使用 /etc/cron.xxx 目錄。

有人可以指導我如何實現這一目標。

謝謝

如果要每 15 分鐘以 root 身份執行一次命令,請將命令添加到 root 自己的 crontab:

sudo crontab -e

然後,在 crontab 中,添加

*/15 * * * * chmod -R 777 /directory

保存並退出編輯器。

由於 cron 作業是以擁有該作業的使用者身份執行的,因此在這種情況下,rootsudo將不會在 crontab 中使用。

您需要從 root 的 crontab 執行此操作 - 而不是您使用者的 crontab。實際上,您可能可以從您crontab的 . 你可以通過環境變數來做到這一點,但是……

sudo crontab -e

將打開 root 的 crontab 進行編輯。你不需要在你的命令前加上sudo- 就像你一樣輸入它su root;例如:

* * * * * date >> /etc/mydatalog.txt

保存並關閉編輯器。

要驗證這是否有效,請從您的使用者帳戶:

sudo tail -f /etc/mydatalog.txt

在您的情況下,sudoroot 的 crontab 不需要,所以這應該有效:

chmod -R 777 /directory

引用自:https://unix.stackexchange.com/questions/590390