
네트워킹 서비스가 시작되지 않거나 재부팅 시 시작되지 않습니다.
Restarting networking (via systemctl): networking.serviceJob for networking.service failed because the control process exited with error code.
여전히 원격 콘솔을 통해 서버에 액세스할 수 있지만 네트워크가 없으면 나갈 수도 들어갈 수도 없기 때문에 다른 것은 없습니다.
systemctl status네트워킹.서비스는 다음과 같이 말합니다.
● 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'.
내 /etc/network/interfaces는 다음과 같습니다:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
어디에서 디버깅을 시작할 수 있나요?
힌트를 주셔서 감사합니다! 감사합니다, 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.
답변1
나에게 이런 일이 일어났습니다. 그 이유는 Trusty에서 Xenial로의 업그레이드를 방해하는 패키지 종속성 불일치가 있어서 일부 패키지 버전이 일관성이 없었기 때문입니다. 내 경우에는 squid3 및 ca-certificates-java로 인해 불일치가 발생했습니다.
그냥 실행하여 네트워크 연결을 복원했습니다 dhclient eth0
. 문제가 되는 패키지를 제거하고 를 실행하여 패키지 불일치를 해결한 후 및 를 apt-get install -f
실행했습니다 . 이것은 내 문제를 완전히 해결했습니다.apt-get dist-upgrade
apt-get install ubuntu-standard
불일치가 의심되는 이유는 바이너리에 더 이상 지원되지 않는 옵션이 /sbin/ifup
포함된 오래된 명령줄이 포함되어 있기 때문입니다 . 패키지 버전 불일치여야 합니다.dhclient
-I
답변2
eth0
Ubuntu 16.04와 같은 최신 OS로 방금 설치/업그레이드했으며 또는 같은 전통적인 인터페이스 명명 체계에서 벗어났기 때문에 eth1
시스템이 인터페이스를 시작할 수 없다고 가정합니다 .
좋아요 대신 또는를 /etc/network/interfaces
사용하도록 편집해 보세요.ens32
ens192
eth0
# The loopback network interface
auto lo
iface lo inet loopback
# The Ethernet interface
auto ens192
iface ens192 inet dhcp
그러면 네트워크 인터페이스를 다시 시작할 수 있습니다. 도움이 되었으면 좋겠습니다. 예측 네트워크 인터페이스 변경에 대한 자세한 내용
https://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
답변3
이것이 여전히 유용한지는 확실하지 않습니다. dhclient에는 더 이상 "-I" 또는 "-df" 옵션이 없는 것 같습니다.맨 페이지DDNS는 다음과 같습니다.
-I RFC 4701 및 4702의 표준 DDNS 체계를 사용합니다.
명령줄에서 해당 옵션을 제거하면 dhclient가 eth0을 불러올 수 있습니다.
[편집하다]: 이제 "-I" 옵션이 어디에 있는지 찾을 수 있다면...
답변4
이 시도:-
sudo ifdown --exclude=lo -a && sudo ifup --exclude=lo -a
그래서 networking restart
교체ifdown... && ifup....
여담이지만: ifconfig
또한 오랫동안 더 이상 사용되지 않았습니다. ip
패키지에서 사용하세요.iproute2
당신도 시도해 볼 수 있습니다
ifconfig eth0 down && ifconfig eth0 up
(또는 네트워크 인터페이스의 이름이 무엇이든) 네트워크를 다시 시작합니다.