Mój banański Linux marnuje czas przy logowaniu, próbując uzyskać dzierżawę DHCP dla interfejsu eth0, który nie jest podłączony. Cóż, kabel przedłużacza jest do niego podłączony, ale nic nie ma na drugim końcu.
mam
auto eth0
iface eth0 inet dhcp
ustawiony w moim, /etc/network/interfaces
ponieważ chcę, aby podnosił Ethernet w przypadku, gdy jest podłączony, ale na pewno nie chcę spowalniać uruchamiania systemu, jeśli kabel nie jest podłączony do sieci Ethernet. Zakładałem, że system rozpozna to automatycznie i nie będzie próbował uzyskać dzierżawy DHCP dla interfejsu.
Oto, co widzę w czasie ładowania (patrz trzy ostatnie wiersze):
Po zrozumieniu, że dzierżawa nie nadchodzi, następuje rozruch.
Czy istnieje sposób, aby powiedzieć mu, aby nie korzystał z DHCP, jeśli nie ma podłączonego kabla?
źródło
udev
przypadku zdarzenie wyzwoli połączenie w czasie uruchamiania? Innymi słowy, czyudev
sprawdza, które urządzenia są już podłączone do portów urządzenia?Zawsze istnieje więcej niż jedno rozwiązanie problemu.
Jeśli korzystasz z tego komputera zawsze w jednym miejscu, np. W domu, najłatwiejszym sposobem jest pozbycie się pakietu klienta dhcp i ustawienie statycznego adresu IP, maski, bramy. Załóżmy, że nie potrzebujesz tego, zrobiłbyś coś takiego
To powie ci najpierw, czy są jakieś zależności. Po odinstalowaniu pakietu nie będziesz już musiał czekać na uruchomienie.
To jest przykład tego, co chciałbyś ustawić w swoim
/etc/network/interfaces
Źródło: https://wiki.debian.org/DHCP_Client
źródło
Spójrz na
ifplugd
:Pakiet Strona wyszukiwania pakietów Debiana: ifplugd .
Oficjalna strona ifplugd
apt-get update && apt-get-install ifplud
Powinno załatwić sprawę. Na marginesie, twórca systemd utrzymuje ten pakiet.źródło
systemd-networkd
...ifplugd
Po instalacji należy również skonfigurować urządzenie (podaćallow-ifplugd
w/etc/network/interfaces
).allow-ifplugd
lub widziałeś kod? Podczas wyszukiwania znalazłem tylko bugs.debian.org/cgi-bin/bugreport.cgi?bug=468896 , co oznacza, żeallow-ifplugd
funkcja nie została zaakceptowana.