„Oczekiwanie na konfigurację sieci”, dodając 3 do 5 minut do czasu uruchamiania

37

Otrzymuję następujące informacje na starcie, zajmuje to około 3 do 5 minut, a zwykle około 1 minuty:

Waiting network configuration
Booting system without full network configuration

Po googlowaniu znalazłem, że powinienem zmienić / etc / networks / interface . Skomentowałem wszystko, ale problem pozostaje:

# auto lo
# iface lo inet loopback

# auto eth0
# iface eth0 inet dhcp
# address 192.168.0.2
# netmask 255.255.255.0
# gateway 192.168.0.1
# broadcast 192.168.0.255

Jak przyspieszyć uruchamianie Ubuntu 11.10?

Léo Léopold Hertz 준영
źródło
5
Nie rozumiem tego zachowania. Nie chcę zmieniać pliku interfejsów za każdym razem, gdy wracam do domu. Są sytuacje, w których po prostu nie mam sieci LUB korzystam z WICD PO zalogowaniu. Dla mnie, jako właściciela laptopa, oznacza to czekanie 2 minut bez sensu. Dwa razy dziennie. Poza tym: Skonfigurowałem wszystkie interfejsy, aby były statyczne. Nie ma mowy.
2
@jrg To nie jest problem z kodem, to problem z desingiem. Czy mogę zgłosić błąd dotyczący takiego problemu?
Léo Léopold Hertz
1
Tak, możesz. Zwróć uwagę, że jest to błąd projektowy. :)
jrg
@jrg Jaki powinien być status błędu? - Wybrałem xorg jako pakiet, ponieważ musiałem coś wybrać. Ustawiłem status na nieważny, ponieważ tak naprawdę nie chodzi o to. - Chodzi o projekt. Czy ludzie mogą teraz zrozumieć, że status błędu nie został odrzucony, ale tylko w przypadku pakietu xorg?
Léo Léopold Hertz -
2
Użyj allow-hotplugzamiast autow pliku / etc / network / interfaces, np . allow-hotplug enp0s25Wtedy iface enp0s25 inet dhcp. Mówi to serwerowi, aby nie czekał, aż interfejs zaświeci się odpowiedzią dhcp.
Zachary Scott

Odpowiedzi:

38

Po pierwsze, jest to nowe zachowanie udokumentowane w uwagach do wydania 11.10, które opracowałem wspólnie ze Scottem Moserem, aby zwiększyć niezawodność rozruchu serwera.

Komentowanie looznacza, że ​​nie masz możliwości sieci lokalnej , co spowoduje uszkodzenie niektórych programów podczas próby korzystania z sieci. Spowoduje to również, że Twój system nigdy się nie uruchomi, ponieważ jest tak krytyczny. Więc zostaw te dwie linie:

auto lo
iface lo inet loopback

Te bity eth0oznaczały, że komputer został skonfigurowany tak, aby czekał na przypisanie mu adresu dynamicznego, zanim sieć zostanie uznana za UP . W pre-upstartwersjach Ubuntu (8.10 i wcześniejszych) system czekałby na to do 60 sekund przed kontynuowaniem rozruchu. Po upstartdodaniu warunek ten nie był już dłużej oczekiwany, ponieważ interfejsami sieciowymi, które nie zawsze powinny być podłączane, lepiej zarządza coś podobnego network-manager.

Tak więc, jeśli masz serwer, prawdopodobnie chcesz poczekać na adres dynamiczny, w przeciwnym razie system uruchomi się bez wszystkich dostępnych sieci (co dzieje się, jeśli uzyskanie adresu zajmuje więcej niż 2 minuty). Jeśli masz laptopa, do którego nie zawsze oczekujesz podłączenia eth0, skonfiguruj eth0w menedżerze sieci i usuń tylko te linie /etc/network/interfaces, które powinny pozbyć się opóźnienia uruchamiania.

Należy pamiętać, jest to znany błąd z VMwarei dbusże również powoduje ten komunikat.

Spamapy
źródło
1
Masi, wygląda na to, że musisz zadać inne pytanie.
SpamapS,
3
Przepraszam, jestem nowicjuszem i nadal nie rozumiem, dlaczego system musi czekać około 2-4 dodatkowych minut na IP. A główne pytanie brzmi: „czy potrzebuję tego. Czy mam laptopa i zawsze korzystam z przewodowych i bezprzewodowych połączeń sieciowych?”
itun
2
@SpamapS i Scott Moser Proszę, zmień to z powrotem. Ranisz użytkowników komputerów stacjonarnych. Rozumiem, że oszczędzasz czas na programowaniu, ale zastanów się, czy 100 milionów użytkowników traci dziennie 2 minuty z powodu takiej zmiany. To ogromny koszt! Proszę rozgałęzić Ubuntu Server zupełnie inaczej niż Ubuntu Desktop.
Léo Léopold Hertz -
5
głosując za tym dla świadomości, ALE jako zwykły użytkownik pulpitu BARDZO NIEŚCIEŻKO, że nie ma dla tego opcji szybkiego rozruchu. Zdecydowanie postrzegane jako degradacja z aktualizacji 10.04 na 12.04. Problem ten jest spotęgowany przez fakt, że menedżer sieci nie jest w stanie bezpośrednio kontrolować ustawień takich jak dupleks i autoneg, co powoduje konieczność osiągnięcia tego przez / etc / network / interfaces
prusswan
2
@SpamapS: Cieszę się, że zastanawiałeś się nad dodaniem opcji „nie czekaj”, ale tak naprawdę należy się zastanowić, dlaczego Canonical tak konsekwentnie zawodzi podczas kontroli jakości (użytkownik przez ostatnie 6 lat i spotykam regresje showstopper przy każdym wydaniu, które powinno mieć zapobiegał każdemu wydaniu). Poza tym serwer i minimalne dyski CD są szeroko stosowane do instalacji na komputerze, ponieważ instalator graficzny często ma problemy i / lub łatwiej jest uruchomić minimalną płytę CD na wadliwych mediach. Z pewnością nie jest bezpieczne zakładanie, że ponieważ użytkownik korzysta z alternatywnej lub minimalnej płyty CD, musi instalować serwer.
Joseph Garvin
8

Jeśli przeniosłeś swój system operacyjny z jednego komputera na inny, być może zgadniesz, że udev stworzył konfigurację zawierającą adres mac starego urządzenia sieciowego, który jest inny niż adres mac urządzenia sieciowego nowego systemu.

Spróbuj usunąć następujący plik, a następnie uruchom ponownie system i sprawdź, czy to rozwiąże problem:

/etc/udev/rules.d/70-persistent-net.rules
dachande
źródło
dachange dzięki za doprowadzenie mnie do właściwej drogi, aby rozwiązać inny problem! Otrzymałem limit czasu resetowania na moim urządzeniu wlan0 rlt8185 podczas wykonywania połączenia ip set wlan0 w górę. Przejrzałem plik 70-persistent-net.rules i skomentował wiersz, który dodał moje urządzenie bezprzewodowe, uruchomił się ponownie i teraz działa!
6

Mieszasz 2 niekompatybilne sposoby przypisywania adresu do interfejsu sieciowego.

iface eth0 inet dhcp

mówi „wyślij pakiet DHCPDISCOVER do fizycznej sieci lokalnej, poczekaj na pakiet DHCPOFFER z fizycznie lokalnego serwera DHCP i uzyskaj z niego adres IP (patrz http://www.rfc-editor.org/rfc/rfc1531. txt ), podczas gdy reszta wierszy przypisuje wartości do interfejsu „ręcznie”. Ważne jest, aby odpowiednio dobrać metodę przypisania adresu IP. Jeśli w sieci lokalnej jest serwer DHCP, należy go użyć. Aby to zrobić, usuń linie „adres”, „maska ​​sieci”, „brama” i „rozgłaszanie”.

Jeśli nie masz połączenia z „administrowaną” siecią lokalną (i nie masz serwera DHCP) i chcesz ręcznie przypisać parametry adresu IP, zmień pierwszą linię na:

iface eth0 inet static

i zachowaj linie „adres”, „maska ​​sieci”, „brama” i „rozgłaszanie”. Szczegółowe informacje na temat dostępnych adresów IP można znaleźć na stronie http://www.rfc-editor.org/rfc/rfc5735.txt . Parametry, które wyglądasz dla mnie OK.

Czytać

man 5 interfaces

zwykłe komentowanie wszystkiego nie jest najlepszą drogą do szczęścia.

waltinator
źródło
Dziękuję za Twoją odpowiedź! - Dlaczego moje Ubuntu działa z pustymi interfejsami / etc / network / ? - Jak widzisz, że nie działa normalnie lub wydajnie?
Léo Léopold Hertz 준영
Tak więc ostatni wiersz mówi: wyślij pakiet statyczny do fizycznej sieci lokalnej, poczekaj na pakiet statyczny z fizycznej sieci lokalnej i uzyskaj z niego adres IP.
Léo Léopold Hertz -
Wiem [kod] iface eth0 inet adres statyczny 192.168.0.2 maska ​​sieci 255.255.255.0 brama 192.168.0.1 broadcast 192.168.0.255 [/ code], w moim / etc / network / interfaces i problem nadal występuje: ładowanie dużo.
Léo Léopold Hertz
Nie. Wiersz z „static” mówi „Pobierz adres IP z następujących linii”, żadne pakiety sieciowe nie są wysyłane.
waltinator
1
Myślę, że rozumiem. Ponieważ mobilny Internet szerokopasmowy nie jest skonfigurowany, gdy sekwencja rozruchowa wykonuje się ifconfig -apodczas uruchamiania, masz limit czasu.
waltinator,
5

Wydaje się, że dla mnie najlepsze rozwiązanie tego problemu znaleziono na tej stronie linuksowej

Zasadniczo nadal wywołuje /etc/init/failsafe.conf, ale komentuje dwa wywołania uśpienia, które spowodowały opóźnienie. Naprawdę nie rozumiem, dlaczego zostały dodane, ponieważ moja sieć jest skonfigurowana bez opóźnień.

Przetrząsać
źródło
3

używam

eth0 inet dhcp

Nie widzę sensu, kiedy nie ma łącza (brakuje kabla). Nie ma możliwości, aby dhcp mógł uzyskać adres, jeśli nie ma mediów. To jest błąd

wah
źródło
1
używam tego samego kodu, ale wciąż muszę czekać na konfigurację sieci za każdym razem.
Matthew Wilson
2

Niedawno miałem właśnie ten sam problem. Próbowałem wejść i skomentować czas snu w /etc/init/failsafe.confpliku i skończyło się na tym, że system po prostu ciągle próbuje się uruchomić. Naprawiłem ten błąd, uruchamiając się w trybie awaryjnym i wpadając do powłoki roota i wykonując następujące czynności, aby mieć uprawnienia rw:

mount -o remount,rw / 

Następnie wydałem następujące polecenie, które wywołało plik, aby móc go edytować z powrotem do stanu oryginalnego:

sudo nano /etc/init/failsafe.conf 

Zapisz i wyjdź, a następnie uruchom ponownie system.

clrn0979
źródło
Czy możesz powiedzieć, co edytowałeś w pliku failedafe.conf. Czy skomentowałeś połączenia snu? Próbowałem tego kilka lat temu bezskutecznie.
Léo Léopold Hertz
2
Absolutnie. Po przejściu do pliku failafe.conf po prostu poszukaj wywołań uśpienia. Mój ponownie ustawiłem odpowiednio na 5, 40 i 59. Nie udało mi się jednak skutecznie skomentować wywołań uśpienia, ponieważ spowodowało to ciągły rozruch systemu.
clrn0979,
2

Użyj allow-hotplugzamiast autow /etc/network/interfacespliku, np . allow-hotplug enp0s25Wtedy iface enp0s25 inet dhcp. Mówi to serwerowi, aby nie czekał, aż interfejs zaświeci się odpowiedzią dhcp. - - Komentarz dr Zim.

rev Léo Léopold Hertz 준영
źródło
1
Gdybym mógł dwukrotnie zagłosować na tę odpowiedź, zrobiłbym to! Dziękuję :)
Ole Henrik Skogstrøm,