У деякі дистрибутиви Linux за замовчуванням встановлений багатофункціональний менеджер управління мережевими підключеннями, який має назву Network Manager. У деяких випадках потреба в ньому відпадає, і користувачі шукають способи його відключити.
Причини найрізноманітніші: потреба керувати Wi-Fi адаптером, налаштувати інтернет із консолі, з'явився альтернативний спосіб керувати мережею. Незалежно від дистрибутива з цією метою можна скористатися утилітою systemctl
.
Отже, щоб відключити Network Manager Ubuntu, CentOS або Debian, достатньо виконати команду:
$ sudo systemctl stop
Переконайтеся, що програма NetworkManager відключилася за допомогою nmcli
:
$ nmcli list
З'явиться службове повідомлення, що програма більше не керує мережевими налаштуваннями. Для вимкнення NetworkManager відразу після завантаження системи необхідно виконати команду:
$ sudo systemctl disable
Ви можете заборонити програмі налаштовувати мережу для інтерфейсів. Для цього необхідно додати команду в рядок /etc/NetworkManager/NetworkManager.conf:
$ vi /etc/NetworkManager/NetworkManager.conf
managed = false
Далі необхідно додати конфігурацію для інтерфейсу, наприклад enp0s2
, у файл /etc/network/interfaces
, якщо він там відсутній:
$ vi /etc/network/interfaces
iface eth1 inet static
address 192.168.0.102
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.8.8
Для CentOS або Fedora треба створити подібний конфігураційний файл інтерфейсу в папці /etc/sysconfig/network/
.
Наприклад:
vi /etc/sysconfig/network/enp0s3.conf
TYPE=Ethernet
BOOTPROTO=dhcp
NAME=enp0s3
UUID=9c3362c0-a615-4504-bb07-f2951f3810dd
DEVICE=enp0s3
ONBOOT=yes
IPADDR=192.168.1.2
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8
Після перезавантаження зазначеним інтерфейсом більше не керуватимуть за допомогою NetworkManager. Але і це не все. Якщо ви вирішили видалити програму, оскільки потреба в ній повністю відпала, виконайте таку команду:
$ sudo apt remove network-manager
У старих версіях Ubuntu команда дещо відрізняється:
$ echo "manual" | sudo tee /etc/init/network-manager.override
Введіть пароль і перезавантажте систему. Якщо ви не видалили менеджер, а просто відключили, і через деякий час він став потрібен, скористайтеся командами:
$ sudo systemctl enable NetworkManager
$ sudo systemctl start NetworkManager
Але не забудьте видалити рядок managed=false
.