O serviço de rede falha ao iniciar / não inicia na reinicialização.
Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code.
Ainda consigo acessar o servidor via console remoto, mas nada mais, pois sem rede, não há saída nem entrada.
systemctl status networking.service diz:
● 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'.
Meu / etc / network / interfaces é parecido com:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
Onde posso começar a depurar?
Obrigado por qualquer dica! Atenciosamente, 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.
networking
server
16.04
Katja Süss
fonte
fonte
up
executando, um por um, os scripts localizados/etc/network/if-up.d
. Um deles contém umdhclient
comando que falha. Então faça algo parecidogrep -R dhclient /etc/network/if-up.d/*
e veja o que você recebe.sudo ifup --verbose eth0
para ver onde as coisas dão errado?/var/log/syslog
. Você pode tentar executar odhclient
comando manualmente por conta própria. Se nenhuma mensagem de erro aparecer, não haverá problemadhclient
.Respostas:
Isto somente aconteceu para mim. O motivo foi que houve uma inconsistência de dependência de pacote que interrompeu minha atualização de confiável para xenial; portanto, algumas versões de pacote foram inconsistentes. No meu caso, a inconsistência foi causada pelo squid3 e ca-certificates-java.
Eu restaurei a conexão de rede executando apenas
dhclient eth0
. Após resolver a inconsistência do pacote removendo os pacotes incorretos e executandoapt-get install -f
, executeiapt-get dist-upgrade
eapt-get install ubuntu-standard
. Isso resolveu meu problema completamente.O que me levou a suspeitar da inconsistência é que o
/sbin/ifup
binário continha adhclient
linha de comando desatualizada com a-I
opção não mais suportada . Deve ser uma inconsistência da versão do pacote.fonte
Estou assumindo que você acabou de instalar / atualizar para um sistema operacional mais recente, como o Ubuntu 16.04, e devido à saída dos esquemas de nomenclatura da interface tradicional, como
eth0
oueth1
, o sistema não pode iniciar a interface.Tente editar o seu
/etc/network/interfaces
para usarens32
ou emens192
vez deeth0
comoIsso deve permitir a reinicialização da interface de rede. Espero que ajude. Para detalhes sobre as alterações preditivas na interface de rede
https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
fonte
ip link show
e descobrir qual ens se aplica a você)Não tenho certeza se isso ainda é útil: parece que o dhclient não possui mais a opção "-I" ou "-df", que de acordo com a página do manual DDNS:
Depois de remover essa opção da linha de comando, o dhclient pode ativar o eth0.
[EDIT] : Agora, se eu pudesse encontrar onde está a opção "-I" ...
fonte
Eu tive um problema semelhante ao OP e Wei Wang, onde
ifup
estava tentando executar o dhclient com a-I
opção, mas meu dhclient era uma versão mais antiga que não era compatível. Meu palpite é que isso ocorreu devido à minha maneira hacky anterior de baixar / instalar o Xenial (16.04) Chromium enquanto mantinha meu sistema em Trusty (14.04), ele também deve ter atualizado algumas outras partes do meu sistema.Para encurtar a história, minha solução foi baixar e instalar manualmente os pacotes relevantes relacionados ao dhclient no Xenial upstream. São necessários três pacotes, e ele precisa ser instalado na seguinte ordem:
Depois disso,
dhclient --version
mostrei que tinha o 4.3.3, que suporta a-I
opção, e consegui usá-loifup
novamente.fonte
Experimente o seguinte: -
Então substitua
networking restart
porifdown... && ifup....
Apenas como um aparte:
ifconfig
também foi descontinuado por um longo tempo - useip
do pacoteiproute2
Você poderia tentar também
(ou como a interface de rede é chamada) para reiniciar a rede.
fonte
@jos menciona em um comentário na postagem original:
Eu tive esse problema preciso e o log detalhado foi a dica.
ifup --verbose eth0
Procure a saída que explica os parâmetros DHCP.
Então peguei a saída 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
simplesmente:
/sbin/dhclient -4 -v -pf /run/dhclient.eth0.pid eth0
e então eu consegui um endereço.Eu acredito que algumas atualizações de software fizeram o dhclient ficar fora de sincronia o que estava acontecendo no meu sistema Debian 7.11.
fonte