Есть ли веские причины не отключать /etc/init.d/network на centos-7 в пользу исключительно использования NetworkManager?

Конфигурация сети rhel-7/centos-7 является причудливой - в основном потому, что они находятся между старым (сценарии оболочки, обычно вызываемые /etc/init.d/network, которые изменяют состояние конфигурации сетевых устройств) и новым способом (демон NetworkManager, который управляет настройками сетевого устройства).

Насколько я понимаю, rhel7 / centos-7 одновременно поддерживают оба режима конфигурации для сетевых устройств. Они используют плагин для NetworkManager, называемый ifcfg-rh, который считывает / записывает конфигурацию сети из / etc / sysconfig / network-scripts / ifcfg- *, при этом конфигурация, поступающая в NetworkManager из этих файлов при запуске, и изменения, сделанные через NetworkManager (иногда), сериализуются (иногда) вернуться к этим файлам через плагин ifcfg-rh во время работы системы (который включает переводы в / из странного устаревшего формата файла конфигурации в / etc / sysconfig / network-scripts / ifcfg- * - формат, который первоначально интерпретировался кучей сценарии оболочки.) Эта ситуация пугает меня и заставляет думать о драконах.

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

Итак, чтобы избежать потенциальных странных ошибок, я хочу просто полностью принять NetworkManager и избавиться от устаревших опций. Стоит ли ожидать побочных эффектов при следующем подходе:

> cat /etc/NetworkManager/NetworkManager.conf
[main]
plugin=keyfile

> cat /etc/NetworkManager/system-connections/dhcp-profile.conf
[connection]
id=dhcp
uuid=50263651-4f14-46bc-8dd8-818bf0fe3367
type=ethernet
autoconnect=true

[ipv6]
method=auto

[ipv4]
method=auto
> systemctl disable networking
> systemctl enable NetworkManager

Это должно гарантировать, что файл в формате ключевого файла является источником правды для всех настроек NetworkManager и должен удалить все поведения, которые зависят от содержимого - / etc / sysconfig / network-scripts / * - / etc / sysconfig / network - / etc /init.d/network

Кажется, что он работает и ведет себя нормально до сих пор... Я немного волнуюсь, могут быть побочные эффекты от отключения /etc/init.d/network 'service'... Я не думаю, что есть какие-либо причины, по которым /etc/init.d/network по-прежнему следует вызывать в мире NetworkManager...?

Кто-нибудь знает о поведении, которое это сломало бы или причины, которые это не было бы хорошей идеей?

1 ответ

Решение

Если вы используете NetworkManager, нет никаких причин - и вы не должны - включать устаревшую сетевую службу.

И наоборот, если вы используете устаревшую сетевую службу, вам не следует включать или запускать NetworkManager.

У вас может быть сбой, если у вас есть устаревшие сценарии, которые ожидают использовать старую сетевую службу и не понимают NetworkManager. Они должны быть соответствующим образом адаптированы, если это возможно. В противном случае вы всегда можете использовать старый сетевой сервис.

Другие вопросы по тегам