linux 程序切换wifi,linux wpa_supplicant连接无线网络(转)

2023-05-16

本文转自:http://forum.ubuntu.org.cn/viewtopic.php?f=155&t=314945

斗胆写个WPA2加密网络下net模式的安装指南,是因为实在被这个安装折磨得受不了了,N次的tty7失败,hcdp失败,还有更要命的kernel panic -not syncing:vfs:unable to mount rootfs on unkown-block(0.0),甚至到最后光盘模式、图形界面下装个衍生版本Archbang,都无法成功。已经把我打击的不行了。好不容易收了 它,自然得发泄一下。我会尽可能详细的讲解全部的安装经历,把每一个笔记碎片串起来,用以纪念被ArchLinux的安装折磨的这十几个日和夜。

1、先说明安装环境

一台P4 845G的老旧爱机(2G内存,160G SATA+320 SATA硬盘),TPLink无线路由器,TPLink无线USB网卡

网络环境: 教育网

安装方式:U盘启动安装 采用unetbootin-windows-494制作,(目前发现这个版本采用HDD模式刻录、启动表现最好,能正常启动,也少在初始化时出现错误。)

其中,TPLink无线路由器最初设置为

安全类型 WPA-PSK/WPA2-PSK

安全选项 WPA2-PSK

加密方法 AES

请各位看客,非常注意我的无线路由配置,已经一开始的最初二字,后面,我会饱含血泪的告诉诸位,为什么这些设置如此重要。

1、原始状态

原在160G SATA硬盘中装有一个 Windows7操作系统,并分有5个区,其中有1个11G和1个40G的区是完全空的,320G SATA硬盘所有分区全部都装有数据。

2、安装

1) 不知道是命苦还是,Arch鄙视我这个菜鸟,每次选择从CD安装都不行,无论是64位的Netinstall Image,还是64位的Core Image,亦或者archlinux-2010.12-1-archboot.iso,都千篇一律的在选择CD模式后,弹出无法找到 /src/core/pkg。没办法只好自己建了一个目录。Arch开始倒是很听话就通过了选择安装模式这一关,但是到了更新安装包时,就开始弹出 tty7错误的信息,无法继续下去。只好铁了心的要用http/ftp模式安装。

2)被逼上梁山的感觉很不好,但是只要坚持,倒真能找到路。

我在ArchLinux的wiki和论坛里翻了很久之后,发现这篇回复。这也打开了我在命令行使用无线wpa2网络的钥匙。就连wiki,我个人觉得都需要以这篇为主干,混合在一起看,才能看懂。

https://bbs.archlinux.org/viewtopic.php?pid=734332 #7

具体流程如下:

1、开始还是正常的流程,由U盘启动,进过初始化,进入到系统中,出现

代码:

archiso login:

根据提示,输入root,密码[空]。

如果你不能从U盘启动,并到不了登陆这一步,wpa2模式安装过程讲解完成后,会给你解决方法。

登陆后,输入 /arch/setup 开始进入蓝色的安装界面。

source selection -> net ->

仔细看此处的提示,你会发现可以在此时,用Alt+F2,切换到桌面2,设置好无线网络,再使用ALT+F1,切换回蓝色的安装界面,也就是桌面1。我也是这样做的。

ALT+F2,切换到桌面2,然后用root登陆。开始无线网络设置。

2、首先查看光盘里有没有wpa_supplicant.conf文件,它一般在/etc/wpa_supplicant.conf

3、备份/etc/wpa_supplicant.conf

代码:

# mv /etc/wpa_supplicant.conf /etc/wpa_supplicant.conf.original

基于我们现在还处于操作系统的安装过程,所以,wiki里的WPA GUI安装,在当下没有意义。

4、修改wpa_supplicant.conf

1)输入命令+修改,以我的无线网络的SSID号为Mywireless,密码为 secretpassphrase ,为例。我就要按如下输入。

代码:

# wpa_passphrase Mywireless "secretpassphrase" > /etc/wpa_supplicant.conf

2)

代码:

nano /etc/wpa_supplicant.conf在这里顺便赞一个nano,实在太顺手了,比起vi和vim,nano与windows下的文本输入使用方式更接近。

会看到wpa_supplicant.conf本应是新建的空白文档,已经被填入了如下数据。

代码:

network={

ssid="mywireless"

#psk="secretpassphrase"

psk=7b271c9a7c8a6ac07d12403a1f0792d7d92b5957ff8dfd56481ced43ec6a6515

}

此处到关键点了,手动添加一下,变成这样

network={

ssid="Mywireless" #请非常注意你ssid名的大小写。

proto=RSN #Robust Security Network:强健安全网络,表示这个网络配置比WEP模式要更安全。

key_mgmt=WPA-PSK #请无论你是使用WPA-PSK,WPA2-PSK,都请在这里输入 WPA-PSK。这在wpa_supplicant看来WPA-PSK,WPA2-PSK都是 WPA-PSK,改成WPA2-PSK,它会不认识。

pairwise=CCMP TKIP #关键点,wpa_supplicant目前还不认AES的加密标准,因此即使你在此输入AES也没有用,自行web到路由器上改成CCMP TKIP吧,否则…… 否则 …… 我也不知道该怎么做。

group=CCMP TKIP #同上

psk=7b271c9a7c8a6ac07d12403a1f0792d7d92b5957ff8dfd56481ced43ec6a6515 #wpa_supplicant算出来的密码。如果你自己会算,你就可以完全自己写这个wpa_supplicant.conf文件

25396538_1.gif

}

如果还想添加另外的无线接入点。

代码:

# wpa_passphrase additional_ssid "additional_passphrase" >> /etc/wpa_supplicant.conf

并用nano打开/etc/wpa_supplicant.conf文档,在文档顶端写入如下:

代码:

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=wheel

3) 启动wlan

代码:

ifconfig wlan0 up

4) 搜索无线接入点

代码:

iwlist wlan0 scan

5)用ALT+F3切换到桌面3,以保证桌面2的相对干净,不会在后面进行网络连接时的大量刷屏所干扰。

6)启动wpa_supplicant协议

代码:

wpa_supplicant -i wlan0 -c /etc/wpa_supplicant.conf -d

此时,wpa_supplicant开始快速刷屏,不停的传回目前的连接情况,注意看有没有哪些是mismatch,如果有,认真回去改wpa_supplicant里的SSID 或者 key_mgmt、pairwise、group。

再强调一遍

a、不要写成WPA2-PSK,即使你真的是,也要写成WPA-PSK。

b、如果用的是AES加密标准,wpa_supplicant是不能识别的。自行在路由器上改成CCMP TKIP。

7)可选步骤,如果你网络在上一步已经提示连接上,且你的路由器采用的dhcp分配IP地址,那么请输入。

代码:

dhcpcd wlan0

8)用ALT+F1切换回久违的蓝色Archlinux安装界面。

如果你用的是静止IP,那么可以在后一步自行输入IP 掩码,网关信息。

到此,在wpa2加密环境下,进行无线网络连接的最关键部分就完成了。

====================================================================================

推荐一个教育网下载很快的Archlinux镜像站

记住,在图文安装Archlinux模式下,输入更新镜像地址,请只输入顶级域名部分。

代码:

Shttp://mirror.csclub.uwaterloo.ca/

直接在mirror.lst中手工加入,则需注意要添加一些尾巴。如:/archlinux/$repo/os/$arch[/code

代码:

Server = http://mirror.csclub.uwaterloo.ca/archlinux/$repo/os/$arch[/code

=====================================================================================

rc.conf

[code]LOCALE="en_US.UTF-8" #没改成zh_CN,以避免出现命令行下出现中文乱码和方块的情况,就让它都用英文吧。图形界面有其他地方可以改。

HARDWARECLOCK="UTC"

TIMEZONE="Asia/Shanghai"

KEYMAP="us"

CONSOLEFONT=Lat2-Terminus16

CONSOLEMAP=

USECOLOR="yes"

MOD_AUTOLOAD="yes"

USELVM="no"

HOSTNAME=""

wlan0="dhcp" #此处wlan方式安装完后,程序就已经自行改好了。

INTERFACES=(wlan0) #此处wlan方式安装完后,程序就已经自行改好了。

gateway="default gw 192.168.0.1"请写自己的网关地址。

ROUTES=(!gateway)

DAEMONS=(syslog-ng net-profiles)[/code]后面要添加这两个。

locale.gen 拉到该文件的最下面。

[code]zh_CN.GB18030 GB18030 去掉前面的#

zh_CN.GBK GBK 去掉前面的#

zh_CN.UTF-8 UTF-8 去掉前面的#

zh_CN GB2312 去掉前面的#

不得不说,ArchLinux的中文格式还是挺全的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

linux 程序切换wifi,linux wpa_supplicant连接无线网络(转) 的相关文章

随机推荐