web-dev-qa-db-ja.com

CentOS 7「ネットワーク」サービスを開始できません

「NetworkManager」サービスを無効にして削除した後、CentOS 7の「ネットワーク」サービスを開始できません。ネットワークサービスのステータスを確認すると、次のエラーが表示されます。

#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.

以前のCenOSでは、「NetworkManager」サービスからネットワークサービスに切り替えるときに問題が発生するようには見えませんでした。問題の原因と修正方法に関するアイデアはありますか?

注:yum eraseを使用してネットワーク管理サービスを削除しました。

尋ねられた追加情報は次のとおりです。

/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
23
Gazel

Centos7.0では、NetworkManagerを無効にすると、NetworkManager用に構成されたdhcpクライアントが実行されたままになります。これにより、エラーメッセージRTNETLINK answers: File existsnetworkサービスが開始されたとき。

古いdhclientプロセスには、リースが期限切れになるとdhclientが詰まるという追加の「利点」があります。これは、NetWorkManagerに到達できず、IPアドレスが削除されるためです。

grepを指定すると、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

したがって、dhclientを強制終了してから、ネットワークサービスを開始するだけです。

31
Hans Then

IPの競合もこのエラーの原因になります。試してください:systemctl stop network、次にifup eth0

5
spoovy

DNSからIPを取得できないと、このエラーが発生します。実際、ネットワークに関するエラーが原因でこのエラーが発生するようです。これはCentOS 7の問題のようで、ここでは非常に悪いエラーが発生します。

1
MikeKulls

これは、ネットワークに接続されていないインターフェイスを手動で構成した場合にも発生するようです。

1
aryeh

すでに特定されているため、このエラーはネットワークのセットアップ中に問題が発生します:IPの競合、ルーティングの問題など。

ゲートウェイの設定を見て、ゲートウェイが正しく設定されていることを確認します。/etc/syscofig/network/etc/sysconfig/network-scripts/ifcfg-*のそれぞれが重複するIPを探す必要があること、メモリが/etc/sysconfig/network-scripts/route-*を介して設定されたルート正しいゲートウェイがifcfg-*route-*の両方のファイルで設定できるようになりました。重複や重複がないことを確認してください。

1
Droopy4096

私も、CentOS 7.2のクローン仮想マシンでこれに直面しました。これは私がそれを修正した方法です。

systemctl disable NetworkManager
systemctl enable network

コマンド/sbin/ifconfig -aを介してインターフェースのMACアドレスを見つけ、/etc/sysconfig/network-scripts/ifcfg-<interface_name>に追加します。最初のインターフェースには以下のコマンドを使用できます。

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

次にrebootを起動してサーバーを再起動します

1
vikas027

私も同様の問題に遭遇しました。構成ファイルを変更するには(ifcfg-ensxxxx)、次のように ここに画像の説明を入力

  • コメントアウトされたリスト「UUID = xxxx-xxxx」
  • 新しいオプションを追加:NM_CONTROLLED=no、これは、このインターフェースがNetwork Managerサービスによって管理されるのではなく、この構成ファイルを使用してセットアップされることを示します。

参照: CentOS 7で静的IPアドレスを構成する方法

0
Colin Chen

Network.serviceをクラッシュさせる可能性のある他のインターフェースがないかどうか、ネットワークスクリプトを調べます。

ifconfigを実行し、インターフェースを書き留めます。ネットワークスクリプト内のファイルと比較してください。 ifconfigのインターフェースよりもネットワークスクリプトに多くのファイルがある場合は、不要な追加ファイルを削除してから、systemctl restart networkを実行できます。

0

仮想サーバーのクローンを作成した後にこのエラーが発生した場合、クローンには新しいハードウェアアドレス(MAC)が与えられ、ネットワークアダプター構成には古いアドレスがまだ残っています。

行は次のようになります。HWADDR= 00:00:00:00:00:00

0
WhoIsRich

私はこの問題に遭遇しました、そこでサーバーは私に与え続けますRTNETLINK answers: File existsネットワークマネージャーを削除した後でも、すべてのネットワーク構成をトリプルチェックします。

IPが別のサーバーで稼働しており、サーバーがICMPをフィルタリングしている(pingがないため)ようです。 IPが稼働しているかどうかをテストするためにpingに依存しないでください!

起動時に、ネットワークスクリプトはこのコマンドを発行します(devとipを変更します)

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

これは、MACアドレスがこのIPに関連付けられていることを示し、ネットワークスクリプト(ifupまたはsystemctl start network

0
Alban M