A. Вы должны поместить NM_UNMANAGED в TRUE в файл в /etc/udev/rules.d, чтобы убедиться, что "не будет установлено соединение по умолчанию и не будет предпринята попытка автоматической активации".
Это отличный вопрос. Я взглянул на это в Fedora, поэтому может произойти изменение в имени каталога.
Это то, что я нашел в документации.
man NetworkManager
СВОЙСТВА UDEV Диспетчер устройств udev(7) используется для обнаружения сетевых устройств. Следующее свойство влияет на то, как NetworkManager управляет устройствами:
NM_UNMANAGED
No default connection will be created and automatic activation will not be attempted when this property of a
device is set to a true value ("1" or "true"). You will still be able to attach a connection to the device
manually or observe externally added configuration such as addresses or routes.
В RHEL системные правила должны быть в ls /usr/lib/udev/rules.d/
И файлы по умолчанию, связанные с этим, находятся в:
/usr/lib/udev/rules.d/
В верхней части /usr/lib/udev/rules.d/85-nm-unmanaged.rules написано:
head /usr/lib/udev/rules.d/85-nm-unmanaged.rules
Не изменяйте этот файл, он будет перезаписан при обновлении.
Чтобы переопределить или расширить правила, поместите файл в /etc/udev/rules.d
Папка /etc/udev/rules.d в настоящий момент, скорее всего, пуста.
Примеры.
Ключом к управлению файлами запуска для новых сетевых интерфейсов является выбор правильной группы или "конверта".
Пример 1 Настройки для новых сетевых карт pci.
1. Выберите тестовое устройство.
Когда я помещаю новую карту в свою виртуальную машину, она дает мне имя, такое как: ens11
2. Получить информацию для определения группы.
Найдите файл класса устройства:
find /sys/class -name "ens*"
Это происходит в /sys /class /net с другими сетевыми картами:
ls /sys/class/net
Получить информацию об устройстве (или дереве устройств с «-a»):
udevadm info /sys/class/net/ens11
udevadm info -a /sys/class/net/ens11 | more
Вот как это выглядит на моем экране:
[root@s1 ~]# udevadm info /sys/class/net/ens11
P: /devices/pci0000:00/0000:00:0b.0/net/ens11
E: DEVPATH=/devices/pci0000:00/0000:00:0b.0/net/ens11
E: ID_BUS=pci
...
E: ID_NET_NAME_SLOT=ens11
E: ID_PATH=pci-0000:00:0b.0
E: ID_PCI_CLASS_FROM_DATABASE=Network controller
...
E: USEC_INITIALIZED=2939943
Я буду использовать ID_PATH = pci-0000:00:0b.0 для группировки устройств, которые я хочу изменить. Я буду контролировать отдельные автобусы с отдельными файлами.
3. Создайте файл в /etc/udev/rules.d/
cat /etc/udev/rules.d/pci_bus_0b.rules
#state down ( They are up by default. )
ENV{ID_PATH}=="pci-0000:00:0b.0", ENV{NM_UNMANAGED}="0", ENV{ONBOOT}="1"
#state up
#ENV{ID_PATH}=="pci-0000:00:0b.0", ENV{NM_UNMANAGED}="0", ENV{ONBOOT}="0"
4. Перезагрузите устройства и сеть.
Убедитесь, что в это же время не происходит никаких других важных операций.
У меня была виртуальная машина, работающая на внутреннем жестком диске без проблем, но жесткие диски, подключенные по USB, пошли немного быстрее.
Более медленной альтернативой может быть перезагрузка.
udevadm trigger
# You should see the changes already:
udevadm info /sys/class/net/wlp0s8f7u4
systemctl restart NetworkManager
ip a
Пример 2 Беспроводная локальная сеть USB Карта сетевого интерфейса. (WLAN)
1. Выберите тестовое устройство.
Когда я подключаю свой беспроводной USB-адаптер, он дает мне имя, например: wlp0s8f7u4
2. Получить информацию для определения группы.
Найти класс файла устройства
find /sys/class -name "wlp*"
Это происходит в /sys /class /net с другими сетевыми картами:
ls /sys/class/net
Получить информацию об устройстве (или дереве устройств с «-a»):
udevadm info /sys/class/net/wlp0s8f7u4
udevadm info -a /sys/class/net/wlp0s8f7u4 | more
Вот как это выглядит на моем экране:
[root@s1 ~]# udevadm info /sys/class/net/wlp0s8f7u4
P: /devices/pci0000:00/0000:00:08.7/usb1/1-4/1-4:1.0/net/wlp0s8f7u4
E: DEVPATH=/devices/pci0000:00/0000:00:08.7/usb1/1-4/1-4:1.0/net/wlp0s8f7u4
E: DEVTYPE=wlan
E: ID_BUS=usb
E: ID_MODEL=802.11_n_WLAN
...
E: SYSTEMD_ALIAS=/sys/subsystem/net/devices/wlp0s8f7u4
E: TAGS=:systemd:
E: USEC_INITIALIZED=4672793558
Я буду использовать «DEVTYPE = wlan» для группировки устройств, которые я хочу изменить.
3. Создайте файл в /etc/udev/rules.d/
cat /etc/udev/rules.d/Wireless_lan.rules
# State down
ENV{DEVTYPE}=="wlan", ENV{NM_UNMANAGED}="0", ENV{ONBOOT}="1"
# State up
#ENV{DEVTYPE}=="wlan", ENV{NM_UNMANAGED}="0", ENV{ONBOOT}="0"
4. Перезагрузите устройства и сеть.
Убедитесь, что в это же время не происходит никаких других важных операций.
У меня была виртуальная машина, работающая на внутреннем жестком диске без проблем, но жесткие диски, подключенные по USB, пошли немного быстрее.
Более медленной альтернативой может быть перезагрузка.
udevadm trigger
# You should see the changes already:
udevadm info /sys/class/net/wlp0s8f7u4
systemctl restart NetworkManager
ip a
Рекомендации:
Правила: человек 7 удев
Атрибуты Udev: Arch Linux wiki
Список переменных среды:(любезно предоставлено Лекенштейном на форуме Unix):
grep -hrPo 'ENV {\K [^}] *(?=} = [^ =])'/ndometc,lib‹/udev/rules.d | сортировать -у