Debian 或 Ubuntu 在命令行下配置无线网络连接 WiFi 的方法

最近迷上了 awesome 平铺式窗口管理器(也叫瓦片式窗口管理器),什么是平铺式窗口管理器?简单来说,平铺就是所有运行程序的窗口都不会相互重叠,而是自动的被调整大小使得它们能够刚好占满整个屏幕,比如只开一个 Firefox,那就是独占全屏,再开一个 Thunderbird,那就和 Firefox 各自一半屏(当然我也可以设置一个大点、一个小点),再开一个 Terminal,那就三分天下而共处。这和传统的桌面环境的概念相差很大,我也几乎就告别鼠标 ,使用感觉和命令行差不太远,用之虽爽,不过有一些问题就尴尬了,譬如网络连接,图形界面下鼠标点点两下就搞定了,那命令行下怎么连接 WiFi 呢?


有办法的,思路也是一样:搜索SSID,选中,密码,链接。我的使用环境是 TravelMate 8481 + Debian 8.0 64位 + awesome 桌面:

1、搜索附近的无线网络,获取要连接网络的 SSID

~$sudo iwlist scan

2、配置无线网络
把下面文件中的 ssid 和 passwd 换成无线网络的 ssid 和密码。

~$sudo vim /etc/network/interfaces

打开这个文件,把其中倒数第2行的 ssid 替换成你要用的无线网络名称,password 替换成该无线网络的密码

auto wlan0
iface wlan0 inet dhcp
pre-up ip link set wlan0 up
pre-up iwconfig wlan0 essid ssid
wpa-ssid ssid
wpa-psk password

举个例子,我的无线网络名称叫 wenqixiang,密码是 bootingman123,那我的配置文件应该写成:

auto wlan0
iface wlan0 inet dhcp
pre-up ip link set wlan0 up
pre-up iwconfig wlan0 essid ssid
wpa-ssid wenqixiang
wpa-psk bootingman123

保存退出,这一步完成,下一步则是启用生效

3、启用无线网线,执行系列命令,无线网卡会按照我们配置文件里面的信息自动连接该无线网络,并且每次重启电脑后仍然可以自动连接。

~$sudo ifup wlan0

如果更换上网环境,比如从公司到家,连接不同的无线网络,只需要重复步骤4修改配置文件,和步骤五启用生效即可。

理论上到这里就已经完成配置过程了,不过如果很不幸,你连基本的网卡驱动都没装上,那么就先做这两步

安装无线网卡驱动
1、识别网卡

$lspci | grep Wireless
03:00.0 Network controller: Intel Corporation PRO/Wireless 5100 AGN [Shiloh] Network Connection

2、安装驱动

~$sudo aptitude install firmware-iwlwifi

3、加载驱动

~$sudo modprobe iwl3945
 需要的软件包

几乎所有的 Linux 发行版都内置上面提到的命令,不过如果万一你输入 iwlist 等命令,显示 command not found 时,也不用担心,很简单,输入下列命令,安装几个小巧的软件包工具即可:

~$sudo apt-get install wireless-tools wpasupplicant
 跟无线网卡有关的常用命令汇总
iwconfig - configure a wireless network interface
iwlist - Get more detailed wireless information from a wireless interface
iwgetid - Report ESSID, NWID or AP/Cell Address of wireless network
iwpriv - configure optionals (private) parameters of a wireless network interface
iwspy - Get wireless statistics from specific nodes
查看当前无线连接使用的信道,注意,网上有的教程写的是 iwlist wlan0 channel,如果你的无线网卡的名称不是 wlan0 的话会报错,可以直接去掉网卡名称直接输入 iwlist channel
~$ iwlist channel

终端窗口返回这些信息,这是没有连接上网络的返回信息。

wlan0     13 channels in total; available frequencies :
          Channel 01 : 2.412 GHz
          Channel 02 : 2.417 GHz
          Channel 03 : 2.422 GHz
          Channel 04 : 2.427 GHz
          Channel 05 : 2.432 GHz
          Channel 06 : 2.437 GHz
          Channel 07 : 2.442 GHz
          Channel 08 : 2.447 GHz
          Channel 09 : 2.452 GHz
          Channel 10 : 2.457 GHz
          Channel 11 : 2.462 GHz
          Channel 12 : 2.467 GHz
          Channel 13 : 2.472 GHz

如果你的屏幕上下列多了一行,说明你已经连上了 WiFi,所在信道是 Channel 10

wlan0     13 channels in total; available frequencies :
          Channel 01 : 2.412 GHz
          Channel 02 : 2.417 GHz
          Channel 03 : 2.422 GHz
          Channel 04 : 2.427 GHz
          Channel 05 : 2.432 GHz
          Channel 06 : 2.437 GHz
          Channel 07 : 2.442 GHz
          Channel 08 : 2.447 GHz
          Channel 09 : 2.452 GHz
          Channel 10 : 2.457 GHz
          Channel 11 : 2.462 GHz
          Channel 12 : 2.467 GHz
          Channel 13 : 2.472 GHz
          Current Frequency:2.457 GHz (Channel 10)
查看无线连接的总体概况:
~ $ iwconfig
 查看当前的无线设备及模式,输入:
~ $ iw dev

终端窗口返回结果,不同的无线网卡可能返回结果略有不同,此处隐去 addr Mac 地址

phy#0
    Interface wlan0
        ifindex 3
        addr 
        type managed
打完收工,顺利连上无线网,仿佛又回到了地球上,这种感觉…

4 thoughts on “Debian 或 Ubuntu 在命令行下配置无线网络连接 WiFi 的方法

发表回复