问题是系统开机后2分钟左右wifi才可用。但之后网络就可以正常工作了。
/var/log/messages
包含以下错误消息:
Apr 22 17:52:41 glorx530 kernel: [ 1.967945] iwlwifi 0000:03:00.0: can't disable ASPM; OS doesn't have ASPM control
Apr 22 17:52:41 glorx530 kernel: [ 1.968497] iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-6000-6.ucode failed with error -2
Apr 22 17:52:41 glorx530 kernel: [ 1.968790] iwlwifi 0000:03:00.0: Falling back to user helper
....
Apr 22 17:53:23 glorx530 kernel: [ 62.477819] iwlwifi 0000:03:00.0: Direct firmware load for iwlwifi-6000-5.ucode failed with error -2
Apr 22 17:53:23 glorx530 kernel: [ 62.477820] iwlwifi 0000:03:00.0: Falling back to user helper
....
Apr 22 17:54:24 glorx530 kernel: [ 123.954134] iwlwifi 0000:03:00.0: loaded firmware version 9.221.4.1 build 25532 op_mode iwldvm
看起来内核(或 iwlwifi 驱动程序?)尝试从 加载固件iwlwifi-6000-6.ucode
,然后iwlwifi-6000-5.ucode
从其他文件(哪个?)加载固件,这次成功并且此时网络可用。
/lib/firmware 目录中没有iwlwifi-6000-6.ucode
和iwlwifi-6000-5.ucode
文件(但是有iwlwifi-6000-4.ucode
)。
我试图在制造商网站上找到适用于我的网卡的固件(我有“Intel Corporation Centrino Ultimate-N 6300”网卡),但我下载的软件包包含iwlwifi-6000-4.ucode
- 并且它与我已经安装到 /lib/ 中的文件相同固件。
我怀疑真正的问题不是缺少固件文件,而是驱动程序等待 1 分钟以尝试从列表中加载下一个固件文件。
欢迎任何解决此问题的想法。
更新:我会尝试复制(或链接)iwlwifi-6000-4.ucode
到iwlwifi-6000-6.ucode
,但这不是真正的方法。
更新1:我尝试过,但没有帮助。
这个问题在这里讨论:
https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1398458
那里建议的解决方法对我有帮助。我创建了一个文件 /etc/udev/rules.d/50-firmware.rules :
SUBSYSTEM=="firmware", ACTION=="add", ATTR{loading}="-1"