Wie bekomme ich automatische Upgrades für Ubuntu Server?

8

Ich habe die Dokumentation zum Aktivieren automatischer Upgrades auf Ubuntu-Servern befolgt , aber es wird überhaupt nichts aktualisiert.

Meine /etc/apt/apt.conf.d/50unattended-upgrades sehen fast wie die Standardeinstellungen aus.

// Automatically upgrade packages from these (origin, archive) pairs
Unattended-Upgrade::Allowed-Origins {
        "Ubuntu karmic-security";
        "Ubuntu karmic-updates";
};

// List of packages to not update
Unattended-Upgrade::Package-Blacklist {
//      "vim";
//      "libc6";
//      "libc6-dev";
//      "libc6-i686";
};

// Send email to this address for problems or packages upgrades
// If empty or unset then no email is sent, make sure that you
// have a working mail setup on your system. The package 'mailx'
// must be installed or anything that provides /usr/bin/mail.
Unattended-Upgrade::Mail "[email protected]";


// Automatically reboot *WITHOUT CONFIRMATION* if a 
// the file /var/run/reboot-required is found after the upgrade 
//Unattended-Upgrade::Automatic-Reboot "false";

Das Verzeichnis / var / log / unbeaufsichtigte Upgrades / ist leer. Das Ausführen von /etc/init.d/unattended-upgrades start ist nicht sehr schön:

root@mozart:~# /etc/init.d/unattended-upgrades start
Checking for running unattended-upgrades: root@mozart:~#

Etwas scheint kaputt zu sein, aber ich bin mir nicht sicher warum.

Ich habe ausstehende Updates und sie werden nicht angewendet:

root@mozart:~# aptitude safe-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Reading extended state information      
Initializing package states... Done
The following packages will be upgraded:
  linux-libc-dev 
1 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0B/743kB of archives. After unpacking 4096B will be used.
Do you want to continue? [Y/n/?]

Auf allen Servern, die ich habe, scheinen unbeaufsichtigte Upgrades deaktiviert worden zu sein:

root@mozart:~# apt-config shell UnattendedUpgradeInterval APT::Periodic::Unattended-Upgrade
root@mozart:~#

Irgendwelche Ideen, was fehlt mir?

pupeno
quelle
libc ist ein Hauptpaket. Ich würde keinen Server das alleine aktualisieren lassen!
Antoine Benkemoun
Antoine, ich habe kein Problem damit; Außerdem ist libc-dev das Entwicklungspaket, wahrscheinlich ein Haufen .h und ähnliches. Und dies ist nur das, was jetzt ansteht, was jetzt noch ansteht. Die Diskussion über dieses spezielle Paket trägt also nicht viel zum Problem bei.
Pupeno

Antworten:

4

Haben Sie /etc/apt/apt.conf.d/10periodic überprüft?

es sollte die letzte Zeile haben

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "1";
APT::Periodic::Unattended-Upgrade "1";
Tanarri
quelle
5
Diese Einstellungen sind nicht alle in 10periodic aktiv, sondern verteilen sich auf 10periodic, 20auto-Upgrades und 50 unbeaufsichtigte Upgrades. Wenn Sie sie an der falschen Stelle platzieren, werden sie möglicherweise durch ein zukünftiges APT-Upgrade überschrieben. Bei 20auto-Upgrades können Sie APT :: Periodic :: Unattended-Upgrade auf "1" setzen. und 50 unbeaufsichtigtes Upgrade, um das Verhalten zu optimieren, wie im Ubuntu Server-Handbuch beschrieben.
Daff
Könnten Sie die Detailinformationen hier oder Links einfügen? Ich kann sie nicht finden.
Tanarri
Das (offizielle) Ubuntu 10.04-Serverhandbuch scheint veraltet zu sein. Weitere Informationen finden Sie in meiner Antwort.
Hendy Irawan
2
Die neueste URL für die Dokumente lautet: help.ubuntu.com/lts/serverguide/automatic-updates.html und es heißt, dass alle diese vier als Tanarri qrote in 10periodisch sein sollten. Die Seite für unbeaufsichtigte Upgrades widerspricht dem nicht, fügt jedoch einige andere nützliche Informationen hinzu: help.ubuntu.com/community/AutomaticSecurityUpdates
SamGoody
8

Überprüfen Sie die aktuelle Dokumentation für Ihre Ubuntu-Version hier:

/usr/share/doc/unattended-upgrades/README.gz

Für Ubuntu 11.10 tun Sie Folgendes, um es zu aktivieren:

sudo dpkg-reconfigure -plow unattended-upgrades

(es ist ein interaktiver Dialog), der /etc/apt/apt.conf.d/20auto-upgradesmit den folgenden Inhalten erstellt wird:

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

Die Informationen im Ubuntu 10.04-Serverhandbuch sind also veraltet.

Wenn Sie Puppet wie bei Bippo und Soluvas verwenden , können Sie Folgendes verwenden , um die ordnungsgemäße Konfiguration unbeaufsichtigter Upgrades zu automatisieren :

# Unattended upgrades
package { unattended-upgrades: ensure => present }
file { '/etc/apt/apt.conf.d/50unattended-upgrades':
  content => template('bipposerver/50unattended-upgrades'),
  mode    => 0644,
  require => Package['unattended-upgrades'],
}
file { '/etc/apt/apt.conf.d/20auto-upgrades':
  source  => 'puppet:///bipposerver/20auto-upgrades',
  mode    => 0644,
  require => Package['unattended-upgrades'],
}
service { unattended-upgrades:
  enable    => true,
  subscribe => [ Package['unattended-upgrades'],
                 File['/etc/apt/apt.conf.d/50unattended-upgrades',
                      '/etc/apt/apt.conf.d/20auto-upgrades'] ],
}

Stellen Sie sicher, dass Sie die Vorlagen / Dateien 50unattended-upgradesund nach Belieben bereitstellen 20auto-upgrades.

Ich aktualisiere auch die Ubuntu-Wiki-Seite , um dies widerzuspiegeln.

Hendy Irawan
quelle
1
+1 FWIW, das 13.04 Serverhandbuch ist immer noch veraltet.
Deizel
6

Ich sehe nichts falsch mit dir /etc/apt/apt.conf.d/50unattended-upgrades. Meins sieht fast wie deins aus, aber ich lasse Sicherheitsupgrades nur automatisch anwenden, sonst nichts. Ich habe es auch so eingestellt, dass E-Mails einfach an "root" gesendet werden (Postfix erledigt den Rest).

Aber: Das Init-Skript /etc/init.d/unattended-upgradesist nicht zum Ausführen unbeaufsichtigter Upgrades vorgesehen. Es wird lediglich überprüft, ob der unbeaufsichtigte Aktualisierungsprozess ausgeführt wird, und es wird gewartet, bis er beendet wird. Ich weiß nicht genau, warum es benötigt wird oder warum es das tut, was es tut (es war in früheren Ubuntu-Versionen nicht einmal vorhanden), aber es ist nicht die Möglichkeit, unbeaufsichtigte Upgrades durchzuführen.

Stattdessen gibt es unter Ubuntu ein Python-Programm namens unnattended-upgrades, das die Arbeit erledigt. Versuchen Sie, das manuell auszuführen, und sehen Sie, was passiert. Überprüfen Sie auch die Ausgabe des Befehls

apt-config shell UnattendedUpgradeInterval APT::Periodic::Unattended-Upgrade 

Es sollte angezeigt werden UnattendedUpgradeInterval='1', dass Sie APT richtig konfiguriert haben, um unbeaufsichtigte Upgrades zu ermöglichen.

Ubuntu läuft /etc/cron.daily/apttäglich von Cron. Wenn Sie sich dieses Skript ansehen, sehen Sie, dass es verschiedene APT-bezogene Dinge ausführt, darunter unbeaufsichtigte Upgrades. Ich vermute, dass Sie dieses Cron-Skript irgendwie deaktiviert haben und nichts unbeaufsichtigt passiert.

Das war es mehr oder weniger auf meinem Kopf. Bitte posten Sie ein Follow-up, wenn Sie meine Ideen ohne Erfolg ausprobiert haben.

HTH

daff
quelle
2
Danke für die Antwort daff. Ich habe der Ausgabe die Ausgabe von "apt-config shell UnattendedUpgradeInterval APT :: Periodic :: Unattended-Upgrade" hinzugefügt. Alle meine Server drucken nichts dafür.
Pupeno