我需要什麼權限才能讓我的使用者從 cron 執行“shutdown -r 5”命令?

我需要什麼權限才能讓我的使用者從 cron 執行“shutdown -r 5”命令?

我有一個在 Linux 上的 /etc/crontab 中運行的 bash 腳本

$ uname -a
Linux mymachine.com 3.4.76-65.111.amzn1.x86_64 #1 SMP Tue Jan 14 21:06:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

bash 腳本包含一行

sudo shutdown -r 5

但是,當 cron 作業運行時(作為名為「myuser」的使用者),機器永遠不會重新啟動,而是在日誌中找到它

[sudo] password for myuser:

我需要做什麼才能讓該用戶能夠從 cron 重新啟動?不能選擇以其他使用者身分執行此腳本。

答案1

您需要一行內容/etc/sudoers如下:

myuser ALL = NOPASSWD:  /sbin/shutdown

NOPASSWD部分告訴sudo我們myuser在提供密碼的情況下執行關閉命令。

要將這樣的行新增到/etc/sudoers,請執行(以 root 身分):

sudoedit /etc/sudoers

sudoedit將在安裝之前掃描文件的更新版本是否有錯誤。因此,這比直接編輯文件更安全。

相關內容