首先,需要注意的是centos 7的内核为3.10,而realtek(8192)目前官网仅能支持3.9,导致有2个函数无法识别。 realtek官网驱动: http://www./downloads/downloadsView.aspx?Langid=3&PFid=48&Level=5&Conn=4&ProdID=277&DownTypeID=3&GetDown=false&Downloads=true 不过不要紧的,有解决办法的,下载下来先。解压得到文件夹:RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911,里面有个driver的子文件夹,里面又放了一个叫做:rtl8188C_8192C_usb_linux_v4.0.2_9000.20130911.tar.gz的文件,不要动它!我们不会用它的!
那么用哪个包呢?
首先参考了这个帖子:http://www./group/topic/347735/,被坑,依然编译不过。 后来在国外某论坛找到了一个fix版本: https://github.com/pvaret/rtl8192cu-fixes, 如果没法上,可以去这里下载: http://download.csdn.net/detail/qwddn12/9284391 把它解压后放在driver下面,目录结构为:driver/rtl8192cu-fixes-master/ 然后回到RTL8188C_8192C_USB_linux_v4.0.2_9000.20130911主文件夹下,打开install.sh,修改之: 之后打开terminal,运行./install.sh即可。 接下来可以参考下列帖子,一步一步走就行了。 http://www./infodetail-433649.html (从“模块的加载方式”开始看)
需要说明的是,查看8192驱动是否安装上了,命令为 lsmod | grep 8192cu,如果返回了8192cu.ko就证明OK了。 当初步插上无线wifi USB卡时,可以先lsusb一下,看能识别到芯片名字不。 http://www./infodetail-433649.html (从“模块的加载方式”开始看)贴在下面,以免链接失效: 模块的加载方式 insmod (后跟全路径,不能解决依赖关系) modprobe (后跟模块名称,自动解决依赖关系)当然用这种了 [root@wang wireless]# modprobe 8192cu 加载模块 [root@wang wireless]# lsmod |grep 8192 查看已经加载的模块是否成功 8192cu 481561 0 成功了 [root@wang wireless]# ifconfig -a 查看网卡情况 lo no wireless extensions. eth0 no wireless extensions. wlan0 unassociated Nickname:"<WIFI@REALTEK>" Mode:Managed Frequency=2.412 GHz Access Point: Not-Associated Sensitivity:0/0 Retry:off RTS thr:off Fragment thr:off Encryption key:off Power Management:off Link Quality:0 Signal level:0 Noise level:0 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 [root@wang wireless]# cd /media/cdrom/Packages/ [root@wang Packages]# ll |grep -i wireless -r--r--r--. 2 root root 94584 Jul 3 2011 wireless-tools-29-5.1.1.el6.i686.rpm [root@wang Packages]# yum --disablerepo=\* --enablerepo=c6-media install wireless-tools -y 安装wireless相关的工具 [root@wang Packages]# iwconfig 查看无线网卡 [root@wang ~]# ifconfig wlan0 up 激活无线网卡 [root@wang ~]# iwlist wlan0 scanning 扫描无线网络ap wlan0 Scan completed : Cell 01 - Address: F8:D1:11:FB:F6:D4 ESSID:"php-1" Protocol:IEEE 802.11bgn Mode:Master Frequency:2.437 GHz (Channel 6) Encryption key:on Bit Rates:300 Mb/s Extra:wpa_ie=dd160050f20101000050f20401000050f20401000050f202 IE: WPA Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK Extra:rsn_ie=30140100000fac040100000fac040100000fac020000 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK IE: Unknown: [root@wang ~]# wpa_passphrase php-1 设置连接php-1的密码
(如果没有wpa_passphrase,需要安装wpa_supplicant相关的包) # reading passphrase from stdin qaz123!@# network={ ssid="php-1" #psk="qaz123!@#" psk=3a30ab87951721ed310c46f6b19ceed2aa2fdb54baaffcbdd965d6bc81744698 [root@wang ~]# wpa_passphrase php-1 >>/etc/wpa_supplicant/wpa_supplicant.conf 将上面的文件追加到wpa_supplicant.conf控制文件中 qaz123!@# [root@wang ~]# vim /etc/wpa_supplicant/wpa_supplicant.conf可以查看下是否追加成功 [root@wang ~]# wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -D wext 进行无线网络的连接 -B后台运行 -i指出哪个设备 -c密码文件的路径 -D驱动名称 ioctl[SIOCSIWAP]: Operation not permitted 出现这个没关系实际上已经连接上了 [root@wang ~]# iwconfig lo no wireless extensions. eth0 no wireless extensions. wlan0 IEEE 802.11bgn ESSID:"php-1" Nickname:"<WIFI@REALTEK>" Mode:Managed Frequency:2.437 GHz Access Point: F8:D1:11:FB:F6:D4 Bit Rate:300 Mb/s Sensitivity:0/0 Retry:off RTS thr:off Fragment thr:off Encryption key:****-****-****-****-****-****-****-**** Security mode:open Power Management:off Link Quality=100/100 Signal level=74/100 Noise level=0/100 Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0 Tx excessive retries:0 Invalid misc:0 Missed beacon:0 [root@wang ~]# dhclient wlan0获取ip地址 [root@wang ~]# ifconfig wlan0 Link encap:Ethernet HWaddr 0C:82:68:1E:48:FB inet addr:192.168.102.103 Bcast:255.255.255.255 Mask:255.255.255.0 inet6 addr: fe80::e82:68ff:fe1e:48fb/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:333 errors:0 dropped:476 overruns:0 frame:0 TX packets:11 errors:0 dropped:6 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:59505 (58.1 KiB) TX bytes:3244 (3.1 KiB) 获取ip地址成功 接下来还有个问题,当系统重启时候 wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -D wext dhclient wlan0 这些命令不会自动执行 如果需要自动执行需要把这些文件写到开机脚本里面 开机脚本写到/etc/rc.local 或者 /etc/rc.d/rc.local 都可以 [root@wang ~]# echo "wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf -D wext" >>/etc/rc.d/rc.local [root@wang ~]# echo "dhclient wlan0">>/etc/rc.d/rc.local 将这2条命令加入开机脚本即可 注意: 1. 记得要把rc.local改为可执行:chmod +x rc.local。 2. 如果你是写了一个脚本,比如drive_wifi.sh,放到/etc/rc.d/下,那么编辑rc.local时其要用绝对路径:/etc/rc.d/drive_wifi.sh,并且sh文件也要有可执行权限才OK。 3.wpa_passphrase命令格式: wpa_passphrase wifi_ESSID password。比如要连接名为TP_LINK-123的WIFI点,密码为12345678,则命令为wpa_passphrase TP_LINK-123 12345678。 这样,就能实现开机自动链接wifi了。
|