Ale*_*anu 7 command-line scripts cron schedule
我对 Linux 有点陌生,我刚刚了解了使用 cron 调度任务的知识。我有一个我一直手动使用的小 shell 脚本:
sudo apt-get check && sudo apt-get update && sudo apt-get upgrade && sudo apt-get autoremove && sudo apt-get autoclean
Run Code Online (Sandbox Code Playgroud)
现在我想使用 cron 来安排它,所以我不会每天手动执行它,但似乎我不能这样做。我想这是因为它需要我的 sudo 密码才能继续?有什么方法可以让我在不自动接受升级等的情况下完成这项工作?
Rav*_*ina 10
最好改用“无人值守升级”。
其目的是使计算机自动保持最新的安全(和其他)更新。[1]
安装:
sudo apt install unattended-upgrades
Run Code Online (Sandbox Code Playgroud)
阅读有关如何使其工作的更多信息:这里。
为了解决您的问题,您可以/etc/crontab使用rootuser编辑文件并运行您的命令,而无需sudo在您自己的“crontab”文件中使用。
nano /etc/crontab
Run Code Online (Sandbox Code Playgroud)
并添加如下一行:
45 21 * * * root apt-get update > /home/ravexina/out.log
Run Code Online (Sandbox Code Playgroud)
它每晚在“21:45”apt-get update使用root用户运行并将输出记录到/home/ravexina/out.log.