Derzeit Dinge auf dem Laufenden über meine Raspberry Pi aufstehen, habe ich zu Art in sudo apt-get update
und sudo apt-get upgrade
. Gibt es eine Möglichkeit, dies automatisch einzurichten? Ich leite Raspbian Jessie.
Derzeit Dinge auf dem Laufenden über meine Raspberry Pi aufstehen, habe ich zu Art in sudo apt-get update
und sudo apt-get upgrade
. Gibt es eine Möglichkeit, dies automatisch einzurichten? Ich leite Raspbian Jessie.
Antworten:
Anstelle eines manuellen Cron können Sie auch installieren. Dies unattended-upgrades
ist hilfreich, um sicherzustellen, dass die neuesten Kernel installiert sind. Es ist vor allem für die Sicherheit ausgelegt.
https://wiki.debian.org/UnattendedUpgrades
apt-get install unattended-upgrades
Es gibt einige Bits, die angepasst / konfiguriert werden können, aber die Standardeinstellung ist in Ordnung.
50unattended-upgrades
aufgelistet, "origin=Debian,codename=${distro_codename},label=Debian-Security";
und die relevanten Pakete werden anscheinend korrekt gefunden. Natürlich ignoriert es viele von ihnen. Ich habe keine weißen oder schwarzen Listen erstellt.
50unattended-upgrades
ist in der Tat dumm und muss geändert werden, damit dies auf Raspian funktioniert. Es gibt keine Raspian-Security
. Sicherheitsupdates sind nicht gekennzeichnet. Es ist wichtig, sowohl "origin=Raspbian,codename=${distro_codename},label=Raspbian";
als auch "origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation";
zu/etc/apt/apt.conf.d/50unattended-upgrades
Geben Sie in einem Terminal Folgendes ein:
sudo su
So greifen Sie auf eine Eingabeaufforderung auf Stammebene zu Dann renne:
crontab -e
Um mit der Bearbeitung Ihrer Crontab zu beginnen, wird eine Tabelle mit Aufgaben erstellt, die zu einem bestimmten Zeitpunkt automatisch ausgeführt werden. Es wird in Ihrem bevorzugten Texteditor geöffnet. Ändern Sie es, um die folgenden Zeilen einzuschließen:
0 7 * * 1 apt update && apt upgrade -y
So aktualisieren und aktualisieren Sie Ihre Apps jeden Montag um 07:00 Uhr. Lesen Sie in crontab nach, wie Sie sich an Ihre Vorlieben anpassen können.
&&
da sie verwandt sind und es keinen Grund gibt, ein Upgrade durchzuführen, wenn das Update fehlschlägt.
0
Mitteln Sonntag aber in Ihrem Code haben Sie setzen 1
so würde der Befehl am Montag ausgeführt wird, nicht Sonntag
dist-upgrade
ist besser als upgrade
, Sie werden nur mit kaputten Abhängigkeiten enden upgrade
. Sie kommen auch nicht an Updates vorbei, für die Dialogbestätigungen erforderlich sind. @ tedder42 wies auf die von Debian bevorzugte Methode (mit unattended-upgrades
) hin.
sudo
geben; Sie haben mit zum root
Konto gewechselt su
. Die crontab des Superuser wird mit Superuser-Berechtigungen ausgeführt.
Sie können cron-apt installieren und konfigurieren. Installieren Sie es wie folgt:
apt-get install cron-apt
Die Hauptkonfigurationsdatei ist / etc / cron-apt / config
Eine Sache, die ich zu meiner Konfiguration hinzufüge, ist:
MAILON="always"
Dadurch wird bei jeder Ausführung eine E-Mail gesendet, nicht nur, wenn ein Fehler auftritt.
Beachten Sie, dass das Standard-Setup die Updates nicht automatisch installiert (es gibt einige gute Gründe, dies nicht zu tun), Sie können es jedoch dafür konfigurieren. Ein Vorteil dieses Programms gegenüber einer einfachen Cron-Lösung besteht darin, dass Sie steuern können, was installiert wird (nur neue Pakete herunterladen, Sicherheitsupdates installieren oder alle Updates installieren).
Bearbeiten Sie zum Festlegen der Ausführungszeit die Datei /etc/cron.d/cron-apt.
Weitere Informationen und Konfigurationsoptionen finden Sie hier
Das Paket enthält eine sehr gute Dokumentation, es ist jedoch gzippt. So extrahieren Sie die Datei:
In der Standardkonfiguration unattended-upgrades
ist Raspbian Buster defekt. Es werden keine wichtigen Updates für den Kernel und andere Software installiert. Ihre Möglichkeiten sind:
Empfohlene Option:
sudo apt install unattended-upgrades
echo 'Unattended-Upgrade::Origins-Pattern {
// Fix missing Rasbian sources.
"origin=Debian,codename=${distro_codename},label=Debian";
"origin=Debian,codename=${distro_codename},label=Debian-Security";
"origin=Raspbian,codename=${distro_codename},label=Raspbian";
"origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation";
};' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-raspbian
Für schnellere Sicherheitsupdates (aber weniger Stabilität, da die Pakete nicht für rasbian genehmigt wurden) können Sie apt debian-security-Pakete hinzufügen:
echo 'deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free' | sudo tee /etc/apt/sources.list.d/debian-security.list
Sie müssen wahrscheinlich neue apt-Schlüssel für das Debian-Repository installieren .
Andere Optionen:
Arbeiten Sie mit cron-apt daran herum:
sudo apt install cron-apt
Andere Möglichkeiten, dies zu umgehen.
Es wird empfohlen, unbeaufsichtigte Updates zu verwenden und das Paket zu reparieren, da es für diesen Zweck am besten geeignet ist. Cron-apt ist Ihre zweitbeste Option, da es auch für einen ähnlichen Zweck entwickelt wurde. Ich bin mir auch nicht sicher, ob Ihr System nach einem Kernel-Update automatisch neu gestartet werden kann. Unbeaufsichtigt-Upgrades haben normalerweise diese Option, aber ich bin mir nicht sicher, ob es mit dem oben genannten Fix funktioniert.
/var/log/unattended-upgrades/unattended-upgrades.log
gemeldete Datei hat imAllowed origins are: []
Grunde genommen keine Aktualisierungen/etc/apt/apt.conf.d/50unattended-upgrades
"origin=Raspbian,codename=${distro_codename},label=Raspbian";