ubuntuusers.de

Hinweis: Dies ist ein statischer Snapshot unseres Wikis vom 25. März 2013 und kann daher nicht bearbeitet werden. Der aktuelle Artikel ist unter wiki.ubuntuusers.de zu finden.

Konfiguration

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

./software-update-available.png 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 unter Ubuntu jedoch keine neuen Versionen eines Programms ein, die neue Funktionen enthalten. Genauer beschrieben wird das Verhalten unter Aktualisierungen.

Benutzung

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. Normalerweise erhält jedoch nur ein Administrator (z.B. der bei der Installation angelegte Benutzer) Benachrichtigungen über Updates. Wie man das ändern kann ist unten beschrieben.

./gnome-update-notifier.png

Ubuntu (GNOME) / Xubuntu (Xfce)

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 jedem 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 das Fenster schließen.

Möchte man die Aktualisierungsverwaltung manuell starten, so geschieht dies über "System → Systemverwaltung → Aktualisierungsverwaltung" (GNOME) bzw. "Applications → System → Aktualisierungsverwaltung" (Xfce). Die zuständigen Pakete sind update-notifier und update-manager.

Wiki/Icons/Oxygen/system-software-update.png

Kubuntu (KDE)

Seit Ubuntu 9.04 ü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 bis Ubuntu 10.04 die Softwareverwaltung KDE, in neueren Versionen die Muon Paketverwaltung.

Konfiguration

Automatische Updates ohne Interaktion

Mit wenigen Klicks kann veranlasst werden, dass Sicherheitsupdates automatisch heruntergeladen und installiert werden. So kann man administrativen Aufwand sparen. Um auch normale Updates (Fehlerkorrekturen) automatisch installieren zu können, folgt man den unten genannten Schritten.

Ubuntu und Kubuntu

Hier gibt es einen Dialog, in dem sich zahlreiche Einstellungen rund um die Paketverwaltung finden. Geöffnet wird er unter

  • Ubuntu:

    • "System → Systemverwaltung → Software-Quellen"

    • oder in der "Aktualisierungsverwaltung", unten links über den Button "Einstellungen"

  • Kubuntu:

    • "Muon Aktualsierungsverwaltung → Einstellungen → Software-Quellen einrichten → Aktualisierungen" (siehe Softwareverwaltung KDE)

Im Reiter "Updates" bzw. "Aktualisierungen" findet sich die Option "Sicherheitsaktualisierungen ohne Bestätigung installieren". In neueren Versionen wurde sie ersetzt und man wählt nun "Wenn Sicherheitsaktualisierungen verfügbar sind: Automatisch herunterladen und installieren". Ist dies aktiviert, werden Sicherheitsupdates von dem Programm unattended-upgrades automatisch installiert.

unattended-upgrades

Die automatische Installation der Updates wird von unattended-upgrades übernommen. Dieses speichert Logdateien im Verzeichnis /var/log/unattended-upgrades/. Sollte versucht werden den Computer herunterzufahren, während unattended-upgrades arbeitet, verzögert der gleichnamige Dienst dies so lange wie nötig, sodass das Herunterfahren länger dauert. Das ist wichtig, damit keine unvollständig installierten oder konfigurierten Pakete hinterlassen werden.

Um unattended-upgrades manuell (ohne GUI) zu aktivieren, muss man die Datei /etc/apt/apt.conf.d/10periodic bearbeiten [4], sodass sie mindestens diese Einträge enthält:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::Unattended-Upgrade "1";

Experten-Info:

Der Parameter für APT::Periodic::Unattended-Upgrade gibt an, in welchem Zeitintervall (in Tagen) die automatische Update-Installation durchgeführt werden soll. 0 bedeutet "deaktiviert". Die Einstellungen werden am Beginn des (Ana)Cron-Jobs /etc/cron.daily/apt beschrieben.

In der Datei /etc/apt/apt.conf.d/50unattended-upgrades befinden sich noch weitere Einstellungen. Wer einen Mailserver und das Programm mailx (bspw. aus dem Paket bsd-mailx) installiert hat, kann sich so z.B. auch nach jedem Update oder nur bei Fehlern per Mail benachrichtigen lassen, alternativ kann auch eine lokale Nachricht an einen Benutzer versendet werden.

Nicht nur Sicherheits-Updates

Sollen nicht nur Sicherheits-Updates automatisch installiert werden, muss die Datei /etc/apt/apt.conf.d/50unattended-upgrades editiert werden. [4]

Dazu müssen die Kommentarzeichen // in folgender Zeile entfernt werden:

Die Zeile vorher:

1
//	"Ubuntu lucid-updates";

Die Zeile nachher:

1
	"Ubuntu lucid-updates";

Seit Ubuntu 10.10 sieht die Zeile so aus:

1
//      "${distro_id} ${distro_codename}-updates";

Nach der Bearbeitung muss sie so aussehen:

1
        "${distro_id} ${distro_codename}-updates";

So werden auch normale Updates automatisch installiert. Wenn gewünscht, kann mit Einträgen nach dem gleichen Schema auch für weitere Archive das automatische Update aktiviert werden.

Probleme

Sollten bei der Installation der Updates Probleme auftreten, werden diese in den Logdateien in /var/log/unattended-upgrades/ vermerkt. Der folgende Befehl sollte dann entsprechende Hinweise liefern:

zgrep -Ev 'DEBUG|INFO' /var/log/unattended-upgrades/unattended-upgrades.log* 

Die Updates müssen z.B. in folgendem Szenario manuell durchgeführt werden:

  1. Ein Paket enthält eine Konfigurationsdatei (üblicherweise unter /etc/).

  2. Diese Datei wird vom Administrator verändert.

  3. Ein Update des Paketes enthält eine neue Version der Konfigurationsdatei, die sich von der ursprünglichen unterscheidet. Es erfolgt eine Benachrichtigung durch dpkg, bei der der Administrator nun selbst entscheiden muss, ob er seine eigene, modifizierte Datei behalten oder die neue Datei aus dem aktualisierten Paket nehmen will. Allerdings lässt sich auch dies automatisieren {en}, indem die Datei /etc/apt/apt.conf.d/local erstellt wird. Soll standardmäßig die jeweilige Konfigurationsdatei nicht verändert werden und dpkg alleine entscheiden, ob eine Nachfrage erscheinen soll, empfiehlt sich folgender Dateiinhalt:

1
2
3
4
Dpkg::Options {
   "--force-confdef";
   "--force-confold";
}

Die Version des Paketbetreuers befindet sich dann unter dem selben Pfad wie die Konfigurationsdatei, nur mit der zusätzlichen Endung .dpkg-dist.

Soll die jeweilige Konfigurationsdatei dagegen automatisch standardmäßig mit der neuen Version des Paketbetreuers ersetzt werden, sollte Folgendes eingetragen werden:

1
2
3
Dpkg::Options {
   "--force-confnew";
}

Die alte Version befindet sich dann unter dem selben Pfad wie die Konfigurationsdatei, nur mit der zusätzlichen Endung .dpkg-old.

Falls ucf {en} verwendet wird, sind die Endungen jeweils .ucf-dist bzw. .ucf-old.

Benachrichtigung kurz nach dem Einloggen erhalten

Hier wird erläutert, wie man Update-Benachrichtigungen ein paar Minuten früher erhalten kann. Vorab eine kurze Beschreibung des Standardverhaltens. Normalerweise läuft der Vorgang zur Update-Prüfung (und Benachrichtigung) so ab:

  1. Nach dem Einschalten des PCs bzw. dem Verbinden des Laptops mit dem Ladegerät wird 5 Minuten gewartet, dann läuft der tägliche Anacron-Job in /etc/cron.daily an. Diese Verzögerung ist in der Datei /etc/anacrontab konfiguriert. Zu den Skripten gehört u.a. auch /etc/cron.daily/apt.

  2. Dieses Skript enthält eine zufällige Zeitverzögerung von bis zu 30 Minuten. Argument dafür: Viele Server, welche Tag und Nacht durchlaufen, würden ohne diese Verzögerung alle gleichzeitig Updates herunterladen und könnten dadurch die Paketserver überlasten.

Um gleich (d.h. ca. 5 Minuten) nach dem Einschalten des PC's oder dem Einstecken des Ladekabels in den Laptop über die anstehenden Updates benachrichtigt zu werden, ändert man die Konfigurationsdatei /etc/apt/apt.conf.d/10periodic in einem Editor mit Root-Rechten [4]. Man muss folgende Zeile einfügen:

1
APT::Periodic::RandomSleep "0";

Hinweis:

Der Wert "0" sorgt dafür, dass 0 Sekunden gewartet wird. Andere Werte sind auch möglich, z.B. "900" für eine Verzögerung von bis zu 15 Minuten.

Die Benachrichtigung selbst

Das Aktualisierungsprogramm wird minimiert gestartet, sollten Updates verfügbar sein.

Unter Ubuntu 10.04 kann man noch das alte Verhalten wiederherstellen, sodass ein Benachrichtigungsicon im Systemtray erscheint. Dies ist in neueren Versionen mit Unity nicht mehr möglich. Dazu benutzt man den Konfigurationseditor und ändert zwei Schlüsselwerte: [3]

gconftool-2 --type bool --set /apps/update-notifier/auto_launch false
gconftool-2 --type int --set /apps/update-notifier/regular_auto_launch_interval 0 

Einfachen Benutzern erlauben, Updates zu installieren

Nicht an jedem Gerät arbeitet der Administrator regelmäßig selbst. Dadurch sind quasi alle verfügbaren Updates auf Eis gelegt, sofern man sie nicht automatisch installieren lässt. Vertraut man jedoch den Benutzern bzw. den (Ubuntu-)Paketquellen, kann man zulassen, dass Updates auch ohne komplette Administrator-Rechte installiert werden können.

Es bietet sich an, eine Gruppe auszusuchen, der man das Installieren von Updates erlauben möchte. Dazu kann z.B. eine neue Gruppe update erstellt [5] und die jeweiligen Benutzer darin aufgenommen werden. Für eine generelle Erlaubnis würde sich auch die Gruppe plugdev eignen, der bei Ubuntu standardmäßig jeder Benutzer angehört.

Ab Ubuntu 11.10

Hier werden die Rechte beim Update nicht einfach per sudo erteilt, sondern über PolicyKit.

Um normalen Nutzern (z.B. Gruppe update) Updaterechte zu geben, muss die Datei /var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla mit Root-Rechten [4] bearbeitet werden. Folgender Abschnitt ist für das Aktualisieren bereits installierter Software zuständig:

[Update already installed software]
Identity=unix-group:admin;unix-group:sudo
Action=org.debian.apt.upgrade-packages
ResultActive=yes

Dieser wird wie folgt ergänzt:

[Update already installed software]
Identity=unix-group:admin;unix-group:sudo;unix-group:update
Action=org.debian.apt.upgrade-packages
ResultActive=yes

Unter Oneiric gibt es noch keine Gruppe sudo, sodass hier keine unix-group:sudo aufgeführt wird. Das Verfahren ist ansonsten jedoch das gleiche. Möchte man es nur einem einzelnen Nutzer statt einer ganzen Gruppe erlauben Updates zu installieren, kann man das mit unix-user:NUTZERNAME statt unix-group:update tun.

Wenige Aktualisierungen wie z.B. die Kernel-Updates installieren neue Pakete. Dies erfordert in jedem Fall die Eingabe eines Administrator-Passwortes. Solche Updates können also auch mit obigen Änderungen nicht von normalen Benutzern installiert werden.

Bis Ubuntu 11.04

Den Mitgliedern der entsprechenden Gruppe werden die Rechte gegeben, sodass die Aktualisierungsverwaltung (update-manager) den zur Updates-Installation benötigten Befehl ausführen darf. Dazu wird in einem Terminal [3] über

sudo visudo 

folgende Zeile in der /etc/sudoers hinzugefügt:

%update ALL=(root) /usr/sbin/synaptic --hide-main-window --non-interactive --parent-window-id* -o Synaptic\:\:closeZvt=true --progress-str Bitte warten Sie\, dieser Vorgang kann etwas Zeit in Anspruch nehmen. --finish-str Die Aktualisierung ist abgeschlossen --set-selections-file /tmp/tmp*

Achtung!

Durch die zwei unvermeidbaren Wildcards ("*") könnte es möglich sein, dass versierte Benutzer auch Dinge über den Befehl hinaus als root ausführen können!

Hinweis:

Für den Umgang mit der /etc/sudoers, siehe auch sudo/Konfiguration.

Benachrichtigung anzeigen

Hinweis:

Funktioniert nicht unter Kubuntu, da es den update-notifier nicht verwendet.

Soll auch automatisch über neue Updates benachrichtigt werden, muss dem update-notifier mitgeteilt werden, dass er auch Benutzer, welche nicht in der Gruppe admin sind, darüber informiert. Hierfür muss er mit einer bestimmten Option gestartet werden. Diese gibt man einfach in der Autostart-Datei mit an. Dazu öffnet man den Starter /etc/xdg/autostart/update-notifier.desktop (Aktualisierungsbenachrichtigung) in einem Editor mit Root-Rechten [4] und ergänzt die Exec=-Zeile:

Exec=update-notifier --force

Bekannte Bugs

Bei einer Installation von Ubuntu 10.04 mit der Alternate-CD und Konfiguration eines echten Rootaccounts wird man bei der Installation mit dem "Debian-Installer" überhaupt nicht über Updates benachrichtigt. Dies ist ein Fehler in der Alternate-CD. Ein Workaround wird in diesem Kommentar von Fehlerbericht 356152 auf Launchpad beschrieben.

ubuntuusers.local › WikiAktualisierungenKonfiguration