我是一个非常新的 Ubuntu 用户,我的 wifi 卡有点问题。这是我的设置:我在第 7 代 Thinkpad X1 Carbon 上双启动 Windows 10 和 Ubuntu 18.04。当我在 2020 年 1 月第一次在机器上安装 Ubunutu 时,它无法检测到无线网卡。我尝试安装正确的驱动程序但没有任何效果,所以一个朋友自己写了一个驱动程序并让 wifi 工作。(不幸的是,我没有他写的副本。)
上周末,我尝试将蓝牙键盘连接到笔记本电脑,这似乎通过显着减慢它来干扰 wifi 连接。没有考虑我朋友写了一些奇怪的驱动程序的事实,我试图通过以下帖子解决蓝牙问题:wi-fi and bluetooth not 同时工作。具体来说,我试过
sudo tee /etc/modprobe.d/iwlwifi-opt.conf <<< "options iwlwifi bt_coex_active=N"
然后重新启动。它似乎没有帮助,所以我删除了这个通过
sudo rm /etc/modprobe.d/iwlwifi-opt.conf
这些命令导致互联网连接非常不稳定——连接会暂时正常,然后会中断并间歇性地返回。经过一番搜索,我发现这篇文章 Unstable wireless with Intel 7260 + iwlwifi after upgrade to 15.04,这似乎与我的问题几乎相同。因此,我尝试从 [wireless.wiki.kernel.org/en/users/drivers/iwlwifi] 安装适当的驱动程序,但它没有解决任何问题。但是,该帖子将我指向https://forum.ubuntu-fr.org/viewtopic.php?pid=22251520#p22251520 - 当我跑
sudo apt install git build-essential
git clone https://git.kernel.org/pub/scm/linux/kernel/git/iwlwif/backport-iwlwifi.git
cd backport-iwlwifi
make defconfig-iwlwifi-public
sed -i 's/CPTCFG_IWLMVM_VENDOR_CMDS=y/# CPTCFG_IWLMVM_VENDOR_CMDS is not set/' .config
make -j4
sudo make install
cd /lib/firmware
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/iwlwifi-9000-pu-b0-jf-b0-38.ucode
sudo wget https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/iwlwifi-9260-th-b0-jf-b0-38.ucode
Ubuntu 完全停止检测任何 wifi 适配器,所以现在我不知道该怎么做。
以下是查看类似帖子后似乎很重要的命令的输出:
输出lspci -knn | grep Net -A3; rfkill list
:
00:14.3 Network controller [0280]: Intel Corporation Device [8086:02f0]
Subsystem: Intel Corporation Device [8086:0030]
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
0: tpacpi_bluetooth_sw: Bluetooth
Soft blocked: no
Hard blocked: no
1: hci0: Bluetooth
Soft blocked: no
Hard blocked: no
输出dmesg | grep iwl
:
[ 5.317830] Loading modules backported from iwlwifi
[ 5.317831] iwlwifi-stack-public:master:8324:9176b151
[ 5.385415] iwlwifi 0000:00:14.3: enabling device (0000 -> 0002)
[ 5.401853] iwlwifi 0000:00:14.3: Direct firmware load for iwl-dbg-cfg.ini failed with error -2
[ 5.402022] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-55.ucode failed with error -2
[ 5.402116] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-54.ucode failed with error -2
[ 5.402211] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-53.ucode failed with error -2
[ 5.402222] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-52.ucode failed with error -2
[ 5.402232] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-51.ucode failed with error -2
[ 5.402454] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-50.ucode failed with error -2
[ 5.402465] iwlwifi 0000:00:14.3: Direct firmware load for iwlwifi-QuZ-a0-jf-b0-49.ucode failed with error -2
[ 5.404064] iwlwifi 0000:00:14.3: TLV_FW_FSEQ_VERSION: FSEQ Version: 43.2.23.17
[ 5.404066] iwlwifi 0000:00:14.3: Found debug destination: EXTERNAL_DRAM
[ 5.404067] iwlwifi 0000:00:14.3: Found debug configuration: 0
[ 5.404286] iwlwifi 0000:00:14.3: loaded firmware version 48.13675109.0 QuZ-a0-jf-b0-48.ucode op_mode iwlmvm
[ 5.404304] iwlwifi 0000:00:14.3: Direct firmware load for iwl-debug-yoyo.bin failed with error -2
[ 5.442441] RIP: 0010:iwl_op_mode_mvm_start+0xa8/0xb50 [iwlmvm]
[ 5.442479] _iwl_op_mode_start.isra.6+0x47/0x80 [iwlwifi]
[ 5.442489] iwl_opmode_register+0x88/0xe0 [iwlwifi]
[ 5.442510] __init_backport+0x3d/0x1000 [iwlmvm]
[ 5.442565] Modules linked in: iwlmvm(OE+) snd_soc_core aesni_intel(+) snd_compress ac97_bus snd_pcm_dmaengine btusb crypto_simd mac80211(OE) btrtl cryptd libarc4 btbcm glue_helper drm_kms_helper fjes(-) uvcvideo btintel iwlwifi(OE) intel_cstate snd_hda_intel videobuf2_vmalloc drm bluetooth videobuf2_memops snd_intel_dspcfg videobuf2_v4l2 snd_hda_codec videobuf2_common snd_hda_core snd_seq_midi videodev snd_seq_midi_event thinkpad_acpi(+) snd_hwdep processor_thermal_device i2c_algo_bit intel_lpss_pci(+) ecdh_generic cfg80211(OE) fb_sys_fops intel_lpss nvram intel_wmi_thunderbolt serio_raw wmi_bmof input_leds mc ledtrig_audio ecc snd_pcm snd_rawmidi intel_rapl_common mei_me idma64 syscopyarea compat(OE) virt_dma mei sysfillrect ucsi_acpi sysimgblt intel_soc_dts_iosf typec_ucsi snd_seq typec snd_seq_device snd_timer snd int3403_thermal soundcore int340x_thermal_zone mac_hid int3400_thermal acpi_thermal_rel acpi_pad acpi_tad sch_fq_codel parport_pc ppdev lp parport ip_tables x_tables autofs4
[ 5.442623] RIP: 0010:iwl_op_mode_mvm_start+0xa8/0xb50 [iwlmvm]
输出lspci -nnk | grep 0280 -A3
:
00:14.3 Network controller [0280]: Intel Corporation Device [8086:02f0]
Subsystem: Intel Corporation Device [8086:0030]
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
我很乐意发布解决此问题所需的更多输出,但我不确定此时会有什么用处,所以请告诉我。谢谢你的帮助。
在我们找到更多信息之前,这将是部分答案。
让我们撤消禁用无线的步骤。从终端:
重启。现在无线工作正常吗,虽然不稳定?
我相信这个想法是让无线驱动程序和蓝牙共存。请尝试,而不是:
也就是说,“是的,我确实希望 wifi 和蓝牙共存。” 跟随:
有什么改善吗?
编辑:由于蓝牙频率与 2.4 GHz wifi 频道重叠,您可能会发现仅在 wifi 中使用 5 GHz 频道可以提高性能。由于大多数消费级路由器默认设置为对两个网段使用相同的 SSID 或路由器名称,此外,为了启用频道的自动选择,您的 wifi 很可能在 2.4 和5 GHz 频道。您可以通过将段重命名为不同的名称(例如 chili2.4 和 chili5 或类似名称)来避免这种情况。进行此更改后,连接到 chili5;也就是说,仅使用 5 GHz 频道。
您还可以采取几个步骤来优化无线连接。首先,检查路由器中的设置。首选 WPA2-AES;不是任何 WPA 和 WPA2 混合模式,当然也不是 TKIP。其次,如果您的路由器能够实现 N 速度,您可能会在 2.4 GHz 频段中使用 20 MHz 的通道宽度而不是自动 20/40 MHz 获得更好的连接性,尽管它可能会影响 N 速度。我推荐固定频道,1、6 或 11,而不是自动频道选择。此外,请确保路由器未设置为仅使用 N 速度;自动 B、G 和 N 是首选。进行这些更改后,重新启动路由器。
接下来,我建议明确设置您的监管域。检查你的:
如果你得到 00,那是一个千篇一律的设置。在这里找到你的:http ://en.wikipedia.org/wiki/ISO_3166-1_alpha-2然后临时设置它:
当然,如果不是冰岛,请替换您的国家/地区代码。永久设置:
将最后一行更改为:
仔细校对,保存并关闭文本编辑器。
EDIT2:让我们尝试更新固件文件。从终端:
重新启动,让我们看看另一个粘贴:
http://paste.ubuntu.com
EDIT3:我建议您删除经常被证明很麻烦的 backport 包:
重新启动,让我们听听结果。