web-dev-qa-db-fra.com

Ubuntu 16.04 - L'initialisation du système attend que le message "Augmente les interfaces réseau"

J'ai un système Ubuntu 16.04 avec deux interfaces - eth0 configuré avec DHCP et eth1 configuré avec des adresses IP statiques.

Le fichier/etc/network/interfaces a la configuration suivante

# 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

Le problème est que, lorsque le serveur DHCP n'est pas disponible sur le lien eth0 ou si le lien eth0 est en panne, le système se bloque pendant 5 minutes, ce qui ralentit considérablement le processus de démarrage.

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

J'ai essayé de réduire le temps dans /etc/systemd/system/network-online.target.wants/networking.service qui accélère le démarrage du système sans attendre le service réseau, mais ne parvient pas à charger les interfaces virtuelles sur eth1.

Existe-t-il un moyen plus simple de laisser le système démarrer sans configuration réseau complète sur l'interface eth0 tout en chargeant la configuration réseau statique sur eth1?

39
jana

Il semble que quelqu'un était paranoïaque à propos d'un client qui ne reçoit pas son DHCP à temps.

Editez ce fichier /etc/dhcp/dhclient.conf et définissez timeout sur une valeur raisonnable, comme

timeout 15

La valeur par défaut de 300 secondes est beaucoup trop élevée. La valeur de remplacement suggérée de 15 a été testée et fonctionne bien.

47
boutch55555

Donc, dans votre /etc/network/interfaces, changez ceci:

# The primary network interface
auto eth0
iface eth0 inet dhcp

pour ça:

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

Ceci démarrera l'interface eth0 lorsque le noyau détectera un événement hotplug à partir de l'interface (c'est-à-dire lorsque vous branchez un câble), au lieu de le démarrer au démarrage.

25
Jonathan Walter

Comme indiqué dans vous pouvez modifier la valeur du délai d’expiration pour la remontée de l’interface réseau (si vous exécutez systemd):

Ouvrez une fenêtre de terminal et entrez la commande suivante:

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

Puis changez la ligne TimeoutStartSec=5min en une valeur que vous choisissez. Enregistrez le fichier en appuyant sur Ctrl+o et alors Ctrl+x.

Enfin, redémarrez le démon:

Sudo systemctl daemon-reload
2
Mike