Update: 刚不知道为什么无线又没了,但是执行文末的三条命令还是可以立即开启的,直接忽略错误,一次不行就执行两次。有空再研究下。
这个网卡其实很老了,不知道为什么2015年班的顶配Thinkpad T440P还在用(好吧T440P也很老的机型了)。
其实这个网卡在这里面不是驱动不上,系统可以识别,而且间歇性好用,但是无法搞清怎么才能每次都好用。
后来实在忍不了,彻底研究了一下。
先说解决方案(不确定自己以后是否有时间来完善过程。):
注意,本文说的是Ubuntu16.04下,网卡是Intel Wireless-N 7260的环境下,其他可参考,但不保证好用。
1,先确定自己是否需要下载,如果不需要,直接第2步:
lspci -nnk | grep -iA2 net
dmesg | grep iwl
这两步执行完了,看结果中有没有一行类似这样的:
2.509834 iwlwifi 0000:02:00.0: request for firmware file 'iwlwifi-7260-6.ucode' falied.
主要是后面那个
'iwlwifi-7260-6.ucode' falied.
如果有,去这个地方 https://wireless.wiki.kernel.org/en/users/drivers/iwlwifi/core_release#how_to_install_the_driver
下载下面表里的 -17.ucode后面的7260(https://git.kernel.org/cgit/linux/kernel/git/iwlwifi/linux-firmware.git/plain/iwlwifi-7260-17.ucode)。 不要下更高版本的,上面都说了7260只支持到17版本。
下载到一个名为 iwlwifi-7260-17.ucode 的文件。
然后:
cd ~/Downloads
sudo cp iwlwifi-7260-17.ucode /lib/firmware/
2,执行如下命令:
sudo gedit /etc/modprobe.d/iwlwifi.conf
里面的内容为:
# /etc/modprobe.d/iwlwifi.conf
# iwlwifi will dyamically load either iwldvm or iwlmvm depending on the
# microcode file installed on the system. When removing iwlwifi, first
# remove the iwl?vm module and then iwlwifi.
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211
不要换行在后面跟上:
&& /sbin/modprob iwlwifi
最后里面的未注释内容就是这样的:
remove iwlwifi \
(/sbin/lsmod | grep -o -e ^iwlmvm -e ^iwldvm -e ^iwlwifi | xargs /sbin/rmmod) \
&& /sbin/modprobe -r mac80211 && /sbin/modprob iwlwifi
然后重启即可。
而实际上,如果第一步你没问题或者已经做了,直接执行如下命令就可以开启Intel Wireless-N 7260,不用重启:
sudo modprobe -r iwlmvm
sudo modprobe -r iwlwifi
sudo modprobe iwlwifi
很显然,那个conf文件里,是在执行前两步,只是写得更完善,但最后没有执行最后一步。