得到RTL8189驱动
我用的是备正点原子IMX6U-MINI开发板,正点原子提供了 SDIO WIFI 模块(RTL8189)驱动,该驱动位于/home/root/driver/rtl8189/目录下,执行下成的指令查看。
正点原子同时也提供了一个初始化脚本用来安装该驱动,该驱动位于/home/root/shell/wifi/alientek_sdio_wifi_init.sh,运行该脚本可以安装RTL8189驱动。
开机自动加载驱动
由于linux启动后执行rcS.d目录下的文件,在rcS.d中放置的是init.d中脚本的链接,命名格式是:
S{number}{name}
K{number}{name}
S开始的文件向脚本传递start参数
K开始的文件向脚本传递stop参数
number决定执行的顺序
由此在rcS.d路径下建立一个SXX的链接文件。
拷贝/home/root/shell/wifi/alientek_sdio_wifi_init.sh脚本文件到/etc/init.d/目录,在/etc/rcS.d/目录下建立软连接文件S80RTL8189_driver到alientek_sdio_wifi_init.sh,执行命令建立软连接:
$cd /etc/rcS.d
$ln -s /etc/init.d/alientek_sdio_wifi_init.sh S80RTL8189_driver
重新启动,可看到系统自动安装了RTL8189的驱动。
开机自动连接wifi
- wifi账号密码配置文件准备
在/etc/路径下创建account_setting.conf文件,内容
ctrl_interface=/var/run/wpa_supplicant
network={
ssid=“lalala”
psk=“00005419”
}
这里ctrl_interface后面的值不需要动。反正我机器上这个路径也不存在,但是好使…
ssid的值替换成你的wifi名,尽量不要有中文和奇奇怪怪的符号,不知道到时候解析有没有问题,psk是密码。这里的配置是普通的wifi密码配置,如果是其他奇怪的加密方式,那就要看查一下wpa_supplicant配置的相关规则了。
- 脚本准备
创建bootstrapping.sh文件,内容
#!/bin/bash
rfkill unblock all
sleep 5
ip link set wlan0 up&&
wpa_supplicant -Dnl80211 -c /etc/account_setting.conf -i wlan0 &
sleep 5
udhcpc -b -i wlan0
- 修改权限
chmod 755 这两个文件
这里防止开机启动时由于权限不足而无法启动脚本。
- 开机启动配置
在/etc/rc.local文件(其他系统都有这个开机启动的配置文件)追加我们的脚本:
/etc/bootstrapping.sh
一定要写在exit 0之前。