Ubuntu 16.04 - sistem önyüklemesi “Ağ arabirimlerini yükseltin” demeyi bekliyor


42

İki arayüzlü bir Ubuntu 16.04 sistemim var - DHCP ile yapılandırılmış eth0 ve statik ip adresleriyle yapılandırılmış eth1.

/ Etc / network / interfaces dosyası aşağıdaki yapılandırmaya sahiptir.

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet dhcp

# The Secondary network interface
auto eth1
iface eth1 inet static
address 10.10.1.10
netmask 255.255.255.0
dns-nameservers 74.82.42.42 4.2.2.2

## Virtual Interfaces for virtual hosts
auto eth1:11
iface eth1:11 inet static
address 10.10.1.11
netmask 255.255.255.0

auto eth1:12
iface eth1:12 inet static
address 10.10.1.12
netmask 255.255.255.0

auto eth1:13
iface eth1:13 inet static
address 10.10.1.13
netmask 255.255.255.0

Mesele şu ki, DHCP sunucusu eth0 linkinde mevcut değilse veya eth0 link kapalıysa, sistem 5 dakika askıda kalıyor ve önyükleme işlemini önemli ölçüde yavaşlatıyor.

violet@ubuntu-xenial:~$ systemd-analyze blame
      5min 241ms networking.service
          1.529s nmbd.service
          1.524s winbind.service

Sistemin ağ servisini beklemeden daha hızlı önyüklenmesini sağlayan /etc/systemd/system/network-online.target.wants/networking.service dosyasındaki süreyi azaltmayı denedim, ancak bu, sanal arabirimleri eth1'e yüklemeyi başaramadı.

Eth0 arabiriminde tam ağ yapılandırması olmadan sistemin önyüklenmesini ve yine de eth1'deki tüm statik ağ yapılandırmasını yüklemesini sağlamak için daha temiz bir yol var mı?



Yanıtlar:


50

Görünüşe göre, birisi DHCP’yi zamanında alamayan bir müşteri hakkında paranoyak görünüyor.

Bu dosyayı düzenleyin /etc/dhcp/dhclient.confve timeoutgibi makul bir değere ayarlayın .

timeout 15

300 saniyelik varsayılan değer çok yüksek. Önerilen 15'lik değiştirme değeri test edildi ve iyi çalışıyor.


3
Teşekkür ederim. Şu anda DNS / DHCP Labing ve 5 dakikalık bekleme beni öldürüyordu.
Ashley Hughes

1
Ubuntu'da bir dizi garip varsayılan yapılandırma vardır. İlginçti ...
William T Froggard

Vay canına, bu başka yapılandırmalarda gerçekten faydalı olacak.
David Tabernero M.

1
Bu Ubuntu 18'de işe yaramaz, ancak bu cevap işe yaramaz.
xinthose

Bunca yıldan sonra hala benim için geçerli :)
Wajih

27

Yani, senin içinde /etc/network/interfaces, bunu değiştir:

# The primary network interface
auto eth0
iface eth0 inet dhcp

buna:

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

Bu eth0, çekirdek önyüklemede başlatmak yerine, arabirimden bir hotplug olayı algıladığında (yani bir kablo taktığınızda) arabirimi başlatır.


1
Bu yaklaşım fiziksel donanımda iyi çalışır, ancak sanallaştırılmış ortamlarda (denilen vmware ve virtualbox) başarısız olur. Sanallaştırılmış çekirdeğin uygun olaylar oluşturmadığı anlaşılıyor.
dtoubelis

Bu yaklaşım aynı zamanda daha önce yalnızca 1G olan bir kutuya yeni bir 10G ağ bağdaştırıcısı kurduktan sonra sorunlarımı düzeltti. Ubuntu kartı görebildi ve sürücüleri yükleyebildi, ancak önyükleme Ağ Arayüzlerini Yükseltme için beklemeye devam etti. Cihaz adının eth0'dan ayarlanması buna göre düzeltildi.
Joseph Jaramillo

2

Başvurulan gibi (koşu eğer ağ arabirimini yetiştirmek için zaman aşımı değerini değiştirebilirsiniz size systemd):

Bir terminal penceresi açın ve şu komutu girin:

sudo nano /etc/systemd/system/network-online.target.wants/networking.service

Ardından çizgiyi TimeoutStartSec=5minseçtiğiniz bir değere değiştirin . Ctrl+ oVe ardından Ctrl+ tuşlarına basarak dosyayı kaydedin x.

Son olarak, arka plan programı yeniden başlatın:

sudo systemctl daemon-reload

4
Genellikle sudo kullanarak bir GUI programı başlatmak kötü bir fikirdir ... Cevabınızı biraz daha iyi davranan araçları kullanmak için değiştirdim.
Charles Green

Bu benim için doğru cevap. Bilgisayarım açılışta her zaman ağa bağlı değil. Ubuntu'nun bunu çözmesi için 5 dakika beklemek istemiyorum.
Yitz

2
Aptalın kim olduğunu bilmek isterdim, 5 dakikalık bir zaman aşımının “iyi bir fikir” olduğunu düşünürdüm.
Clayton Dukes,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.