Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Wie bei jedem Betriebssystem, sollten auch bei Ubuntu regelmäßig Updates installiert werden. Dabei handelt es sich um Fehlerkorrekturen, welche die Stabilität des Systems verbessern und insbesondere potentielle- oder erwiesene Sicherheitslücken schließen.
Die Updates spielen jedoch keine neuen Versionen eines Programms ein. Dies ergründet sich in der Politik von Ubuntu, welche besagt, dass nach der Veröffentlichung einer Ubuntu-Version keine neuen Programmversionen aufgenommen werden. Dadurch soll gewährleistet werden, dass neue Pakete die vorhandenen Abhängigkeiten nicht zerstören oder zu neuen Programmfehlern führen. Sicherheitsrelevante, oder die Stabilität deutlich erhöhende Änderungen, werden jedoch meist zurückportiert, so dass die in den Ubuntu-Quellen vorhandenen Versionen auch von Neuerungen profitieren.
Auf diesem Wege wird die Ubuntu-Installation immer auf dem aktuellen Stand gehalten, was bei LTS-Versionen bedeutet, dass das eigene System identisch zu nachträglich veröffentlichten Revisionsversion (.x) ist - wenn man immer alle Updates eingespielt hat. Es ist daher nicht notwendig, diese neue Version eigenständig herunterzuladen und erneut installieren, es sei denn, der Ubuntu-Rechner hat keine oder nur eine eingeschränkte Verbindung zum Internet. In so einem Fall empfiehlt sich ein Update mittels einer aktuellen Ubuntu-Alternate-CD oder -DVD (siehe Downloads).
Wer ständig mit dem Internet verbunden ist, wird automatisch über wichtige Sicherheitsupdates informiert, über andere Updates wird spätestens wöchentlich informiert. Standardmäßig wird jeden Tag automatisch nach neuen Updates gesucht.
Die Aktualisierungsverwaltung listet alle verfügbaren Updates auf. Die Schaltfläche "Prüfen" liest dabei die Paketquellen noch einmal neu ein, so dass die Liste an verfügbaren Paketen in jeden Fall auf dem neusten Stand ist. Über die Dropdownbox "Beschreibung der Aktualisierung" lassen sich Informationen zu jedem der aktualisierten Pakete einblenden. Ein Klick auf "Aktualisierungen Installieren" sorgt nun dafür, dass die markierten Updates heruntergeladen und installiert werden. Danach kann man den Dialog schließen.
Möchte man die Aktualisierungsverwaltung manuell starten, so geschieht dies über "System -> Systemverwaltung -> Aktualisierungsverwaltung" (GNOME) bzw. "Applications -> System -> Aktualisierungsverwaltung" (Xfce). Das Programmpaket heißt update-notifier.
Seit Jaunty Jackalope überprüft der Update Notifier, bei bestehender Internetverbindung, ob Sicherheitsupdates zur Verfügung stehen. Falls dies so ist, erscheint ein Symbol im Systemabschnitt der Kontrollleiste. Ein Klick auf das Symbol startet die Softwareverwaltung KDE, womit jene Updates installiert werden können. (mehr)
Mit wenigen Klicks kann veranlasst werden, dass Updates automatisch heruntergeladen- und installiert werden. So kann man administrativen Aufwand sparen.
Hier gibt es einen Dialog, in dem sich zahlreiche Einstellungen rund um die Paketverwaltung finden. Geöffnet wird er unter
"System -> Systemverwaltung -> Software-Quellen"
oder in der "Aktualisierungsverwaltung", unten links über den Button "Einstellungen"
Im Reiter "Updates" bzw. "Aktualisierungen" findet sich die Option "Sicherheitsaktualisierungen ohne Bestätigung installieren". Ist diese aktiviert, werden Sicherheitsupdates automatisch installiert.
Seit Kubuntu 7.04 Feisty Fawn ist es auch über den Adept Manager möglich, Sicherheitsupdates automatisch installieren zu lassen. Ab Kubuntu 9.04 Jaunty Jackalope wird dies in der Softwareverwaltung KDE konfiguriert. Das in älteren Versionen verwendete Adept bietet diese Möglichkeit nicht, hier musste man auf das Autoupdate von aptitude zurückgreifen. Adept zeigte dann nur die verfügbaren Nicht-Sicherheitsupdates an.
Hier muss ein Cronjob eingesetzt werden, der in den gewünschten Zeitabständen (zumindest sicherheitsrelevante) Aktualisierungen aufspielt. Cronjobs führen Skripte aus, deshalb muss irgendwo ein Skript angelegt werden, das die Sicherheitsupdates durchführt. Dieses Skript muss dann z.B. in /etc/cron.daily abgelegt oder von dort verlinkt werden. Die Datei muss ausführbar sein.
Hier ein Vorschlag für ein solches Skript:
#! /bin/sh
eval `cat /etc/lsb-release | grep "DISTRIB_CODENAME="`
echo "**************" >> /var/log/apt-security-updates
date >> /var/log/apt-security-updates
aptitude update >> /var/log/apt-security-updates
aptitude safe-upgrade -o Aptitude::Delete-Unused=false --assume-yes --target-release ${DISTRIB_CODENAME}-security >> /var/log/apt-security-updates
echo "Security updates (if any) installed"Zur Erklärung: Zuerst wird die aktuell installierte Distribution ausgelesen. Dann wird eine Trennlinie in die Log geschrieben, in die nächste Zeile dann das jeweilige Datum. Der update-Befehl holt sich dann die Liste der verfügbaren Anwendungen und Aktualisierungen. Der safe-upgrade-Befehl installiert alle Aktualisierungen, die aus dem Security-Repository stammen. Die Ausgabe der Aktualisierung wird dabei in die Log geschrieben. Es werden jedoch nur Aktualisierungen vorgenommen, die nicht die Installation oder Deinstallation eines Pakets zur Folge haben. Das wird erst mit einem full-upgrade erledigt.
Des Weiteren kann cron-apt verwendet werden, welches ebenfalls automatische Updates ermöglicht.
Eine Alternative ohne Crobjobs kann über rc.local erfolgen, womit bei jedem Systemstart ein Update-Skript gestartet werden kann. Ein solches Skript könnte beispielsweise so aussehen:
#! /bin/bash
#
# provide automatic updates
#
LOGFILE="/var/log/auto_update.log"
DELAY=10 # minutes
let delays=$DELAY*60
# initialize first run
if [ ! -f $LOGFILE ]; then
let "i=$(date +%Y%m%d)-1"
echo $i > $LOGFILE
fi
# check for last update
if [ -r $LOGFILE ] && [ "$(date +%Y%m%d)" -gt "$(cat $LOGFILE)" ]; then
# wait
sleep $delays
# test internet connectivity
WGET="/usr/bin/wget"
$WGET -q --tries=10 --timeout=5 http://www.ubuntu.com -O /tmp/index.update &> /dev/null
if [ -s /tmp/index.update ];then
# execute update
aptitude update -o quiet=2
aptitude -y dist-upgrade
date +%Y%m%d > $LOGFILE
fi
fi
Das Skript prüft zu Anfang zunächst, ob es am Ausführungstag schon mal gelaufen ist (LOGFILE). Das Update wird gegebenenfalls 10 Minuten nach dem Systemstart begonnen. Kurz vorher wird aber noch getestet, ob überhaupt eine Internetverbindung vorhanden ist. Statt aptitude kann man natürlich auch apt-get verwenden. Heruntergeladen und installiert werden übrigens alle Aktualisierungen, nicht nur die Security-Updates.
Wenn das Skript nicht über einen Cronjob gestartet wird, läuft es natürlich auch nur einmal nach dem Rechnerstart. Diese Vorgehensweise ist also eher für Clients geeignet, die mindestens einmal am Tag neu gestartet werden - z.B. Laptops. Allerdings lässt sich das selbe Ergebnis auch über die Einstellungen in der Aktualisierungsverwaltung verwirklichen, ("System -> Systemverwaltung -> Aktualisierungsverwaltung -> Einstellungen -> Aktualisierungen"), wo neben anderen Vorgaben z.B. auch eine tägliche Überprüfung und automatische Installation der sicherheitsrelevanten Aktualisierungen festgelegt werden kann.
Diese Revision wurde am 10. Mai 2012 19:36 von Relationalist erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen:
Sicherheit, Paketverwaltung, System, Einsteiger, Aktualisierung
2004 – 2012 ubuntuusers.de • Einige Rechte vorbehalten