如何在没有sudo的情况下运行命令?

r2b*_*2b2 6 linux shell

我想在crontab(在我的本地机器上)添加一行,每隔五分钟运行一次.我的问题是我要使用的命令需要sudo:

sudo indexer --config /usr/local/etc/sphinx.conf --all --rotate
Run Code Online (Sandbox Code Playgroud)

有没有办法在不使用sudo而不提示输入密码的情况下运行命令?

谢谢!

Joc*_*ung 3

把它放在root的crontab中

sudo crontab -e
Run Code Online (Sandbox Code Playgroud)

你可以在那里放

indexer --config /usr/local/etc/sphinx.conf --all --rotate
Run Code Online (Sandbox Code Playgroud)

此 crontab 中的所有命令都将以 root 身份执行。如果您只是crontab -e作为当前用户,它们将在您的用户权限下执行。

  • @r2b2:你不能,这是一个基本的安全问题。为了以“root”身份执行命令,您需要证明您有权这样做。`sudo` 将允许您以 `root` 身份执行命令(通常在提示您输入密码后)*因为您位于 `sudoers` 文件中*。以“root”身份执行命令的另一种方法是使用“su”命令,该命令会提示您输入“root”的密码。`root` 的 crontab 中的命令以 `root` 身份执行,因为它们必须是 `root` 编写的。 (3认同)