Bash

如何在 ~/.profile 中使用 sudo 執行命令?

  • April 1, 2018

執行需要sudoin的命令是一種不好的做法~/.profile嗎?

如果真的想這樣做,我怎樣才能讓命令在重新啟動 Ubuntu 時執行?

  • 通過編輯使使用我的使用者帳戶和在我的使用者帳戶下執行的命令sudo不需要密碼/etc/sudoers
  • 在命令中提供我的密碼 in sudo, ~/.profileby echo <passwd> | sudo -S <mycommand>?

我還沒有驗證第一種方法是否有效,因為我還在學習如何去做。

第二種方式似乎引起了嚴重的安全問題,可能是我最不想走的方式。

謝謝。

如果您將命令放在 ~/.profile 中,它將在您每次啟動登錄 shell 時執行。一些終端模擬器允許您為每個終端視窗使用登錄 shell。你想讓你的命令經常執行嗎?

如果您希望允許在不輸入密碼的情況下對該命令使用 sudo,請使用該visudo命令sudo visudo(或者,要使用您最喜歡的編輯器,請使用sudo -E visudo)。

不要直接編輯 /etc/sudoers

像這樣添加一行:

tim  ALL=(ALL) NOPASSWD: /path/to/my/command

該順序在 sudoers 文件中很重要,因此將其添加到此行下方:root ALL=(ALL:ALL) ALL

但是,如果您只希望它在系統啟動時執行,請將其添加到/etc/rc.local您不必擔心 sudo。

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