Debian / etc / network / interfaces не загружается при загрузке (Как исправить состояние гонки)

У меня была конфигурация сервера, которая работала раньше, но недавно я сделал обновление и, похоже, что-то сломалось. Я считаю, что изначально было две проблемы, первую из которых я решил. Когда я просматривал systemctl status network , я заметил, что команда, которую я никогда раньше не видел, дает сбой. Я поискал его, и он был из пакета, который я никогда раньше не видел, ifupdown2 . Я установил его, и эта ошибка устранена. Я предполагаю, что это была немаркированная зависимость, которая была добавлена, потому что мне никогда не требовался этот пакет раньше.

Теперь, когда мой сервер загружается, сетевая служба работает успешно, но ни одна из сетевых конфигураций не установлена:

# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp2s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:1e:2a:c2:08:13 brd ff:ff:ff:ff:ff:ff
# 
# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp2s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:1e:2a:c2:08:13 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::21e:2aff:fec2:813/64 scope link 
       valid_lft forever preferred_lft forever
# 
# ip route # This is not a copy-paste error, it actually just prints nothing
# 
# journalctl -u networking
-- Logs begin at Thu 2019-03-28 15:17:47 CDT, end at Thu 2019-03-28 15:19:18 CDT. --
Mar 28 15:17:51 linux-01 systemd[1]: Starting ifupdown2 networking initialization...
Mar 28 15:17:51 linux-01 networking[572]: networking: Configuring network interfaces
Mar 28 15:17:54 linux-01 systemd[1]: Started ifupdown2 networking initialization.

] Это мой файл / etc / network / interfaces:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug enp2s5
iface enp2s5 inet static
        address 10.0.6.164/24
        gateway 10.0.6.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 8.8.8.8

Странная часть состоит в том, что даже несмотря на то, что сеть успешно запустилась, если я перезагружу его, все работает.

# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp2s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:1e:2a:c2:08:13 brd ff:ff:ff:ff:ff:ff
#
# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp2s5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:1e:2a:c2:08:13 brd ff:ff:ff:ff:ff:ff
    inet 10.0.6.164/24 scope global enp2s5
       valid_lft forever preferred_lft forever
    inet6 fe80::21e:2aff:fec2:813/64 scope link 
       valid_lft forever preferred_lft forever
#
# ip route
default via 10.0.6.1 dev enp2s5 
10.0.6.0/24 dev enp2s5 proto kernel scope link src 10.0.6.164

Я думаю, что это может быть состояние гонки, основанное на это. Я зафиксировал 3 сбоя из journalctl, и все они содержат что-то вроде этого:

Mar 28 15:11:51 linux-01 kernel: r8169 0000:02:05.0 enp2s5: link down
Mar 28 15:11:51 linux-01 kernel: r8169 0000:02:05.0 enp2s5: link down
Mar 28 15:11:51 linux-01 kernel: IPv6: ADDRCONF(NETDEV_UP): enp2s5: link is not ready
Mar 28 15:11:51 linux-01 systemd[1]: Started ifupdown2 networking initialization.
Mar 28 15:11:51 linux-01 systemd[1]: Reached target Network.
Mar 28 15:11:51 linux-01 systemd[1]: Starting Permit User Sessions...
Mar 28 15:11:51 linux-01 systemd[1]: Starting Fail2Ban Service...
...
Mar 28 15:11:54 linux-01 kernel: r8169 0000:02:05.0 enp2s5: link up
Mar 28 15:11:54 linux-01 kernel: IPv6: ADDRCONF(NETDEV_CHANGE): enp2s5: link becomes ready

Похоже, что система пытается загрузить конфигурацию сети до того, как устройство будет готово, но я не знаю, как заставить ее ждать, пока это. Кроме того, не следует ли allow-hotplug enp2s5 сделать синхронизацию несущественной?

Кто-нибудь может подтвердить мою оценку проблемы и может ли кто-нибудь сказать мне, как заставить systemd ждать, пока устройство не будет готово?

Примечание: у меня больше нет физического доступа к серверу, и получить его очень сложно. Я бы предпочел не перезагружаться, пока я не уверен на 100%, что это сработает.

0
задан 29 March 2019 в 18:10
1 ответ

Спасибо @Mark Wagner за его совет:

Я предполагаю, что добавление auto enp2s5 в / etc / network / interfaces исправит это.

Я не уверен, что это за разница между auto и allow-hotplug есть, но, похоже, проблема устранилась.

1
ответ дан 4 December 2019 в 15:44

Теги

Похожие вопросы