Como obter lista de redes sem fio disponíveis sem ser root

5

Eu gostaria de obter uma lista de todas as redes sem fio.

iwlist wlan0 scan | grep ESSID

Isso só vai me mostrar a rede sem fio à qual estou atualmente conectado. Quando executo o comando como root, ele mostra todas as redes disponíveis. Se eu executar o comando sem sudo rapidamente depois disso, todas as redes aparecerão, mas depois de um tempo todas elas desaparecem, exceto a rede à qual estou atualmente conectado.

Existe uma maneira de obter todas as redes disponíveis quando não sou root?

    
por Carlito 14.08.2012 / 12:58

1 resposta

5

Você poderia (ou provavelmente) usar wpa_supplicant ; Usando sua chave de configuração ctrl_interface , você pode permitir o acesso de usuários não-root (por exemplo, aqueles com grupo wheel ) via wpa_cli (por exemplo, /sbin/wpa_cli scan_results [1] )

# allow frontend (e.g., wpa_cli) to be used by all users in 'wheel' group
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel

Há também uma opção de linha de comando para wpa_suppliant ,

-u     Enabled  DBus  control  interface. If enabled, interface defini‐
       tions may be omitted.

dando-lhe uma interface DBus e, portanto, outra possibilidade de acesso não-root (eu acho que o NetworkManager usa essa interface).

[1] Uma vez conectado, isso mostra apenas a rede sem fio em que você está conectado ... Não sei se isso é diferente no NetworkManager.

    
por 14.08.2012 / 13:37