Cree dos 'scripts' simples, el nombre del script no es importante (simplemente uso wlan) y supongo que solo hay una interfaz de red cableada, por lo que se llama 'eth0' ... Verifique esto con 'ifconfig' si No estoy seguro. Tenga en cuenta que esto deshabilitó la conexión inalámbrica por completo, no solo wlan0. (Solo es un problema si tiene varias interfaces wlan y solo desea desactivar las específicas)
Estos scripts podrían adaptarse fácilmente, por lógica booleana, a una situación en la que tenga dos o más interfaces de red cableadas.
Asegúrese de que estos scripts sean ejecutables con 'chmod + x'
/etc/network/ip-up.d/wlan
#!/bin/sh
# If eth0 goes up, disable wireless
if [ "$IFACE" = "eth0" ]; then
dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:false
fi
/etc/network/if-down.d/wlan
#!/bin/sh
# If eth0 goes down, enable wireless
if [ "$IFACE" = "eth0" ]; then
dbus-send --system --type=method_call --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.DBus.Properties.Set string:org.freedesktop.NetworkManager string:WirelessEnabled variant:boolean:true
fi
Esto habilita / deshabilita la conexión inalámbrica en el NetworkManager que generalmente se puede encontrar como un indicador del sistema en el panel Gnome.
También puede usar 'ifconfig wlan0 down' o 'ifconfig wlan0 up' en lugar de la línea dbus-send, pero esto debería ser más fácil de usar e interferir menos con las utilidades del sistema de Ubuntu.
Probado con Ubuntu Desktop 10.10, y debería funcionar con versiones anteriores u otras distribuciones usando NetworkManager y dbus.