Linux中國

在命令行中管理 Wifi 連接

通過命令行來設置連接到 WiFi 當然有很多種方法,但在這篇文章里,同時也是一個建議,我使用最基本的方法:那就是使用在任何發布版本中都有的包含在「默認包」里的程序和工具。或者說我偏向於使用這一種方法。使用此方法顯而易見的好處是這個操作過程能在任意有 Linux 系統的機器上復用。不好的一點是它相對來說比較複雜。

首先,我假設您們都已經正確安裝了無線網卡的驅動程序。沒有這前提,後續的一切都如鏡花水月。如果您你機器確實沒有正確安裝上,您應該看看關於您的發布版本的維基和文檔。

然後您就可以用如下命令來檢查是哪一個介面來支持無線連接的:

$ iwconfig

一般來說,無線介面都叫做 wlan0。當然也有例外的,但在這篇教程中我們將會一直用通用叫法。

以防萬一,你得確認下以使此介面服務是啟動著的:

$ sudo ip link set wlan0 up

一但確認了無線介面是工作著的,你就可以用如下命令來掃描附近的無線網路了:

$ sudo iw dev wlan0 scan | less 

根據掃描出的結果,可以得到網路的名字(它的 SSID),它的信息強度,以及它使用的是哪個安全加密的(如:WEP、WPA/WPA2)。從此時起,將會分成兩條路線:情況很好、很容易的以及情況稍微複雜的。

如果您想連接的網路是沒有加密的,您可以用下面的命令直接連接:

$ sudo iw dev wlan0 connect [網路 SSID]

如果網路是用 WEP 加密的,也非常容易:

$ sudo iw dev wlan0 connect [網路 SSID] key 0:[WEP 密鑰]

但網路使用的是 WPA 或 WPA2 協議的話,事情就不好辦了。這種情況,您就得使用叫做 wpasupplicant 的工具,它默認是沒有的。然後需要修改 /etc/wpasupplicant/wpa_supplicant.conf 文件,增加如下行:

network={
    ssid="[網路 ssid]"
    psk="[密碼]"
    priority=1
}

我建議你​​在文件的末尾添加它,並確保其他配置都注釋掉。要注意 SSID 和密碼字串都是大小寫敏感的。在技術上您也可以把接入點的名稱當做是 SSID,使用 wpa_supplicant 工具的話會有合適的 SSID 來替代這個名字。

一旦配置文件修改完成後,在後台啟動此命令:

$ sudo wpa_supplicant -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

最後,無論是連到開放的網路還是加密的安全網路,您都得獲取 IP 地址。簡單地使用如下命令:

$ sudo dhcpcd wlan0

如果一切順利的話,您應該已經通過 DHCP 獲取到了一個全新的本地 IP,這個過程是在後台自動完成的。如果想確認下是否真正連接上的話,您可以再一次輸入如下命令檢查:

$ iwconfig

最後,我認為多次重複第一步的檢查操作是很有必要的。您永遠不會知道什麼時候您的圖形用戶界面掛了,或者是什麼時候不能訪問無線連接了,所以現在就準備著用命令來檢測吧。還有,前面提到過的,有很多種方式(如 NetworkManager、wicdnetcfgwifi 等等)來管理無線連接。我堅持使用最基本的方式,但在某些情況下,我使用的工具可能您還沒有,所以您在之前就得先下載它們。另一方面,有很多高級的應用程序,他們確實是不包含在「默認包」裡面的,使用它們會大大簡化操作過程。但一般建議是開始的話最好從基本的來。

關於從命令行來管理連接 WiFi 您還有其他方式方法嗎?請在評論中讓我們知道。

via: http://xmodulo.com/2014/08/manage-wifi-connection-command-line.html

作者:Adrien Brochard 譯者:runningwater 校對:校對者ID

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
1
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國