Назад | Перейти на главную страницу

Есть ли веские причины не отключать /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 ... Я не думаю, что есть какие-либо причины, по которым /etc/init.d/network все еще следует вызывать в мире полностью NetworkManager ...?

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

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

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

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