debian 通过终端无线联网

debian 通过终端无线联网

我开始使用 wmii 窗口管理器,并且希望在状态栏上显示某些信息。如果我想要显示网络的 ESSID,我必须通过一些 shell 命令找到它。我已经知道我可以通过发出命令找到 ESSID

iwconfig wlan0 | grep -o "ESSID:\"[a-zA-Z]*\""

但这需要你成为超级用户吗?

所以我的问题是:

  1. 在没有任何超级用户权限的情况下如何找到 ESSID?

  2. 是否有一些终端命令可以为我提供一些用于选择无线连接的图形用户界面?或者我总是必须做类似的事情

    iwconfig wlan0 essid X 密钥 Y

我正在寻找一些简单的界面,例如 gnome 上存在的界面。

编辑:我搞乱了正则表达式

答案1

我认为获取无线信息所需的权限取决于驱动程序。当我使用 wl 驱动程序时,非 root 用户无法使用 获取信息iwconfig,但我现在使用 b43 驱动程序,非 root 用户可以。我不知道还有其他地方可以使用 ESSID。您的选择是sudo授予非 root 用户iwconfig wlan0无需密码即可运行的权限,或者设置一个 crontab 定期将输出保存iwconfig wlan0到用户可以访问的文件中。

如果你想使用 GUI 来管理无线接口,你几乎必须运行网络管理器并使用 GUI 客户端之一,例如 GNOME 系统托盘小程序。

如果您想从 CLI 管理无线接口,您有两个选择。你可以运行网络管理器并使用 CLI 客户端,网络管理器,或者你可以运行wpa_请求者/etc/network/interfaces。为此,请将以下内容添加到/etc/network/interfaces

auto wlan0
iface wlan0 inet dhcp
    wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf

然后配置你的网络wpa_supplicant.conf,看起来像这样:

network={
    ssid=mynetwork
    key_mgmt=WPA-PSK
    psk="mypassword"
}

您还可以使用 WEP 密钥配置网络,但您确实不应该使用 WEP。如果您需要在同一位置的多个可用网络之间进行选择,您可以使用wpa_cli(尽管有时您必须手动触发dhclient才能执行 DHCP)。

相关内容