Ubuntu apt-get steht bei „Waiting for headers“

Vor ein paar Minuten einen Server neu installiert und dann beim ersten Befehl sudo apt-get update hängt das System Minuten lang mit der Meldung „Waiting for headers“. Da alles schnell gehen muss, mehrere Tipps aus einschlägigen Foren ergebnislos versucht. Allerdings wird in fast jedem Beitrag auf die Datei /etc/apt/sources.list als mögliche Fehlerquelle verwiesen. Diese beinhaltet alle Quellen für Pakete (Repositories) für das installierte System.

Waiting for headers ?

Apt-get waiting for headers

Da „Waiting for headers“ so gut wie nichts aussagt, wurden erst einmal alle Quellen zur Fehlereingrenzung mit einer Raute (#) davor auskommentiert. Danach sah die sources.list wie folgt aus (gekürzt):

#deb http://us.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse 
#deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse 
...

Der Standort meines Servers ist mitten in Deutschland. Doch woher weiß ich welche Adressen für die deutschen Quellen die richtigen sind? Ganz einfach, es gibt hierfür einen sehr guten source.list Generator.

Dort wählt man das Land in dem der Server steht und seine Ubuntu Version sowie die benötigten Quellen. Im Zweifelsfall sind dies für Ubuntu z.B.:

  • Main – Officially supported software.
  • Restricted – Supported software that is not available under a completely free license.
  • Universe – Community-maintained, i.e. not officially supported software.
  • Multiverse – Software that is „not free“.
  • Security – Important Security Updates.
  • Updates – Recommended Updates.

Also alles benötigte markieren und auf „Generate List“ klicken. Jetzt kann die Ausgabe eins zu eins in folgende Datei eingefügt werden:

nano /etc/apt/sources.list

Welche danach wie folgt aussieht:

###### Ubuntu Main Repos
deb http://de.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse 
###### Ubuntu Update Repos
deb http://de.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse 
deb http://de.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse

 

Tipp

Wer genauer sehen möchte, wo apt-get update mit der Meldung „Waiting for headers“ stehen bleibt, findet dies mit nachfolgendem dem Befehl heraus. Dabei wird jede Verbindungsanfrage (GET) und mögliche Fehlermeldungen im Terminal ausgegeben.

apt-get -o Debug::Acquire::http=true update

Anmerkung

In einigen Foren wurde auf eine „Mirror“ Liste für die Source Datei verwiesen. Diese wird automatisch anhand der GeoIP am Server generiert und soll dann die nächstgelegenen Quellen ausgeben. Leider hat diese bei mir auch nicht funktioniert. Falls diese Möglichkeit noch aktuell ist und unterstützt wird, wäre das sicher interessant für Laptopreisende.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.