我有一台 HP-Pavilion-11-x360-PC 双启动系统:win 8.1 和 ubuntu 16.10,已经用了几个月了。ubuntu 上的 Wi-Fi 信号很差(在家里和大学,在多个网络上)。在 Windows 8.1 上没有这个问题。
我的硬件详细信息:来自此命令:
sudo lshw -c network
*-network
description: Wireless interface
product: RT3290 Wireless 802.11n 1T/1R PCIe
vendor: Ralink corp.
physical id: 0
bus info: pci@0000:02:00.0
logical name: wlp2s0f0
version: 00
serial: *I deleted*
width: 32 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=rt2800pci driverversion=4.8.0-34-generic firmware=0.37 ip=10.0.0.4 latency=0 link=yes multicast=yes wireless=IEEE 802.11
resources: irq:17 memory:90710000-9071ffff
我已尝试以下步骤:
sudo apt-get install build-essential linux-headers-generic
cd ~/Desktop/backports-3.13-rc2-1
make defconfig-wifi
make
sudo make install
建议这里,因为有相同的 wifi 驱动程序。但效果并不理想。它们产生了以下重复的输出:
$HOME/backports-4.4.2-1/drivers/bcma/driver_gpio.c: In function ‘bcma_gpio_init’:
$HOME/backports-4.4.2-1/drivers/bcma/driver_gpio.c:191:6: error: ‘struct gpio_chip’ has no member named ‘dev’
它根本不起作用。如果需要,我会发布完整的输出,不想太乏味。
另外,如果我重启电脑并加载 Windows 操作系统,那么 Wi-Fi 可能也无法在 Windows 上运行(它根本无法识别任何网络)。我必须关闭电脑,然后再打开。
我遇到的另一个问题是,计算机有时会死机,然后我必须手动将其关闭,这样它才能再次工作。我在 Windows 操作系统上遇到过几次这个问题,我不确定是什么原因造成的。
另一个问题就是,每次我切换操作系统时,时钟都会调快或调慢两个小时(我使用的是 UTC+2,所以我明白为什么会有两小时的差异)。有什么方法可以修复这个小问题吗?
在此先感谢您的帮助。
编辑:的输出iwconfig wlp2s0f0
是:
wlp2s0f0 IEEE 802.11 ESSID:"someNetworkName"
Mode:Managed Frequency:2.437 GHz Access Point: **:**:**:**:**:**
Bit Rate=18 Mb/s Tx-Power=20 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Power Management:on
Link Quality=20/70 Signal level=-90 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:4 Missed beacon:0
按照我的要求,ThisIsNotAnId
我执行了这两个命令:
sudo iwconfig wlp2s0f0 txpower auto
sudo iwconfig wlp2s0f0 rts 2347B
现在的输出iwconfig wlp2s0f0
是:
wlp2s0f0 IEEE 802.11 ESSID:"someNetworkName"
Mode:Managed Frequency:2.437 GHz Access Point: **:**:**:**:**:**
Bit Rate=18 Mb/s Tx-Power=20 dBm
Retry short limit:7 RTS thr=2347 B Fragment thr:off
Power Management:on
Link Quality=30/70 Signal level=-80 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:101 Invalid misc:31 Missed beacon:0
我在编辑时又检查了几次,发现正在Tx excessive retries
增加,现在为Tx excessive retries:556
。我不确定这是什么意思,但它引起了我的注意。
答案1
您可以尝试以下方法吗?这是基于Ubuntu 指南使模块ndiswrapper
在您的系统上运行,这将允许您使用 Windows 驱动程序来驱动您的 wifi 卡。我将在此总结针对您的特定卡的步骤。
进入 synaptic 软件包管理器,安装软件包ndisgtk
。如果你的电脑无法访问互联网,请从以下网址下载 .deb 软件包这里从另一台计算机复制到您的计算机,然后手动安装(64 位计算机为 amd64)。
从以下位置下载 Windows 驱动程序http://www.mediatek.com/products/broadbandWifi/rt3290(下载链接)。将下载的存档移至您的主文件夹。创建另一个名为“RT3290 Driver”的文件夹并将存档放入其中。在此新文件夹中解压。解压后,您应该有一个名为“Disk1”的文件夹。
关闭wifi。通过网络管理器删除之前添加的所有无线连接。也就是删除它们。
我假设您已经gedit
安装了文本编辑器,或者您知道如何从终端打开已安装的文本编辑器。在这种情况下,用gedit
命令替换以打开编辑器。运行
sudo cp /etc/modprobe.d/blacklist.conf ~/blacklist_backup.conf
sudo gedit /etc/modprobe.d/blacklist.conf
这将在中打开该文件gedit
。转到文件末尾并添加以下两行:
#Custom Blacklist
blacklist rt2800pci
保存,关闭,关闭终端。重启。
打开 ndisgtk,查看系统 > 管理 > Windows 无线驱动程序。或者,gksudo ndisgtk &
从终端运行。
打开后,单击“安装新驱动程序”。将弹出一个对话框,要求您选择驱动程序文件。导航到您之前提取的 Windows 驱动程序文件夹。我假设您有一个 64 位 Ubuntu 安装(要检查,请在终端运行uname -m
.x86_64 = 64 位,x86 = 32 位)。在您的主文件夹中 > RT3290 驱动程序 > Disk1 > 驱动程序 > Win8 > x64 > netr28x.inf
为了检查一切是否顺利,我将向您推荐第 3.6.2.1 节Ubuntu 文档。
如果已禁用,请启用你的 wifi,打开终端并运行
sudo depmod -a
sudo modprobe ndiswrapper
您的 wifi 现在应该处于活动状态。如果没有,请重新启动计算机,看看是否有帮助。如果这没有帮助,请ndisgtk
再次删除您安装的驱动程序,然后安装 win7 驱动程序并重新启动,看看是否有帮助。作为最后的手段,有另一名司机你可以尝试一下。
然后,像第一次一样添加您的 wifi 连接。
如有任何疑问、错误或疑虑,请回复。
如果成功,请在终端上运行以下命令使更改永久生效
sudo gedit /etc/modules
并ndiswrapper
在末尾添加该行。保存,关闭,关闭终端。
这是一个笑脸: