Удалить network manager ubuntu

Обновлено: 07.07.2024

NetworkManager — это служба для Linux, которая управляет различными сетевыми интерфейсами, включая физические, такие как Ethernet и беспроводной, и виртуальные, такие как VPN и другие туннели. Network Manager можно настроить для управления некоторыми или всеми интерфейсами системы.

У NetworkManager есть графический интерфейс — это тот апплет, который открывается, когда вы нажимаете на иконку сети, расположенную рядом с часами, а также окна настройки сети и сетевых соединений, в которые вы можете перейти из апплета. По умолчанию NetworkManager предустановлен на многих дистрибутивах Linux.

Хотя NetworkManager это отличная служба для управления повседневными потребностями компьютера пользователя, его эффекты обычно не оптимальны для среды тестирования. NetworkManager может самостоятельно, без запроса пользователя, менять MAC-адреса сетевых интерфейсов, а также менять их состояние — например, при подключении USB Wi-Fi адаптера именно NetworkManager переводит его в состояние up (включено), может вывести беспроводной интерфейс из режима монитора и перевести его в обычное состояние.

Если вы хотите избежать этого для определённых сетевых интерфейсов, то кроме очевидного решения остановить службу NetworkManager или удалить NetworkManager вовсе, есть другие варианты. Кстати, если вас только не устраивает, что MAC-адреса меняются на произвольные, то это можно настроить или отключить в самом NetworkManager.

Что такое unmanaged (без управления) интерфейс в NetworkManager

Состояние unmanaged (без управления) в NetworkManager для сетевого интерфейса означает, что NetworkManager никак не взаимодействует с данным сетевым интерфейсом: не включает его, не меняет его режим работы, не меняет MAC-адрес, не использует для поиска сетей и даже не показывает в списке сетевых интерфейсов — то есть NetworkManager делает вид, что этого интерфейса в системе просто нет.

Как определить, управляет ли NetworkManager определённым сетевым интерфейсом

Состояние unmanaged имеет эффект только в самом NetworkManager. Вы, как обычно, можете видеть все сетевые интерфейсы командой

или только беспроводные командой

При этом там никак не обозначено, управляет ли этим интерфейсом NetworkManager.

Как уже было сказано, если ваше устройство отсутствует в списке сетевых интерфейсов, которые показывает NetworkManager, значит оно может быть в состоянии unmanaged.

Но чтобы быть точно уверенным в этом, можно использовать команду nmcli — это инструмент командной строки для управления NetworkManager. Чтобы вывести список сетевых интерфейсов и их состояние выполните команду:


Для unmanaged устройств будет показано «без управления».

Предположим, я хочу, чтобы NetworkManager никак не менял настройки беспроводного сетевого интерфейса с именем wlp0s20f0u1.

Как временно перевести сетевой интерфейс в unmanaged (без управления) в NetworkManager

Сетевой интерфейс можно отключить от управления NetworkManager временно или постоянно (чтобы этот статус сохранялся после перезагрузки). На самом деле, можно в любое время поменять статус.

Чтобы на время сделать интерфейс unmanaged, выполните команду вида:


Обратите внимание на строку:

Данная настройка сбрасывается не только после перезагрузки компьютера, но и после отключения и подключения сетевого интерфейса.

Как перевести сетевой интерфейс в unmanaged (без управления) в NetworkManager, чтобы это сохранялось после перезагрузки

Чтобы NetworkManager не трогал сетевой интерфейс сразу после запуска службы и чтобы эта настройка сохранилась после перезагрузки, нужно использовать метод keyfile.

Для этого откройте файл /etc/NetworkManager/NetworkManager.conf:

И добавьте туда строки вида:

Вы можете перечислить любое количество MAC-адресов.

Посмотреть MAC-адреса сетевых интерфейсов можно командой

Но помните, что NetworkManager уже мог присвоить произвольный MAC-адрес, чтобы увидеть настоящий, выполните команду вида:

Перечислите MAC-адрес каждого интерфейса, который Network Manager должен игнорировать, через точку с запятой. Убедитесь, что перечисленные здесь MAC-адреса записаны в нижнем регистре.

Более новые версии NetworkManager могут также использовать более общий альтернативный метод KEYFILE, который не включает фактические MAC-адреса и вместо этого использует имена интерфейсов. Этот синтаксис заменяет приведённый выше раздел Удалить network manager ubuntu следующим:

К примеру, я хочу, чтобы NetworkManager не управлял сетевыми интерфейсами wlp0s20f0u1, wlp0s20f0u2 и wlp0s20f0u3, тогда мои строки следующие:


Сохраните сделанные изменения и перезапустите службу:


Как вернуть сетевой интерфейс под управление NetworkManager

Теперь перечисленные сетевые интерфейсы всегда будут «без управления». Но их можно вновь передать под управление NetworkManager. Для этого достаточно откатить сделанные изменения в файле NetworkManager.conf и перезапустить службу.

Если вы вывели интерфейс из-под управления NetworkManager командой nmcli, то вернуть его в прежнее состояние можно командой:

Как выключить NetworkManager

Если вы хотите полностью остановить NetworkManager, чтобы он перестал управлять сразу всеми сетевыми интерфейсами, то выполните команду:

Если вы хотите убрать NetworkManager из автозагрузки, то выполните:

Чтобы вновь запустить NetworkManager и добавить его в автозагрузку выполните:

Иногда Network Manager (встроенный в систему инструментарий для управления сетевыми подключениями, обладающий графическим интерфейсом) работает некорректно или (в некоторых случаях) не работает совсем. Данное руководство описывает, как отключить Network Manager.

Отключение Network Manager в Ubuntu 7.10 и 8.04

Отключение запущенного NM:

После этого должен выгрузиться и «апплет» (Значок-индикатор сетевых подключений на панели Gnome). Если этого не произошло, то просто завершаем запущенное приложение стандартным способом.

А теперь отключаем автоматический запуск NM:

Если команды sudo echo - не срабатывают из-за недостатка прав доступа, нужно делать так:

введенная в терминале передает пользователю права суперпользователя (root). Будьте предельно внимательны при выполнении приведенных ниже действий!

Отключение Network Manager в Ubuntu 8.10 и 9.04

Отключение запущенного NM:

Апплет после этого не выгрузится, но не будет видеть никаких соединений.

Отключение автоматического запуска:

Откройте для редактирования файл /etc/rc.local ,например командой: Добавьте в него (перед строкой со словом exit 0 ) выключение NM: В принципе, отключение автоматического запуска в 8.10 и 9.04 не требуется, т.к. при наличии пользовательских настроек в файле /etc/network/interfaces NM не вмешивается в работу сети.

Отключение Network Manager в Ubuntu 11.04

Для этого нужно выполнить в терминале:

После этого пропадет значек апплета в панели уведомлений и отключаться все соединения, подключенные с помощью Network Manager. Чтобы запустить NM обратно, необходимо выполнить:

Удаление NM

В некоторых случаях вышеописанных манипуляций недостаточно, необходимо удалить NM совсем. Для этого удалите пакет network-manager , например, набрав в терминале:

Отключение апплета

Для отключения автоматического старта сетевого апплета ( nm-applet ) необходимо перейти Система→Параметры→Сеансы - в появившемся окне найти Network Manager (Network Manager applet) и снять галочку напротив него. Можно совсем удалить эту запись, выделив Network Manager и нажав на кнопку Удалить.

Во многих дистрибутивах Linux по умолчанию установлен многофункциональный менеджер управления сетевыми подключениями Network Manager. Иногда возникает необходимость отключить его. Может, вы хотите настроить интернет из консоли, нашли альтернативный способ управлять сетью, или вам нужен полный контроль на Wi-Fi-адаптером.

sudo systemctl stop NetworkManager

Затем вы можете убедиться, что NetworkManager действительно отключён с помощью утилиты nmcli:

Утилита сообщает, что служба не запущена, а значит сетевыми интерфейсами она больше не управляет. Если вам нужно, чтобы NetworkManager оставался отключённым после перезагрузки, выполните такую команду:

sudo systemctl disable NetworkManager

Для того, чтобы NetworkManager не пытался настраивать сеть для интерфейсов, которые сконфигурированы в /etc/network/interfaces в Ubuntu следует добавить такую строчку в /etc/NetworkManager/NetworkManager.conf


Затем добавьте конфигурацию для нужного интерфейса, например enp0s2 в файл /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/. Например:

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
NM_MANAGED=no


Теперь после перезагрузки указанный интерфейс больше не будет управляться с помощью этой утилиты, и отключение Network Manager не понадобится.

Кроме того, вы можете захотеть удалить Network Manager. Для этого в Ubuntu и Debian надо выполнить:

sudo apt remove network-manager

А в CentOS и Fedora:

sudo yum remove network-manager

Чтобы отключить NetworkManager в Debian 7 и старых версиях Ubuntu, понадобится такая команда:

echo "manual" | sudo tee /etc/init/network-manager.override

Для выполнения команды необходимо будет ввести пароль. Осталось перезагрузить систему, и NetworkManager отключён.

Чтобы снова включить NetworkManager в современном дистрибутиве, необходимо выполнить:

sudo systemctl enable NetworkManager
sudo systemctl start NetworkManager

И, естественно, удалить строчку managed=false из конфигурационного файла программы.

Я использую Ubuntu 18.04.1 LTS. Я хочу отключить сетевой менеджер на машине с Ubuntu, потому что (1) он мне не нужен, (2) я предпочитаю иметь жестко запрограммированную конфигурацию, и (3) сетевой менеджер регулярно вызывает проблемы, меняя конфигурацию DHCP.

Остановить сетевой менеджер

Отключить сетевой менеджер (навсегда), чтобы избежать его перезапуска после перезагрузки

Несмотря на это, сетевой менеджер возвращается снова каждый раз, когда я перезагружаю машину.

Как я могу заставить его уйти?

2 ответа

Способ зависит от среды рабочего стола:

Для Ubuntu MATE 18.04.1 LTS продувка network-manager Пакет безопасен. Вы можете просто запустить:

Для Ubuntu 18.04.1 LTS с очисткой рабочего стола GNOME network-manager Пакет также очистит ubuntu-desktop а также gnome-control-center (необходимая часть рабочего стола GNOME). Так что это не вариант.

Здесь вы должны отключить сервис NetworkManager (как вы уже сделали):

и еще три услуги:

и затем перезагрузите компьютер.

  1. Вы можете узнать больше о конфигурации сети с /etc/network/interfaces из Ubuntu 16.04 LTS Server Guide.
  2. Современный сервер Ubuntu 18.04 LTS использует netplan Вы можете прочитать об этом в Руководстве сервера Ubuntu 18.04 LTS.

Попробуйте mask команда:

маска ИМЯ.

Маска одного или нескольких единиц, как указано в командной строке. Это свяжет эти файлы модулей с /dev/null, что сделает невозможным их запуск.
Это более сильный вариант отключения, поскольку он запрещает все виды активации устройства, включая включение и ручную активацию. Используйте эту опцию с осторожностью. Это учитывает параметр --runtime, который временно маскирует только до следующей перезагрузки системы.
Опция --now может использоваться, чтобы гарантировать, что юниты также остановлены. Эта команда ожидает только допустимые имена модулей, она не принимает пути к файлам модулей.

Network Manager - одно из самых перспективных, но, к сожалению, пока одно из самых глючных приложений в Ubuntu. Он управляет сетевыми соединениями, позволяя настраивать сеть, сохранять настройки для разных сетей и перескакивать между сетями буквально одним кликом мыши. Умеет обеспечивать режим роуминга, когда при пропадании одного сетевого подключения сразу срабатывает другое (актуально, естественно, только когда у вас несколько активных сетевых соединений).

Программно Network Manager состоит их двух частей: непосредственно самого демона, управляющего интерфейсами, и апплета для рабочего стола. Апплет выглядит как изображение двух мониторчиков (один впереди другого, как в виндах) в области уведомлений и обеспечивает быстрый доступ мышью к настройкам сети.

Вот только часть из глюков, с которыми я столкнулся в разных версиях Ubuntu:

  • Пропадает пиктограммка с мониторчиками, но сам апплет работает. Вместо пиктограммки в области уведомлений есть невидимая область шириной 1 пиксель, и, если как следует прицелиться и попасть в неё, то можно вывести настройки сети. Как лечить - не разобрался. Прошло само при очередном обновлении (спустя месяц после факта).
  • Пиктограммка с мониторчиками есть, но активность сети (опять же по аналогии с виндой) не отображает. Даже не пытался искать причины. Для просмотра активности сети в реальном времени гораздо удобнее использовать апплет системного монитора.
  • Менюшки для настройки VPN есть, но не работают. Лечилось доустановкой пакетов.
  • Настройки сети применялись только после перезагрузки, да и то не всегда. Чаще всего просто возвращались старые настройки сети без объяснения причин.
  • Невозможно сохранить текущую конфигурацию сетевых интерфейсов. Сохранял только через два раза на третий, закономерности так и не нашёл.

Наверняка были (и есть) ещё бонусы, но написал только то, с чем столкнулся сам. Лично для меня и этого было достаточно для того, чтобы полностью отказаться от Network Manager-а.

С другой стороны, не забываем о первом правиле работы за компьютером: если у вас всё работает - ничего не трогайте, не надо ничего улучшать!

Если вы всё-таки решили попробовать - сохраните эту страничку у себя на рабочем столе. Трудно выходить в интернет без сети.

Файлы

Сетевые настройки в Ubuntu находятся в нескольких файлах.

/etc/network/interfaces
Основные настройки интерфейсов для команд ifup и ifdown, которые, в свою очередь, используют загрузочные скрипты. Здесь хранятся конфигурации для всех сетевых интерфейсов, а именно: тип получения IP-адреса (статический или динамический), сам адрес, маска и шлюз.

/etc/resolv.conf
Конфигурационный файл, значения из которого используются для подключения к системе доменных имён DNS. Грубо говоря, DNS-ы надо прописывать здесь!

/etc/hosts
Статичная таблица для поиска соответствий имени-адреса узлов. Что-то типа локального DNS.

Способов подключения к сети - огромное множество и сейчас не ставится задача охватить все из них. Простой тип подключения путём ввода сетевых настроек (без VPN, PPPoE и проч.) всё равно охватывает большинство сетевых соединений. Поэтому пока на этом и остановимся.

Удаляем Network Manager

NetworkManager при удалении может утянуть за собой настройки сети (интерфейсов), поэтому сделаем их резервную копию:

sudo cp /etc/network/interfaces /etc/network/_interfaces

Разрегистрируем службу, чтобы NM не стартовал при запуске (вообще это должно произойти при удалении, но — на всякий случай)

Читайте также: