
Ich schreibe ein Skript, das jeden Tag ausgeführt werden soll, um zu prüfen, ob es neue Sicherheitsupdates für Ubuntu gibt.
Wenn dies der Fall ist, wird eine Liste dieser Updates erstellt, sie heruntergeladen und anschließend einige Tests ausgeführt.
Der Zweck dieses Skripts besteht darin, sicherzustellen, dass keine Sicherheitsupdates unseren auf Ubuntu laufenden Code beschädigen.
Ich bin kein erfahrener Ubuntu-Benutzer, also verzeihen Sie mir, wenn diese Frage trivial erscheint. Ich habe ziemlich viel recherchiert und Informationen wieDasDas ist vermutlich nützlich für Heimanwender oder ähnliches. AberIch kann keine zusätzlichen Pakete installieren, noch werden hier Lösungen bereitgestellt, wie man es ohne die Installation von Paketen machen kann (ich habe jede Antwort ausprobiert, die nicht das Herunterladen neuer Pakete beinhaltete).
Um meine Frage zu präzisieren:Ich hätte gerne einen Befehl, der alle Sicherheitsupdates abruft(damit ich sie als Liste sehen und in den täglichen Bericht darüber aufnehmen kann, für welche Sicherheitspakete Updates vorliegen)und diese dann auch herunterladen und installieren. Die Tests und dergleichen mache ich (offensichtlich) selbst, ich brauche nur Hilfe, um zu verstehen, welche Befehle ausgeführt werden sollen.
Da diese Befehle von Skripten ausgeführt werden, müssen sie nicht in irgendeiner speziellen Weise für Menschen lesbar sein. Sie können also lang und nichtssagend oder dergleichen sein und bestehen vorzugsweise aus Einzeilern, die keiner Vorkonfiguration bedürfen.
Antwort1
Nach einigen eigenen Recherchen und einigem Herumprobieren habe ich für mich folgende Lösung gefunden:
grep security /etc/apt/sources.list > /tmp/su.list
apt-get -o Dir::Etc::Sourcelist=/tmp/su.list -q update
apt-get -o Dir::Etc::Sourcelist=/tmp/su.list -q upgrade -s 2>&1 | tee /tmp/security_updates_fetch.log
apt-get -o Dir::Etc::Sourcelist=/tmp/su.list -q upgrade -ym --force-yes 2>&1 | tee /tmp/security_updates_install.log
Dadurch wird die Ausgabe in die Standardausgabe vorgenommen und es werden einige Dateien in folgendem Format erstellt /tmp/
:
/tmp/su.list
: Dies ist eine Wegwerfdatei, nachdem der Vorgang abgeschlossen ist.security_updates_fetch.log
: Enthält die Updates, die durchgeführt werden.security_updates_install.log
: Enthält das Protokoll des aktuellen Updates.