Как в Debian Linux можно "на лету", без перезагрузки системы, перечитать настройки сетевого интерфейса, если в файле /etc/network/interfaces были внесены какие-то изменения? Например, если был добавлен дополнительный интерфейс eth0:2 с новым IP-адресом?
Надо сразу сказать, что перезагрузка (выключение и последующее включение) базового интерфейса eth0 через утилиту ip, не приведут к нужному результату. То есть, после команд:
ip link set eth0 down
ip link set eth0 up
... новый IP-адрес не появится. Похоже, что эти команды не перечитывают конфигурацию из файла настройки сети, а помнят ту конфигурацию, которая была при запуске системы. И даже перезапуск сетевого сервиса командой:
systemctl restart networking
... и всякие комбинации вышеуказанных команд тоже не приводят к тому, что бы появился дополнительный интерфейс с нужным IP.
Так можно ли в Debian, без перезагрузки системы, перечитать конфигурацию сетевого интерфейса? Да, можно, и делается это не новомодной утилитой ip, а старыми утилитами ifdown и ifup, которые несколько раз пытались исключить из дистрибутива, но каждый раз оказывалось, что без них сетевую подсистему не настроишь.
Для перечитывания конфигурации сети, в Debian можно под пользователем root выполнить команду:
ifdown --all && ifup --all
После чего стоит подождать около 10 секунд, и проверить, появился ли новый дополнительный интерфейс с новым IP.
Кстати, если в конфигах просто меняется IP-адрес, то после команд выключения и поднятия интерфейса тоже нужно выжидать около 10 секунд. Если сразу проверить IP-адрес, то если не учесть что он меняется с задержкой, можно подумать что настройки не сработали и броситься переконфигурировть дальше. А на самом деле все было сделано правильно и надо было просто немного подождать.
Однако иногда вышеприведенные команды просто так не сработают. Возможно, что будет возникать ошибка RTNETLINK answers: File exists даже если все конфиги написаны правильно. В этом случае следует выполнить команду очистки (сброса) настроек сетевого интерфейса:
ip addr flush dev eth0
А после нее уже пытаться опустить и поднять интерфейс.
Данная информация актуальна для Debian вплоть до версии 11, и, возможно, в Debian 12 тоже будет работать.