Laden Sie den Computer bei Bedarf nachts herunter, installieren Sie ihn und starten Sie ihn neu

9

Wie kann ich ein Skript in Ubuntu so schreiben, dass es nachts im Ruhezustand Updates herunterlädt und den Computer neu startet, wenn ein Neustart erforderlich ist?

ubuntunovice
quelle

Antworten:

16

Sie können dies tun, indem Sie das unattended-upgradesPaket installieren . Einzelheiten zur Konfiguration finden Sie in der Dokumentation .

sudo apt install unattended-upgrades

wird es für Sie installieren.

Die Installation sollte ausreichen, um es zu aktivieren. Damit es neu zu starten , wenn nötig, werden Sie eine Konfigurationsdatei hinzufügen müssen, zB /etc/apt/apt.conf.d/52unattended-upgrades-local , enthaltend

Unattended-Upgrade::Automatic-Reboot "yes";

Unter Ubuntu wird standardmäßig jedes Upgrade von den Haupt-Repositorys installiert, unabhängig davon, ob es sicherheitsrelevant ist oder nicht. Sie können bei Bedarf weitere Repositorys konfigurieren, indem Sie den Unattended-Upgrade::Allowed-OriginsKonfigurationsschlüssel überschreiben .

Stephen Kitt
quelle
Wie offiziell ist diese Softwarequelle? Ich würde keinem Benutzer empfehlen, etwas von einer anderen Quelle als dem Software-Repository seines Betriebssystems zu installieren. Vielleicht hat Ubuntu etwas eingebaut (wie CentOS yum-cron)?
Ned64
6
@ Ned64 ist als Paket in Debian und Ubuntu verfügbar und wurde von einem Ubuntu-Entwickler geschrieben. Es huckepack von Haken in aptsich.
Stephen Kitt
Was macht dieses Paket wohl, wenn die Datei /var/run/reboot-requirednie vom System generiert wird? Das heißt, einige Systeme generieren diese Datei, andere nicht.
Seamus
1
@Seamus gibt es Debian- oder Ubuntu-Derivate, die reboot-requirednicht generiert werden?
Stephen Kitt
Das einzige, dessen ich mir sicher bin, ist Raspbian (das Standardbetriebssystem von Raspberry Pi). Nur aus Neugier - Ist Ubuntu nicht ein "Nachwuchs" von Debian?
Seamus