Dê uma olhada no utilitário nmcli
, ele controla o networkmanager por meio de chamadas (acho que) dbus, mas deve ser muito mais simples de usar a partir do seu script.
Estou usando um driver proprietário rt3652sta para minha placa wireless. Aparece como um dispositivo ra0 no Ubuntu 12.04 de 64 bits.
De acordo com a documentação on-line, o seguinte costumava funcionar definitivamente até 10.04.
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
Isso, no entanto, não tem efeito na placa sem fio mencionada anteriormente em 12.04. Além disso, o rfkill não funciona, uma vez que nem sequer lista o botão sem fios (mais uma vez, provavelmente devido ao facto de o controlador sem fios ser proprietário):
rfkill list
Ele lista apenas o hci0 (bluetooth) e o outro pode bloquear / desbloquear de acordo, mas isso não tem efeito no wifi.
ifup / down também não funciona (AFAICT) ...
E isso me deixa desabilitando a conexão sem fio através do applet do gerenciador de rede. No entanto, tentar fazê-lo via dbus parece não funcionar e ainda assim eu gostaria de automatizá-lo através de um script.
Alguma idéia de como eu poderia descobrir a estrutura dbus apropriada para a chamada? Isso é possível no Ubuntu 12.04?
Dê uma olhada no utilitário nmcli
, ele controla o networkmanager por meio de chamadas (acho que) dbus, mas deve ser muito mais simples de usar a partir do seu script.