Você precisa colocar NM_UNMANAGED em TRUE em um arquivo em /etc/udev/rules.d para garantir que "Nenhuma conexão padrão será criada e a ativação automática não será tentada".
Essa é uma ótima pergunta. Eu dei uma olhada no Fedora, então pode haver uma mudança no nome do diretório.
Isso é o que eu encontrei na documentação.
man NetworkManager
UDEV PROPERTIES udev(7) device manager is used for the network device discovery. The following property influences how NetworkManager manages the devices:
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.
No RHEL, as regras do sistema devem estar em ls /usr/lib/udev/rules.d /
E os arquivos padrão que lidam com isso estão em:
/usr/lib/udev/rules.d/
No topo de /usr/lib/udev/rules.d/85-nm-unmanaged.rules, diz:
head /usr/lib/udev/rules.d/85-nm-unmanaged.rules
Do not modify this file, it will get overwritten on updates. To override or extend the rules place a file in /etc/udev/rules.d
A pasta /etc/udev/rules.d provavelmente está vazia no momento.
Exemplos.
A chave para gerenciar arquivos de inicialização para novas interfaces de rede é selecionar o grupo certo ou "envelope".
Exemplo 1. Configurações para as novas placas de interface de rede pci.
1. Selecione um dispositivo de teste.
Quando eu coloco um novo cartão na minha máquina virtual, ele me dá um nome como: ens11
2. Obtenha informações para definir um grupo.
Encontre o arquivo de classe de dispositivo:
find /sys/class -name "ens*"
Isso acontece em / sys / class / net com outras NICs:
ls /sys/class/net
Obtenha informações sobre o dispositivo (ou a árvore de dispositivos com "-a"):
udevadm info /sys/class/net/ens11
udevadm info -a /sys/class/net/ens11 | more
É assim que fica na minha tela:
[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
Eu usarei ID_PATH = pci-0000: 00: 0b.0 para agrupar os dispositivos que desejo alterar. Eu controlarei ônibus individuais com arquivos individuais.
3. Crie um arquivo em /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. Reinicie os dispositivos e a rede.
Certifique-se de que não há outras operações importantes acontecendo ao mesmo tempo.
Eu tinha uma máquina virtual rodando em um disco rígido interno sem problemas, mas os discos rígidos conectados via USB deram uma voltinha. Uma alternativa muito mais lenta seria reinicializar.
udevadm trigger
# You should see the changes already:
udevadm info /sys/class/net/wlp0s8f7u4
systemctl restart NetworkManager
ip a
Exemplo 2. Placa de interface de rede sem fio. (Wlan)
1. Selecione um dispositivo de teste.
Quando eu conecto meu adaptador sem fio, ele me dá um nome como: wlp0s8f7u4
2. Obtenha informações para definir um grupo.
Encontre a classe de arquivo do dispositivo
find /sys/class -name "wlp*"
Isso acontece em / sys / class / net com outras NICs:
ls /sys/class/net
Obtenha informações sobre o dispositivo (ou a árvore de dispositivos com "-a"):
udevadm info /sys/class/net/wlp0s8f7u4
udevadm info -a /sys/class/net/wlp0s8f7u4 | more
É assim que fica na minha tela:
[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
Vou usar "DEVTYPE = wlan" para agrupar os dispositivos que eu quero mudar.
3. Crie um arquivo em /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. Reinicie os dispositivos e a rede.
Certifique-se de que não há outras operações importantes acontecendo ao mesmo tempo.
Eu tinha uma máquina virtual rodando em um disco rígido interno sem problemas, mas os discos rígidos conectados via USB deram uma voltinha. Uma alternativa muito mais lenta seria reinicializar.
udevadm trigger
# You should see the changes already:
udevadm info /sys/class/net/wlp0s8f7u4
systemctl restart NetworkManager
ip a
Referências:
Regras: homem 7 udev
Atributos do Udev: Wiki do Arch Linux
Lista de variáveis ambientais: (cortesia de Lekensteyn no fórum do Unix ):
grep -hrPo 'ENV {\ K [^}] * (? =} = [^ =])' /{etc,lib}/udev/rules.d | sort -u