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?

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 .


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.