Impossible de démarrer le service «réseau» de CentOS 7

23

Je ne peux pas démarrer le service "réseau" de CentOS 7 après avoir désactivé et supprimé le service "NetworkManager". Lorsque je vérifie l'état du service réseau, il se produit l'erreur suivante:

#systemctl status network.service
network.service - LSB: Bring up/down networking
   Loaded: loaded (/etc/rc.d/init.d/network)
   Active: failed (Result: exit-code) since Fri 2015-01-16 22:30:46 GMT; 38s ago
  Process: 4857 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=1/FAILURE)

Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain network[4857]: RTNETLINK answers: File exists
Jan 16 22:30:46 localhost.localdomain systemd[1]: network.service: control process exited, code=exited status=1
Jan 16 22:30:46 localhost.localdomain systemd[1]: Failed to start LSB: Bring up/down networking.
Jan 16 22:30:46 localhost.localdomain systemd[1]: Unit network.service entered failed state.

Dans les versions antérieures de CenOS, il ne semblait pas poser de problème lors du passage du service "NetworkManager" au service réseau. Avez-vous des idées sur la cause du problème et comment le résoudre?

Remarque: J'ai utilisé l'effacement yum pour supprimer le service de gestion de réseau.

Voici des informations supplémentaires comme demandé:

/etc/sysconfig/network-script/ifcfg-enp8s0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp8s0
UUID=453a07fe-1b07-4f29-bc32-f2168e50706a
ONBOOT=yes
HWADDR=XXXXXXXXXXX
MACADDR=XXXXXXXXXX
PEERDNS=yes
PEERROUTES=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes

/etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

/etc/resolv.conf
; generated by /usr/sbin/dhclient-script
search customer.marples.midcity.lan
nameserver 10.241.128.1
Gazel
la source
Étant donné que je ne peux pas poster de commentaire en raison de ma mauvaise réputation, je poste ceci comme une réponse, ce qui n'est PAS censé être. <br/> <br/> Pouvez-vous publier ce qui suit: <br/> <br/> /etc/sysconfig/network-script/ifcfg-eth0<br/> /etc/hosts<br/> /etc/resolv.conf<br/> <br/> Vous voudrez peut-être vérifier vos itinéraires configurés pour cette carte réseau spécifique (trouvé dans /etc/sysconfig/network-scripts/route-<interface>), car cela pourrait provoquer des erreurs similaires. <br/> <br/> Avez-vous essayé ifdown eth0et ifup eth0au lieu de systemctl (re)start network? Avez-vous désactivé / désinstallé en Network Managerutilisantyum remove
Mosh Pit
Salut, merci pour le réapprovisionnement. J'ai mis à jour mes informations de question ci-dessus, jetez un œil. Oui, j'ai utilisé l'effacement yum pour supprimer le service NetworkManager. Je n'ai pas essayé les ifdown eth0 et ifup eth0, hoever Ma connexion réseau est toujours opérationnelle malgré la suppression du service networkmanager et l'impossibilité de démarrer le service réseau.
Gazel
Vous avez HWADDR=XXXXXXXXXXX ET MACADDR=XXXXXXXXXX dans votre configuration d'interface. Cela semble être faux, car il semble que ce soit le même. Essayez l'une des choses que j'ai recommandées (en commentant cette partie dans votre configuration), redémarrez et réessayez. Cette boîte CentOS 7 SELinux est-elle en vigueur? Exécutez-vous ce système sur un matériel ou dans un environnement virtuel? hostset resolv.confregardez bien jusqu'à présent.
Mosh Pit
À l'origine, j'ai usurpé le MAC dans l'interface graphique de NetworkManager, il a donc ajouté le faux MACADDR en plus du vrai HWADDR, c'est pourquoi il est là. Dois-je supprimer la ligne MACADDR? Les lectures d'état SELinux sont activées. Je l'exécute sur un matériel.
Gazel
Essayez de commenter HWADDRet / ou MACADDR, je pense que le retrait MACADDRdevrait être suffisant. Redémarrez la boîte entière et regardez si le réseau fonctionne correctement. De plus, si vous ne l'utilisez pas IPv6, emportez cette merde là-bas. Vous pouvez également vérifier votre HWADDR en utilisant cat /sys/class/net/ens192/addresspour vous assurer qu'il est correctement configuré.
Mosh Pit

Réponses:

31

Dans Centos7.0, la désactivation de NetworkManager laissera un client DHCP exécuté configuré pour NetworkManager. Cela provoque le message d'erreur RTNETLINK answers: File existslorsque le networkservice est démarré.

Le dhclientprocessus périmé a l '"avantage" supplémentaire que lorsque le bail expire, vous vous dhclientétoufferez, car il ne pourra pas atteindre NetWorkManager, supprimant ainsi votre adresse IP.

Si vous le grepsouhaitez, vous verrez qu'il pointe vers un fichier de configuration NetWorkManager.

[root@host ~]# ps -ef | grep dhc
root      1865   792  0 Apr28 ?        00:00:00 /sbin/dhclient -d -sf \
 /usr/libexec/nm-dhcp-helper -pf /var/run/dhclient-eno1.pid -lf\
 /var/lib/NetworkManager/dhclient-c96e56d3-a4c9-4a87-85ca-93dc0ca268f2-eno1.lease\
 -cf /var/lib/NetworkManager/dhclient-eno1.conf eno1

Donc, ce que vous pouvez faire est de tuer le dhclient, puis de démarrer votre service réseau.

Hans Then
la source
Oui, tuer dhclient a résolu le problème pour moi. Merci
MichaelZ
6
Je n'ai pas non plus assez de réputation pour commenter, mais je voulais soutenir la réponse de Hans et ajouter que je devais changer la bootproto en "none" dans mes fichiers ifcfg. Le dhclient était uniquement appelé lors de la tentative de redémarrage du réseau, et la suppression du processus dhclient n'a pas aidé, car un autre apparaîtrait à sa place. La modification des fichiers ifcfg a résolu mon problème.
onlyanegg
5

Un conflit IP provoquera également cette erreur. Essayez systemctl stop networkalors ifup eth0.

spoovy
la source
1

Un échec pour obtenir une adresse IP à partir du DNS donnera également cette erreur comme je viens de le trouver. En fait, il semble que toute erreur de mise en réseau provoquera cette erreur. Cela semble être un problème avec CentOS 7 en ce qu'il donne une très mauvaise erreur ici.

MikeKulls
la source
1

car il a déjà été identifié - cette erreur apparaît avec tout problème lors de la configuration du réseau: conflit IP, problèmes de routage, etc.

Regardez vos paramètres de passerelle pour confirmer vos portes d' entrée sont réglées correctement et les choses sont ce dont ils ont besoin pour être avec /etc/syscofig/networket chacun des /etc/sysconfig/network-scripts/ifcfg-*look pour IP en double, itinéraires définis par /etc/sysconfig/network-scripts/route-*si la mémoire me sert des passerelles à droite peuvent maintenant être définies à la fois ifcfg-*et les route-*fichiers. Confirmez donc qu'il n'y a pas de duplication ou de chevauchement.

Droopy4096
la source
1

Il semble que cela se produise également si vous configurez manuellement une interface qui n'est pas connectée au réseau.

aryeh
la source
1

Moi aussi, j'ai fait face à cela aujourd'hui sur une machine virtuelle clonée CentOS 7.2. C'est ainsi que je l'ai corrigé.

systemctl disable NetworkManager
systemctl enable network

Recherchez l'adresse MAC de l'interface via la commande /sbin/ifconfig -aet ajoutez-la dans /etc/sysconfig/network-scripts/ifcfg-<interface_name>. Vous pouvez utiliser les commandes ci-dessous pour la première interface.

nic_file=`ls /etc/sysconfig/network-scripts/ifcfg-e*`
ifconfig -a | grep ether | awk '{ print $2 }' | sed 's/.*/HWADDR=&/' >> ${nic_file}

Puis tirez rebootpour redémarrer le serveur

vikas027
la source
0

Regardez dans les scripts réseau s'il n'y a aucune autre interface qui pourrait planter network.service

faites un ifconfig et notez l'interface. Comparez avec les fichiers dans les scripts réseau. S'il y a plus de fichiers dans les scripts réseau que d'interfaces dans ifconfig, vous pouvez supprimer les fichiers inutiles supplémentaires, puis faire un redémarrage du système systemctl.

Nicolas Guérinet
la source
0

Eu cette erreur après le clonage d'un serveur virtuel, le clone a reçu une nouvelle adresse matérielle (MAC) et la configuration de la carte réseau avait toujours l'ancienne.

La ligne ressemble à: HWADDR = 00: 00: 00: 00: 00: 00

WhoIsRich
la source
0

J'ai rencontré ce problème, où le serveur continue de me donner RTNETLINK answers: File existsmême après la suppression du gestionnaire de réseau et une triple vérification de toute ma configuration réseau.

Il semble qu'une IP était en place sur un autre serveur et que le serveur filtre ICMP (donc pas de ping), premières choses que j'ai essayées. Ne vous fiez donc pas au ping pour tester si une adresse IP est active ou non!

Au démarrage, le script réseau émet cette commande (changez votre dev et ip)

/sbin/arping -c 2 -w 3 -D -I eth0 10.196.132.206

Qui nous disent qu'une adresse mac est associée à cette IP et échoue au script réseau ( ifupou systemctl start network)

Alban M
la source
0

J'ai également rencontré des problèmes similaires. Pour modifier les fichiers de configuration (ifcfg-ensxxxx), comme suit, entrez la description de l'image ici

  • Liste commentée "UUID = xxxx-xxxx"
  • Ajouter une nouvelle option:, NM_CONTROLLED=nocela indique que cette interface sera configurée à l'aide de ce fichier de configuration, au lieu d'être gérée par le service Network Manager.

Référence: comment configurer une adresse IP statique sur CentOS 7

Colin Chen
la source