O script a seguir, inserido /etc/NetworkManager/dispatcher.d/99-disable-wireless-when-wired, funciona principalmente - desativa a conexão sem fio, mesmo quando eu quero compartilhar com a conexão sem fio ou vice-versa.
Para fazer isso, execute o seguinte comando no terminal:
sudo nano /etc/NetworkManager/dispatcher.d/99-disable-wireless-when-wired
E cole o seguinte código no editor de texto.
#!/bin/sh
myname=${0##*/}
log() { logger -p user.info -t "${myname}[$$]" "$*"; }
IFACE=$1
ACTION=$2
release=$(lsb_release -s -c)
case ${release} in
trusty|utopic) nmobj=nm;;
*) nmobj=radio;;
esac
case ${IFACE} in
eth*|usb*|en*)
case ${ACTION} in
up)
log "disabling wifi radio"
nmcli "${nmobj}" wifi off
;;
down)
log "enabling wifi radio"
nmcli "${nmobj}" wifi on
;;
esac
;;
esac
Salve e saia.
Observe as seguintes condições no script, conforme documentado na página de manual do NetworkManager :
Cada script deve ser:
- um arquivo regular,
- possuído pela raiz,
- não gravável por grupo ou outro,
- não definido,
- e executável pelo proprietário.
Em vez de nmcli radio wifi off(ou nmcli nm wifi offpara versões mais antigas do NetworkManager), também existe rfkill block wifi. No entanto, se rfkillfor usado em vez de nmcli, as versões mais recentes do NetworkManager reativarão o wifi durante a inicialização.
rfkill unblock wifidepois que você se conectaeth0e deseja compartilhar erfkill block wifiquando termina?