web-dev-qa-db-ja.com

networking.serviceが起動時に起動を拒否する(loの起動に失敗した、ファイルが存在する)

暗号化されたスワップパーティションを設定しようとしたため( 暗号化されたスワップパーティションが/ dev/mapperに表示されない )、ブート時にnetworking.serviceを開始できなかったというエラーが表示されます。

エラーメッセージに記載されているコマンドを実行すると、次の情報が得られます。

$ systemctl status networking.service 
● networking.service - Raise network interfaces
   Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
  Drop-In: /run/systemd/generator/networking.service.d
           └─50-insserv.conf-$network.conf
   Active: failed (Result: exit-code) since Mi 2016-08-10 22:57:45 CEST; 10min ago
     Docs: man:interfaces(5)
  Process: 4424 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=1/FAILURE)
  Process: 4417 ExecStartPre=/bin/sh -c [ "$CONFIGURE_INTERFACES" != "no" ] && [ -n "$(ifquery --read-environment --list --exclude=l
 Main PID: 4424 (code=exited, status=1/FAILURE)

Aug 10 22:57:45 BC-AlkaliMetal systemd[1]: Starting Raise network interfaces...
Aug 10 22:57:45 BC-AlkaliMetal ifup[4424]: RTNETLINK answers: File exists
Aug 10 22:57:45 BC-AlkaliMetal ifup[4424]: Failed to bring up lo.
Aug 10 22:57:45 BC-AlkaliMetal systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
Aug 10 22:57:45 BC-AlkaliMetal systemd[1]: Failed to start Raise network interfaces.
Aug 10 22:57:45 BC-AlkaliMetal systemd[1]: networking.service: Unit entered failed state.
Aug 10 22:57:45 BC-AlkaliMetal systemd[1]: networking.service: Failed with result 'exit-code'.

@ Rinzwind のおかげで、この問題はtemporaryloデバイスをフラッシュすることで解決できます。

bytecommander@BC-AlkaliMetal:~$ Sudo ip addr flush dev lo
bytecommander@BC-AlkaliMetal:~$ Sudo service networking start
bytecommander@BC-AlkaliMetal:~$ systemctl status networking.service 
● networking.service - Raise network interfaces
   Loaded: loaded (/lib/systemd/system/networking.service; enabled; vendor preset: enabled)
  Drop-In: /run/systemd/generator/networking.service.d
           └─50-insserv.conf-$network.conf
   Active: active (exited) since Mi 2016-08-10 22:55:06 CEST; 5s ago
     Docs: man:interfaces(5)
  Process: 9057 ExecStart=/sbin/ifup -a --read-environment (code=exited, status=0/SUCCESS)
  Process: 9052 ExecStartPre=/bin/sh -c [ "$CONFIGURE_INTERFACES" != "no" ] && [ -n "$(ifquery --read-environment --list --exclude=l
 Main PID: 9057 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/networking.service

Aug 10 22:55:06 BC-AlkaliMetal systemd[1]: Starting Raise network interfaces...
Aug 10 22:55:06 BC-AlkaliMetal systemd[1]: Started Raise network interfaces.

しかし、次回の再起動時に同じ問題が再び発生します。

これは私の/etc/network/interfaces設定ファイルです:

# interfaces(5) file used by ifup(8) and ifdown(8)
iface lo inet static
   address 127.0.0.1
   netmask 255.0.0.0

ここで何が間違っているのか、それを修正する方法は?

2
Byte Commander

/etc/network/inerfacesでループバックインターフェイスが正しく構成されていません:

iface lo inet static
    address 127.0.0.1
    netmask 255.0.0.0

ループバックインターフェイス(lo)はシステムに「特別」であると見なされ、そのように分類する必要があります。これを容易にするために、ループバックインターフェイスへの参照を削除し、デフォルトに置き換える必要があります。

auto lo
iface lo inet loopback

この変更を行った後にnetworkingサービスを再起動すると、システムはそれを適切に取得し、loを起動する際のエラーを修正できるはずです。

5
Kaz Wolfe