在
一、无线网卡为免驱版,插上网卡为DISK模式,需要安装usb_modeswitch:
apt install usb_modeswitch 或apt install usb-modeswitch
通过命令切换为无线网卡:usb_modeswitch -v (vid) -p(pid) -K。但是重启失效。
按照以下步骤配置,实现开机或插拔自动切换:
1. 创建自定义的 udev 规则文件在系统的udev规则目录下新建一个配置文件:nano /etc/udev/rules.d/99-usb-modeswitch-custom.rules在文件中粘贴以下内容(这行代码的意思是:只要系统发现供应商 ID 是0bda,产品 ID 是a192的设备,就自动执行你之前的切换命令):textACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="a192", RUN+="/usr/sbin/usb_modeswitch -v 0x0bda -p 0xa192 -K"请谨慎使用此类代码。:如果系统提示找不到/usr/sbin/usb_modeswitch,你可以先运行which usb_modeswitch查看其实际绝对路径,并替换上面命令中的路径。保存并退出(在nano中按Ctrl+O回车保存,Ctrl+X退出)。2. 让 udev 规则立即生效无需重启,运行以下命令让系统重新加载刚才写好的规则:
bash
sudo udevadm control --reload-rules sudo udevadm trigger
二、获取驱动源码
git clone https://github.com/a5a5aa555oo/rtl8xxxu.git
按照源码说明安装。
注意:安装步骤中需要安装linux headers,此物版本必须与系统内核版本(uname -r)一致,老版本armbian已经找不到对应版本的headers了
三、安装完驱动之后连接无线网:
根据 Cubieboard2 常见的系统镜像(如 Armbian、Debian 或 Ubuntu Minimal),后台最有可能运行的是NetworkManager或systemd-networkd。你可以通过以下两个步骤来定位并解决无线网卡无法获取 IP 的问题:第一步:排查后台究竟是哪个网络服务请在命令行运行以下命令,看哪一个有输出:
- 检查是否是 NetworkManager
bashsystemctl is-active NetworkManager
- 如果显示
active:说明你的系统其实是有nmcli工具的!只是之前可能是输错了或者在非 root 账户下。请尝试直接运行:nmcli device wifi connect "WiFi名称" password "密码"通过系统自带的
nmcli连 Wi-Fi,它会自动触发系统内置的 DHCP,完美解决你的问题。- 检查是否是 systemd-networkd
systemctl is-active systemd-networkd
- 如果显示
active:这是现代 Debian/Ubuntu 常用的轻量网络管理服务,它通过配置文件来管理有线和无线网卡。第二步:如果是 systemd-networkd 的解决办法如果确认后台是systemd-networkd,你需要让系统网络服务知道这个新网卡,并允许它使用 DHCP
- 创建无线网卡的网络配置文件
使用文本编辑器(如nano)新建一个配置文件:nano /etc/systemd/network/25-wireless.network在文件中粘贴以下内容(开启该网卡的 DHCP 客户端):
ini[Match] Name=wlxd4840990232b [Network] DHCP=ipv4保存并退出(nano 编辑器按
Ctrl+O回车保存,Ctrl+X退出)。- 创建 Wi-Fi 密码配置文件
systemd-networkd本身不处理无线认证,需要通过wpa_supplicant作为其后端服务。我们需要使用系统自带的服务来启动它:# 生成标准的 wpa_supplicant 配置 wpa_passphrase "你的WiFi名称" "你的密码" > /etc/wpa_supplicant/wpa_supplicant-wlxd4840990232b.conf- 启动并开机自启系统自带的无线服务
bashsystemctl enable --now wpa_supplicant@wlxd4840990232b.service systemctl restart systemd-networkd- 验证状态
你可以运行以下命令查看systemd-networkd是否已经成功给无线网卡分配了 IP:bashnetworkctl status wlxd4840990232b