是否可以运行需要cron命令的数独作业?
比如:
sudo rm somefile
发布于 2012-08-09 18:03:40
我不会说这是个坏主意;简单地说,在crontab中运行sudo
需要将密码存储在明文的某个地方。
下面是通过cron运行管理任务的首选方法。因为您实际上不需要在crontab中编写sudo
,所以如果您正在修改root的crontab。
运行以下命令:
sudo crontab -e
这就打开了root
的S crontab。在这个上下文中运行命令并不需要sudo
,因为它无论如何都会作为root
被调用。
因此,您只需将以下内容附加到root的crontab中。
@hourly rm somefile
现在,如果您绝对希望使用密码不安全并冒风险,下面的命令将从您自己的crontab中运行,并在sudo
提示下自动输入您的密码。
同样,这是不建议的。
在您自己的crontab中,编写如下命令:
@hourly echo "password" | sudo -S rm somefile
这里明显的缺点是,如果有人访问您的crontab,您的密码将是可读的明文。
发布于 2012-08-09 18:02:45
如果您将脚本从一个cron目录(/etc/cron.*
)中放置,那么您不需要使用sudo,因为它正在作为root运行。
如果使用crontab,则需要使用root的crontab。这将运行它作为根,也不需要sudo。
sudo crontab -e
发布于 2012-08-09 18:07:07
在终端中运行以下命令
sudo visudo
在文件末尾添加了以下行:
vidyadhar ALL= NOPASSWD: /bin/rm
在上面的示例中,vidyadhar是用户名,如果您通过vidyadhar运行rm命令,它不会询问密码。
https://askubuntu.com/questions/173924
复制相似问题