"Warten auf Netzwerkkonfiguration" Problem

72

Dieses Problem tritt manchmal auf, wenn Ubuntu gestartet wird. Manchmal kann man nicht wirklich über die Schnittstelle booten.

Begrüßungsbildschirm mit den 5 Punkten und der Meldung:

Warten auf Netzwerkkonfiguration

gefolgt von:

Warten Sie weitere 60 Sekunden auf die Netzwerkkonfiguration

Eule
quelle

Antworten:

44

Ich habe mich für die CLI- und die Alt + Strg + F2-Methode entschieden, damit Sie dies tun können, während Sie in der GUI angemeldet sind. Okay, ich werde die allgemeinen Schritte schreiben. Sie können also jede beliebige Methode verwenden.

  1. Bearbeiten /etc/network/interfaces:

    sudo nano /etc/network/interfaces
    
    1. Wenn Sie dies über LXTerminal eingeben, während Sie in der GUI angemeldet sind, dann:

      gksudo leafpad /etc/network/interfaces
      
  2. Entfernen Sie alles, was dort steht, und bewahren Sie Folgendes auf:

    auto lo
    iface lo inet loopback
    

Es ist eine sehr gute Idee, eine Sicherungskopie der "interfaces" -Datei aufzubewahren. Vergessen Sie nicht, eine "interfaces.bak" -Datei zu speichern, bevor Sie etwas unternehmen

  1. Ctrl+ Owenn Sie Nano verwenden und Ctrl+ S(Datei> Speichern) wenn Sie Leafpad verwenden.

  2. Ctrl+ Xwenn Sie Nano verwenden und Ctrl+ Q(Datei> Beenden) wenn Sie Leafpad verwenden.

  3. Starten Sie neu.

  4. Getan.

Eule
quelle
3
auto lo iface lo inet loopbackfunktioniert nicht
zeichne den
@draw muss in zwei Zeilen stehen: 1. Zeile ist auto lo; 2. Zeile istiface lo inet loopback
Daniel Kullmann
2
@ Danielkullmann; auto lo; (1. Zeile) iface lo inet loopback; (2. Zeile) Auch bei mir funktioniert es nicht. Ich muss die Schnittstelle manuell konfigurieren und ihre Adresse angeben !!
mythicalcoder
3
Meine Interface-Datei sieht genau so aus, aber das Problem besteht weiterhin /:
Andy
5
Beachten Sie, dass dies nur funktioniert, wenn Sie network-managerinstalliert haben. Es wird auf der Desktop-Version von Ubuntu installiert, jedoch nicht auf der Serverversion. Wenn Sie nicht network-managerinstalliert haben und dies tun, funktioniert keine Ihrer Schnittstellen
kbuilds
37

In jeder Situation, in der ich darauf gestoßen bin, liegt ein Problem in / etc / network / interfaces vor

Sie sollten nicht alles entfernen müssen, wie in einem früheren Beitrag vorgeschlagen, sondern nach häufigen Problemen suchen.

In meinem Fall wurde der Gateway-Parameter für zusätzliches Ethernet-IPS definiert. Sie müssen nur für jede Karte das Gateway für die primäre Schnittstelle definieren.

Was ich damit meine ist, wenn Ihre Datei so aussieht:

auto eth0
iface eth0 inet static
  address 10.0.0.5
  netmask 255.255.255.0
  network 10.0.0.0
  gateway 10.0.0.1

auto eth0:0
iface eth0:0 inet static
  address 10.0.0.6
  netmask 255.255.255.0
  network 10.0.0.0
  #gateway 10.0.0.1

Der 2. Gateway-Parameter bewirkt, dass Ubuntu während des Startvorgangs 60+ Sekunden lang hängt. Sie müssen nur das Gateway für den ersten eth0-Abschnitt definieren. Sie müssen das Gateway für zusätzliche Netzwerkkarten, IE eth1, wlan0 usw. definieren, jedoch NICHT für zusätzliches IPS, das der gleichen NIC zugewiesen ist. Frühere Versionen von Ubuntu hatten keine Probleme damit, aber Ubuntu 12.04 mag es nicht ... Sei nett, wenn es einfach ignoriert werden könnte.

Ich bin sicher, dass es in dieser Datei andere "Probleme" gibt, die dies verursachen können. Überprüfen Sie die Datei und vergewissern Sie sich, dass keine Tippfehler usw. vorhanden sind.

D Langhorne
quelle
Die Option "Netzwerk" ist veraltet und wird nicht mehr benötigt.
Jdthood
2
Diese Antwort trifft nicht auf mich zu. Ich habe keine Gateways in aktiven
Zeilengruppen
3
Dies war die Antwort, die ich brauchte
Patrick Chu
1
Ich hatte genau das gleiche Problem und diese Lösung hat perfekt funktioniert!
Sunny
In meinem Fall enthielt die mit "auto" beginnende Zeile eine Schnittstelle "eth2", die nicht mehr existierte, dh in den Schnittstellen nicht mehr konfiguriert war.
RTasche
36

Dies könnte auch helfen: http://tech.pedersen-live.com/2012/05/disable-waiting-for-network-configuration-messages-on-ubuntu-boot/

Grundsätzlich bearbeiten Sie diese /etc/init/failsafe.confDatei und deaktivieren (kommentieren) die sleepBefehle, die das System tatsächlich anhalten. Abgesehen davon, dass ich den Job erledigt habe, gab es zumindest in meinem Fall überhaupt keinen Fehler in der Netzwerkkonfiguration, sodass alles in Ordnung war.

Übrigens erlaubt Ihre Lösung nur die Konfiguration der Loopback-Schnittstelle, was ich mir in meinem Setup nicht leisten konnte (ich musste die Schnittstellen und Bridges manuell einrichten).

nelsonspbr
quelle
3
Dies sollte die richtige Antwort sein. Viele Leute glauben, dass die Funktionalität von failsafe.confOverkill
kbuilds
Ein Failsafe zu töten ist nie die richtige Antwort. Es ist richtig, die falsche Konfiguration zu korrigieren, die einen ausfallsicheren Einstieg ermöglicht. Es gibt verschiedene Stellen, an denen die falsche Konfiguration vorliegen kann, die jedoch definitiv nicht ausfallsicher ist!
Tino
2
Dies ist meiner Meinung nach die richtige Antwort. Ich boote absichtlich ohne Netzwerkkonfiguration, wenn ich Server klone oder Backups im Notfall wieder herstelle. Ich brauche im Notfall keine 2 Minuten zu warten, aber an meinen Konfigurationen ist nichts "falsch".
FreeSoftwareServers
Konnte nicht auf die URL zugreifen, scheint die Seite ausgefallen zu sein. Es ist auf archive.org verfügbar: web.archive.org/web/20160301200431/http://…
rog
27

Die wirkliche (!) Lösung für dieses Problem ist folgender Befehl:

sudo sed -i.old-`date +%Y%m%d-%H%M%S` '/^auto lo$/!s/^auto /allow-hotplug /' /etc/network/interfaces

In /etc/network/interfacesdieser ändert sich alle Schnittstellen (außer lo) von autozu allow-hotplug. Auf diese Weise wartet der Bootvorgang nicht mehr darauf, dass die Schnittstellen zuerst aufgerufen werden.

Warnung: Nach dieser Änderung bleibt eine permanent verbundene Schnittstelle nach dem Start möglicherweise so lange inaktiv, bis systemdein echtes Plug-Ereignis empfangen wird. Siehe Anmerkungen unten.

Beispiel vorher (siehe auto eth0):

auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

Beispiel nach (siehe allow-hotplug eth0):

auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

Anmerkungen:

  • Wenn Sie Netzwerkfreigaben einhängen /etc/fstab, verwenden Sie autound nicht allow-hotplugfür die Schnittstelle zu den Netzwerkfreigaben. Andernfalls kann es vorkommen, dass beim Booten seltsame Dinge passieren, da das Netzwerk verfügbar sein muss, bevor die Netzwerkfreigabe aktiviert wird. allow-hotpluggewährleistet dies nicht.

  • Wenn sich die Schnittstellen im autoModus befinden, drücken Sie Folgendes aus: "Diese Schnittstellen sind für den Start von entscheidender Bedeutung, daher müssen Sie warten , bis sie angezeigt werden, bevor Sie den Startvorgang starten ." Wenn sie nicht gestartet werden, verzögert Ubuntu den Start mit Failsafe und wartet bis zu 120 Sekunden, bis sie angezeigt werden. Und das ist das Richtige.

    Im Gegensatz dazu sind Interfaces, die allow-hotplugUbuntu mitteilen sollen, dass sie optional sind. Daher sind sie nicht unbedingt erforderlich.

  • Ubuntu zeichnet auf, welche Schnittstellen zum Zeitpunkt der Installation verfügbar sind, und geht davon aus, dass sie für den späteren Betrieb wichtig sind. Dies ist eine konservative Wahl, falls die Schnittstelle später benötigt wird, da einige Dienste an sie gebunden sind, da solche Dienste nicht gestartet werden können, wenn die Schnittstelle nicht aktiv ist.

  • Es gibt auch eine Kernel-Einstellung, mit der Prozesse an nicht vorhandene IP-Adressen gebunden werden können. Sie können diese also jederzeit verwenden allow-hotplug, ohne die Stabilität des Startvorgangs zu beeinträchtigen. Dies ist jedoch eine ganz andere Geschichte.

Anmerkungen (Update 2018-01-04):

  • An meiner Seite allow-autotut das gleiche wie auto, also hilft es nicht (ausprobiert br0).

  • Nachdem ich eines meiner Systeme auf Debian Stretch aktualisiert und auf SystemD gewechselt hatte, verzögerte sich der Start unerträglich, während ich darauf wartete, dass die (permanent angeschlossene) Schnittstelle angezeigt wurde br0. Allerdings blieb mit allow-hotplug der Schnittstelle br0nach dem Booten . Möglicherweise liegt dies daran, dass SystemD auf einer solchen Schnittstelle kein reales oder synthetisches Plug-Ereignis empfängt. Ich habe graben nicht tiefer in diese, wie unerfindlichen crontabEintrag @reboot /sbin/ifup br0für rootes für mich festgelegt. (Das funktioniert, ist aber wahrscheinlich etwas, das anderen besser nicht empfohlen werden sollte. Ich würde gerne hören, ob jemand eine bessere Idee hat.)

((Der Text endet hier, der Rest dient Ihrer Unterhaltung))

Und hier ist eine Gutenachtgeschichte, inspiriert von:

Einige Ackerbauern tobten. Ihre Ernte ist ausgetrocknet! Deshalb untersuchten sie, warum im Bewässerungsgraben nicht genug Wasser war. In der näheren Entfernung entdeckten sie sofort ihren Täter. Der Damm! Der verdammte Damm hielt das ganze Wasser hoch!

Von diesem Moment an war klar, was zu tun war. "Sprengen Sie den Damm!" schrien sie und fingen an, ihr Dynamit zu sammeln. Dann gingen sie alle direkt zum Damm.

Der kleine Sohn eines Bauern fragte seinen Vater, was los sei. Er sagte zu seinem Sohn: "Es ist nicht genug Wasser im Graben, also sprengen wir den Damm!" Dann ging er sofort, um dem Rudel zu folgen.

"Aber", versuchte der Kleine seinem Vater nachzuschreien, "aber es gibt ein Ventil! Öffne einfach das Ventil!" Leider war seine Stimme zu sanft und seine Beine zu kurz, sodass diese Nachricht niemanden erreichte.

Der Junge setzte sich und weinte. Eine halbe Stunde später hörte er den fernen "Boom", der seine Lieblingsplage am Damm zerstörte, wo sich auch das Ventil befand.

Was danach geschah?

Die Sintflut hat alle kostbaren Ernten hinweggefegt. Die Bank hat die Farm des Vaters des Jungen weggenommen. Sein Vater konnte für eine gute Schule nicht bezahlen. Also trat der Junge der Armee bei, um eine höhere Ausbildung zu erhalten. Dort lernte er alles über die Phyik von Sprengstoffen und versucht nun, einen explosionsgeschützten Damm zu erfinden.

Was hat diese Geschichte hier damit zu tun?

  • Die Ackerbauern sind die anderen Antworten.
  • Der kleine Junge ist diese Antwort hier.
  • Die Mutter ist die Ubuntu ausfallsicher schlafen.
  • Das Ventil ist die richtige Schnittstelleneinstellung.
  • Das Wasser ist der Bootprozess.
  • Die Ernte ist Ihr Ubuntu-Betriebssystem.
  • Und der gefüllte Graben ist, wie der Bootvorgang aussehen soll.

Die Einstellung der Schnittstelle, in der gewohnt wird /etc/network/interfaces, wird mit entferntem Sleep-in-Fail-Safe in die Luft gesprengt, und selbst wenn jemand das geschlossene Ventil ( auto) sieht , merkt niemand, dass es auch geöffnet werden könnte!

Tino
quelle
2
Das ist die richtige Antwort. Ich hoffe, der ursprüngliche Fragesteller wählt dies als die richtige Antwort und markiert das Problem als gelöst.
thatmaheshrs
1
Vielen Dank, dass Sie @Tino geteilt haben. Die Geschichte ist schön, aber meiner Meinung nach wirft sie die Antwort zu sehr auf und sollte zumindest nicht vor den letzten nützlichen technischen Hinweisen stehen
ndemou
@ndemou Danke für die Notiz, entsprechend bearbeitet. Ich habe versucht, einen Spoiler für die Geschichte zu verwenden, aber der kam nicht so raus, wie ich es mochte, also habe ich ihn so belassen, wie er ist.
Tino
Beste Antwortqualität und die Ironie der Geschichte sind von unschätzbarem Wert.
Rui F Ribeiro
13

Fügen Sie #in der /etc/init/failsafe.confDatei ein vor alle Zeilen ein, die enthalten sleep <n>. Dies würde helfen, schnell zu booten.

Dies würde zu einem schnelleren Start führen und keine Probleme mit der /etc/network/interfacesDatei beheben . Das Beheben von Problemen mit der /etc/network/interfacesDatei ist nicht der Zweck der /etc/init/failsafe.confDatei.

Es gibt Situationen , in denen Sie mögen die Netzwerkschnittstelle nicht funktionieren (dh einen Laptop, der nur die eth0 Schnittstelle (Kabelverbindung) in einem Teil der Zeit eingesteckt). Ich möchte nicht länger als 2 Minuten auf den Start meines Laptops warten müssen, da die Kabelverbindung nicht angeschlossen ist.

Binil Jacob
quelle
4
Könnten einige dieser Zeilen (und die absichtlichen Verzögerungen, die sie hervorrufen) wichtig sein? Wenn nicht, empfehle ich, diese Antwort zu erweitern, um zu erklären, warum.
Eliah Kagan
2
Ich glaube, dass diese Verzögerungen jetzt ausschließlich in der Ubuntu-Serverkonfiguration liegen und dazu dienen, die Anzahl der Personen zu verringern, die sich über fehlerhafte Funktionen beschweren, da einige Netzwerk-Daemons gestartet wurden, bevor es funktionierende Schnittstellen gab (möglicherweise DNS). Daher ist es besser, zu warten hier, als durch einen Boot ohne Netzwerkverbindungen zu beeilen.
kkron
1
Gute Antwort! Der Autor von failsafe.conf hat dort seine E-Mail mit Kommentaren hinterlassen, warum er zwei Minuten wartet, sofern keine statische Adresse angegeben ist. Ich glaube, dieser Mann ist allein für die Instanzen von Ubuntu verantwortlich, die 48x langsamer booten als Windows;)
Brain2000
2

Ich hatte ein ähnliches Problem. Durch das Ausführen ifconfig -astellte ich fest, dass die einzigen Netzwerkgeräte auf meinem Computer p4p1und waren lo. Es gab keine eth0.

Also habe ich bearbeitet /etc/network/interfacesund alle Instanzen von eth0durch ersetzt p4p1. Der Inhalt der Datei ist jetzt:

auto lo
iface lo inet loopback

auto p4p1
iface p4p1 inet dhcp

Nach dem Neustart funktionierte das Netzwerk einwandfrei.

Wenn es darauf ankommt, habe ich Ubuntu 12.04.5 Server Edition verwendet.

David Grayson
quelle
Vielleicht ersetzt auto p4p1mit allow-hotplug p4p1und Ihr Computer auch Stiefel schnell , wenn Ethernet unten ist. Dies hängt jedoch von Ihrem Setup ab. Wenn es sich beispielsweise um eine Workstation oder einen Server mit Netzwerkfreigaben handelt ( NFSoder Samba), möchten Sie unbedingt darauf warten, dass das Netzwerk verfügbar ist, bevor Sie fortfahren. allow-hotplugDies ist die falsche Wahl.
Tino
Danke!! Mit ifconfig -aentdeckte ich, dass die Schnittstellen wirklich eth4und eth5.
Francadaval