3. 配置使用ArchLinux 由于手头木有路由器,仅有USB无线网卡两个:Edimax EW-7711UTn (RT3070芯片) 和 小米随身wifi (mt7601u芯片),以及一根网线。初步设想是一根网线连接与笔本直连,然后共享无线网,然而因为有三个网口,方案失败,准备后续折腾。第二种方案就是使用无线网卡啦,由于没有那种mini PCI-e接口的,就用手头现有的就成。buildroot和Yocto默认都没有编译进无线网卡驱动,想要使用需要自己重新编译。但是这次的ArchLinux算是比较完整的操作系统,真正开箱即用,插上无线网卡就能识别。以下命令大多需要root权限,可以su后输入密码root以获得相关权限,后期使用sudo。 3.1 连接无线网络3.1.1手动连接无线网络由于没有路由器插不了网线,初始只能使用MicroUSB数据线进行串口登录,我们插上RT3070发现可以直接识别,连接我们的无线网络。具体请参考ArchWiki | Wireless network configuration。 基本的网络控制工具如下,这些用户空间工具可以对无线连接进行完整控制。 iw - 仅支持 nl80211 标准,不支持老的 WEXT (Wireless EXTentions) 标准。如果 iw 没有显示网卡,可能是这个原因。 wireless_tools - 已经过时,但是依然广泛使用。WEXT 设备使用此工具。 wpa_supplicant - 提供 WPA/WPA2 加密支持,同时支持 nl80211 和 WEXT。
lsusb # 查看是否识别设备,如果没有,可以进一步dmesg或lsmod查找相关问题 ip link # 查看是否识别无线网接口,这里可以看到wlan0,。也可以iwconfig命令 ip link set dev wlan0 up # 默认没有自动启用wlan0,也可以使用ifconfig wlan0 up iw dev wlan0 scan # 扫描周围无线SSID,确认无线网卡是否可以正常运行。也可以使用iwlist wlan0 scanning wpa_supplicant -i wlan0 -c <(wpa_passphrase [your_SSID] [your_key]) # 连接无线网络,注意替换无线网名称与密码。查看调试信息后,如果成功连接,可以用Ctrl+C停止运行,并增加-B参数以使wpa_supplicant后台运行。 dhcpcd wlan0 # 向DHCP服务器为wlan0获取IP地址。、 iw dev wlan0 link # 查看无线网卡连接状态,也可iwconfig ping -c 2 www.baidu.com # 确认是否连接到互联网以上3、5、6步是必须的。经过以上步骤,即可以正常连接到无线网络。 3.1.2 自动设置无线网络现在无线网基本都是wpa2加密,很少见到wep这种容易被破解的加密方式了,所以需要使用wpa_suppliant。ArchLinux目前使用Netctl来管理网络。除此之外还有Connman、NetworkManager、Wicd、Wifi Radar等,但是注意它们是互斥的,不能同时运行两个守护进程。其中Netctl使用控制台工具netctl和wifi-menu,netctl 与 systemd 一起工作。基于配置文件,可以检查和连接多种网络类型。使用简单,并不比图形工具难。 参阅: Netctl (简体中文)。 使用wifi-menu -o命令来自动扫描无线网络并生成配置文件,生成的配置文件在/etc/netctl/目录下,-o参数避免明文保存密码。 输入相关信息后,可以看到生成的配置文件,且非明文存储密码: 此时一般已经可以直接连接到互联网,无需手动获取IP地址,如果不行,用方法一手动联网一次,再使用方法二。 如果想要开机自动启用无线并进行连接,可以运行如下命令: netctl enable [profile_name] # 上面生成的配置文件,如wlan0-FAST_XXXX netctl reenable [profile_name]重启看看,是不是开机自动连上网啦。以上方法仅能固定连接某一个无线网,当然,因为Espressobin一般不会移动便携使用,位置固定,连接的无线网也相对固定,所以问题不大,如果你想在多个无线网络之间自动切换,可以参考ArchWiki。
|