Problem
Ubuntu 9.10 Desktop Edition (und möglicherweise auch frühere Versionen, die ich nicht getestet habe) hat nach dem Start keine Netzwerkverbindungen, bis sich mindestens 1 Benutzer anmeldet. Dies bedeutet, dass alle Dienste, die ein Netzwerk erfordern (z. B. openssh-server), erst verfügbar sind Jemand meldet sich lokal entweder über gdm, kdm oder ein TTY an.
Hintergrund
Ubuntu 9.10 Desktop Edition verwendet den NetworkManager-Dienst, um Befehle vom nm-Applet in Gnome (oder dessen Entsprechung in KDE) abzurufen. Wenn NetworkManager beim Booten ausgeführt wird, werden keine Verbindungsbefehle ausgegeben, bis Sie sich zum ersten Mal anmelden, da das nm-Applet erst ausgeführt wird, wenn Sie sich anmelden und Ihre Gnome-Sitzung startet (oder ähnliches für KDE). Ich bin nicht sicher, was NetworkManager zum Herstellen einer Verbindung zum Netzwerk auffordert, wenn Sie sich über ein TTY anmelden.
Beim Starten der Netzwerkverbindungen sind verschiedene relevante Variablen beteiligt, darunter:
- Wired vs Wireless (und die daraus resultierenden Treiber, SSID, Passwörter und Prioritäten)
- Statisch vs DHCP
- Mehrere Schnittstellen
Einschränkungen
- Unterstützt Ubuntu 9.10 Karmic Koala (Bonuspunkte für zusätzliche unterstützte Versionen)
- Unterstützung verdrahtete eth0 schnittstelle
- Erhalten Sie eine IP-Adresse über DHCP
- Empfangen von DNS-Informationen über DHCP (natürlich muss der DHCP-Server diese Informationen bereitstellen)
- Aktivieren Sie das Netzwerk zum richtigen Zeitpunkt (z. B. einige Zeit nach dem Laden von Dateisystemen, aber vor dem Starten von Netzwerkdiensten wie ssh).
- Das Wechseln von Distributionen oder Versionen (z. B. zu Server Edition) ist keine akzeptable Lösung
- Der Wechsel zu einer statischen IP-Konfiguration ist keine akzeptable Lösung
Frage
- Wie starte ich ein Netzwerk über eine kabelgebundene Schnittstelle, bevor ich mich in Ubuntu Desktop Edition anmelde?
Siehe auch
Verweise
quelle
auth eth0
anstelle von:auto eth0
in deinem Beitrag ist immer noch ein Tippfehler, den du nur in dem Beitrag gemacht hast, oder?sudo /etc/init.d/networking restart
eth0 per DHCP eingerichtet und konfiguriert./etc/network/interfaces
, um zu verhindern, dass NetworkManager die Schnittstelle verwaltet und über DHCP aufruft." Ich muss prüfen, ob dieses Update beim Booten mit installiertem NM ausgeführt wird ...Debian / Ubuntu hat ein eigenes Programm, um Server beim Booten zu verwalten.
Versuchen
update-rc.d STARTUP-SCRIPT defaults
Suchen Sie nach dem spezifischen Skript für eth0 und aktivieren Sie es damit.
Sie können jederzeit ein eigenes Skript erstellen, es in init.d platzieren und mit dem vorherigen Befehl beim Booten laden.
oder füge einfach diese Befehle (ifconfig up, dhcpcd) in /etc/rc.local ein (diese Datei wird jedes Mal beim Booten gelesen)
quelle
dhclient eth0
zu /etc/rc.local wird die eth0-Schnittstelle beim Start ordnungsgemäß aufgerufen und eine IP über DHCP abgerufen. Zumindest für mich ist SSH jetzt auch verfügbar, bevor sich jemand lokal anmeldet, da openssh-server so eingestellt ist, dass es auf Runlevel 234 startet. Ich weiß nicht, ob alle netzwerkfähigen Dienste erfolgreich funktionieren, wenn die Schnittstelle in rc.local ( zB ntpdate), da rc.local nach Systemdiensten ausgeführt wird.