Le service de réseau ne parvient pas à démarrer/ne démarre pas au redémarrage.
Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code.
Je peux toujours accéder au serveur via la console distante, mais rien d’autre, car sans réseau, il n’ya pas d’entrée ni de sortie.
systemctl status networking.service dit:
● networking.service - Raise network interfaces
Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor prese
t: enabled)
Drop-In: /run/systemd/generator/networking.service.d
└─50-insserv.conf-$network.conf
Active: failed (Result: exit-code) since Mo 2016-04-18 06:53:11 UTC; 43s ago
Docs: man:interfaces(5)
Process: 3551 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=
1/FAILURE)
Process: 3546 ExecStartPre=/bin/sh -c [ "$CONFIGURE_INTERFACES" != "no" ] && [
-n "$(ifquery --read-environment --list --exclude=lo)" ] && udevadm settle (cod
e=exited, status=0/SUCCESS)
Main PID: 3551 (code=exited, status=1/FAILURE)
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: For info, please visit htt
ps://www.isc.org/software/dhcp/
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: Usage: dhclient [-4|-6] [-
SNTP1dvrx] [-nw] [-p <port>] [-D LL|LLT]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: [-s server
-addr] [-cf config-file] [-lf lease-file]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: [-pf pid-f
ile] [--no-pid] [-e VAR=val]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: [-sf scrip
t-file] [interface]
Apr 18 06:53:11 h2502988.stratoserver.net ifup[3551]: Failed to bring up eth0.
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: networking.service: Main p
rocess exited, code=exited, status=1/FAILURE
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: Failed to start Raise netw
ork interfaces.
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: networking.service: Unit e
ntered failed state.
Apr 18 06:53:11 h2502988.stratoserver.net systemd[1]: networking.service: Failed
with result 'exit-code'.
Mon/etc/network/interfaces ressemble à ceci:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
Où puis-je commencer à déboguer?
Merci pour tout indice! Cordialement, K
# Sudo ifup --verbose eth0
Configuring interface eth0=eth0 (inet)
/bin/run-parts --exit-on-error --verbose /etc/network/if-pre-up.d
run-parts: executing /etc/network/if-pre-up.d/ethtool
run-parts: executing /etc/network/if-pre-up.d/wireless-tools
run-parts: executing /etc/network/if-pre-up.d/wpasupplicant
/sbin/dhclient -1 -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases -I -df /var/lib/dhcp/dhclient6.eth0.leases eth0
Internet Systems Consortium DHCP Client 4.2.4
Copyright 2004-2012 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Usage: dhclient <snip>
Failed to bring up eth0.
Cela m'est juste arrivé. La raison en était qu’une incohérence dans la dépendance des paquets avait interrompu ma mise à niveau de trusty à xenial; certaines versions de paquets étaient donc incohérentes. Dans mon cas, l'incohérence a été causée par squid3 et ca-certificates-Java.
J'ai restauré la connexion réseau en exécutant simplement dhclient eth0
. Après avoir résolu le problème d'incohérence du package en supprimant les packages incriminés et en exécutant apt-get install -f
, j'ai exécuté apt-get dist-upgrade
et apt-get install ubuntu-standard
. Cela a complètement résolu mon problème.
Ce qui m'a amené à suspecter cette incohérence, c'est que /sbin/ifup
binary contenait la ligne de commande obsolète dhclient
avec l'option non supportée -I
. Ce doit être une incohérence dans la version du paquet.
Je suppose que vous venez d'installer/de mettre à niveau vers un système d'exploitation plus récent, tel que Ubuntu 16.04, et qu'en raison du changement de schéma de nommage d'interface traditionnel, tel que eth0
ou eth1
, le système ne peut pas démarrer votre interface.
Essayez de modifier votre /etc/network/interfaces
afin d'utiliser soit ens32
ou ens192
au lieu de eth0
comme
# The loopback network interface
auto lo
iface lo inet loopback
# The Ethernet interface
auto ens192
iface ens192 inet dhcp
Cela devrait vous permettre de redémarrer l'interface réseau. J'espère que ça aide. Pour plus de détails sur les modifications prédictives de l'interface réseau
https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
Pas sûr que cela soit toujours utile: il semble que le dhclient n’ait plus les options "-I" ou "-df", ce qui, selon la page de manuel , est DDNS:
-I Utilisez le schéma standard DDNS des RFC 4701 et 4702.
Une fois que je supprime cette option de la ligne de commande, dhclient est capable d’afficher eth0.
[EDIT] : Maintenant, si je pouvais trouver où est l'option "-I" ...
J'avais un problème similaire à OP et à Wei Wang, où ifup
essayait de lancer dhclient avec l'option -I
, mais mon dhclient était une version antérieure qui ne le supportait pas. Je suppose que cela était dû à mon ancien moyen hacky de télécharger/installer Xenial (16.04) Chromium tout en conservant mon système sous Trusty (14.04). Il doit également avoir mis à niveau certaines autres parties de mon système.
En résumé, ma solution consistait à télécharger et à installer manuellement les packages pertinents liés à dhclient dans Xenial en amont. Trois packages sont requis et il doit être installé dans l'ordre suivant:
Après cela, dhclient --version
a montré que j’avais 4.3.3 qui prend en charge l’option -I
, et j’ai pu utiliser ifup
à nouveau.
Essaye ça:-
Sudo ifdown --exclude=lo -a && Sudo ifup --exclude=lo -a
Donc, remplacez networking restart
par ifdown... && ifup....
Juste à part: ifconfig
est également obsolète depuis longtemps - utilisez ip
du paquet iproute2
Tu pourrais essayer aussi
ifconfig eth0 down && ifconfig eth0 up
(ou quelle que soit votre interface réseau) pour redémarrer le réseau.
@jos mentionne dans un commentaire sur le message d'origine:
La présence des lignes "Usage: ..." donne l’impression que la commande dhclient échoue car il existe une erreur dans les paramètres ...
J'ai eu ce problème précis et la journalisation prolixe était l'indice.
ifup --verbose eth0
Recherchez la sortie expliquant les paramètres DHCP.
J'ai ensuite pris la sortie de:
/sbin/dhclient -4 -v -pf /run/dhclient.eth0.pid -if /var/lib/dhcp/dhclient.eth0.leases -I -df /var/lib/dhcp/dhclient6.eth0.leases eth0
simplement:
/sbin/dhclient -4 -v -pf /run/dhclient.eth0.pid eth0
et puis j'ai eu une adresse.
Je pense que certaines mises à jour logicielles ont empêché le client d'être synchronisé avec ce qui se passait sur mon système Debian 7.11.