Ich bin ein bisschen neu in Linux und habe gerade gelernt, Aufgaben mit Cron zu planen. Ich habe dieses kleine Shell-Skript, das ich bisher manuell verwendet habe:
sudo apt-get check && sudo apt-get update && sudo apt-get upgrade && sudo apt-get autoremove && sudo apt-get autoclean
Jetzt möchte ich es mit Cron planen, damit ich es nicht jeden Tag manuell mache, aber es scheint, dass ich das nicht kann. Ich nehme an, es liegt daran, dass mein sudo-Passwort erforderlich ist, um fortzufahren? Gibt es eine Möglichkeit, dies zum Laufen zu bringen, ohne die Upgrades usw. automatisch zu akzeptieren?
Akzeptierte Antwort:
Es ist eine bessere Idee, stattdessen „unbeaufsichtigte Upgrades“ zu verwenden.
Sein Zweck besteht darin, den Computer automatisch mit den neuesten Sicherheits- (und anderen) Updates auf dem neuesten Stand zu halten. [1]
Zum Installieren:
sudo apt install unattended-upgrades
Lesen Sie mehr darüber, wie es funktioniert:hier.
Um Ihre Frage zu beantworten, können Sie /etc/crontab
bearbeiten Datei und führen Sie Ihre Befehle mit root
aus Benutzer ohne die Notwendigkeit, sudo
zu verwenden in Ihrer eigenen „crontab“-Datei.
nano /etc/crontab
und fügen Sie eine Zeile hinzu wie:
45 21 * * * root apt-get update > /home/ravexina/out.log
welches apt-get update
ausführt mit root
Benutzer jeden Abend um „21:45“ und protokolliert die Ausgabe in /home/ravexina/out.log
.