由于某种原因,从 17.04 更新到 17.10 后,WiFi 适配器驱动程序未安装。我尝试安装它们,但我找到的方法不起作用。下载并将存档解压到文件夹中后/usr/src
,我使用以下命令执行安装
sudo dkms install -m rt3290sta -v 2.6.0.0 --force
以下是我得到的结果:
Kernel preparation unnecessary for this kernel. Skipping...
applying patch rt3290sta.patch...patching file src/include/os/rt_linux.h
patching file src/Makefile
patching file src/os/linux/config.mk
patching file src/os/linux/Makefile.6
patching file src/os/linux/Makefile.clean
patching file src/os/linux/pci_main_dev.c
patching file src/os/linux/rt_linux.c
patching file src/tools/Makefile
Building module:
cleaning build area...
make -j4 KERNELRELEASE=4.13.0-16-generic -C src/ LINUX_SRC=/lib/modules/4.13.0-16-generic/build..............(bad exit status: 2)
ERROR (dkms apport): binary package for rt3290sta: 2.6.0.0 not found
Error! Bad return status for module build on kernel: 4.13.0-16-generic (x86_64)
Consult /var/lib/dkms/rt3290sta/2.6.0.0/build/make.log for more information.
我的 WiFi 配置http://paste.ubuntu.com/25891558/
请帮助我了解哪里出了问题。
答案1
sudo rm /etc/modprobe.d/blacklist-ralink.conf
sudo rm /etc/modprobe.d/rt2800pci.conf
sudo dkms remove -m rt3290sta -v 2.6.0.0 --all
sudo sed -i 's/3/2/' /etc/NetworkManager/conf.d/*
重启
您的设备应该可以在禁用无线电源管理的内核下正常工作(命令#4)前两个命令删除内核模块上的黑名单,第三个命令卸载不工作的dkms模块
答案2
有驱动程序 rt3290sta 的分支,它与内核 4.13 兼容。这确实帮助我启动并运行了我的无线驱动程序。没有什么效果,但经过大量研发后,这个确实有效
如果make
失败只需编辑此文件
vi /home/riz/rt3290sta/os/linux/../../os/linux/sta_ioctl.c
并替换第 700 行
memcpy(extra,addr,i*sizeof(addr[0]));
和
memcpy(extra,addr,i*sizeof(struct sockaddr));
`
git clone https://github.com/pkeeper/rt3290sta.git
cd rt3290sta
make
sudo make install
sudo modprobe -r rt2800pci
sudo modprobe rt3290sta