Come posso disabilitare permanentemente un'interfaccia di rete in Debian 10?
Suppongo che ci sia una domanda simile su questo sito ( come disabilitare permanentemente un'interfaccia di rete? ), Ma le risposte erano principalmente per Ubuntu ei metodi descritti in esso non sono stati d'aiuto.
Sto cercando di disattivare un'interfaccia enp1s0f2, ma continua a tornare al riavvio.
Ho provato i comandi "ifconfig (interface) down", "ifdown (interface)" e la modifica di / etc / network / interfaces per aggiungere le seguenti righe:
"iface (interfaccia) inet manual" e "iface (interface) inet6 manual"
Presumibilmente in modo che NetworkManager o qualsiasi altra cosa lo stia gestendo, non lo carichi all'avvio, ma senza alcun risultato.
Come posso disabilitare permanentemente questa interfaccia su Debian?
Esiste un metodo pulito che non implichi la disabilitazione di tutti i servizi systemctl del dispositivo uno per uno? Sarebbe un peccato se in qualsiasi momento avessi bisogno di nuovo l'interfaccia che dovevo ricordare tutti i servizi coinvolti e riattivarli di nuovo, inoltre, ci deve essere un metodo diretto più semplice, giusto?
Risposte
Puoi dire a NetworkManager di ignorare l'interfaccia, come documentato nella sezione keyfile di NetworkManager.conf :
sezione keyfile
Questa sezione contiene opzioni specifiche del plug-in del file di chiavi e viene normalmente utilizzata solo quando non si utilizza alcun altro plug-in specifico della distribuzione.
[...]
unmanaged-devices
Imposta i dispositivi che devono essere ignorati da NetworkManager.
Vedere la sezione chiamata "Formato elenco dispositivi" per la sintassi su come specificare un dispositivo.
Esempio:
unmanaged-devices=interface-name:em4 unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4;interface-name:eth2
Aggiungi un file in /etc/NetworkManager/conf.d
chiamato ad esempio local-ignore-enp1s0f2.conf
con questo contenuto aggiuntivo:
[keyfile]
unmanaged-devices=interface-name:enp1s0f2
Potrebbe comunque essere necessario eliminare una voce già creata con qualcosa come:
nmcli connection show
e una volta identificato il nome:
nmcli connection delete id 'some unwanted connection'
ip link set enp1s0f2 down
Quindi ricarica la configurazione:
nmcli connection reload
o:
systemctl reload network-manager
Se vuoi controllare che funzioni senza riavviare, ecco un trucco usando uno spazio dei nomi di rete (che potrebbe anche essere stato usato in qualche script probabilmente in udev per far "sparire" automaticamente l'interfaccia):
ip netns add hiddenplace
ip link set enp1s0f2 netns hiddenplace
Ora rimuovi lo spazio dei nomi che riporterà l'interfaccia e attiverà qualsiasi rilevamento automatico:
ip netns delete hiddenplace
È possibile impostare entrambi gli indirizzi IPv4 e IPv6 su "Disabilitato" in NetworkManager, che essenzialmente disabiliterà l'interfaccia.
Poi c'è questo "Connetti automaticamente con priorità" che può essere deselezionato - che probabilmente fa lo stesso.