Ubuntu 14.04(Trusty Tahr)上Broadcom BCM43142的驱动程序


20

我无法为Wi-Fi +蓝牙卡(Broadcom BCM43142)安装驱动程序。

到目前为止,我所做的是:

  1. 我已尝试在网站上使用驱动程序。
  2. 我试过下面给出的说明这里的两个apt-get安装,下载的焦油球以及安装和离线安装(从Ubuntu的启动DVD)。
  3. 我尝试安装bcmwl-kernel-source

在每个方法[1,2,3]的最后,当我执行a时sudo modprobe wl,我总是得到这个:

modprobe:错误:无法插入“ wl”:执行格式错误。

我还尝试了将驱动程序列入黑名单wl,并尝试将其重新安装几次。

  1. 我还尝试使用ndiswrapper成功使UNCLAIMED驱动程序(参见下面的输出lshw -c Network)更改为其他内容的方法。

但是最后,Wi-Fi确实可以正常工作了。

内核版本: 3.13.0-24-generic

我已尽我所能竭尽所能。如果您可以帮助我设置Wi-Fi,那将非常有帮助。我愿意粘贴您可能要求我执行的所有命令的输出。(我已经添加了lshw -c Network和的输出lspci -nn,但是请随时询问我其他信息。)

lshw -c Network
WARNING: you should run this program as super-user.
  *-network UNCLAIMED     
       description: Network controller
       product: BCM43142 802.11b/g/n
       vendor: Broadcom Corporation
       physical id: 0
       bus info: pci@0000:02:00.0
       version: 01
       width: 64 bits
       clock: 33MHz
       capabilities: bus_master cap_list
       configuration: latency=0
       resources: memory:90500000-90507fff

lspci
02:00.0 Network controller [0280]: Broadcom Corporation BCM43142 802.11b/g/n [14e4:4365] (rev 01)

sudo apt-get install的输出bcmwl-kernel-source。该WLAN卡的官方驱动程序(由Ubuntu发行):

sudo apt-get install bcmwl-kernel-source
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  wireless-bcm43142-oneiric-dkms
The following NEW packages will be installed:
  bcmwl-kernel-source
0 upgraded, 1 newly installed, 1 to remove and 0 not upgraded.
Need to get 0 B/1,126 kB of archives.
After this operation, 1,417 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 318223 files and directories currently installed.)
Removing wireless-bcm43142-oneiric-dkms (6.20.55.19~bdcom0602.0400.1000.0400-0somerville1) ...
Removing all DKMS Modules
Done.
update-initramfs: deferring update (trigger activated)
Processing triggers for initramfs-tools (0.103ubuntu4) ...
update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic
Selecting previously unselected package bcmwl-kernel-source.
(Reading database ... 318162 files and directories currently installed.)
Preparing to unpack .../bcmwl-kernel-source_6.30.223.141+bdcom-0ubuntu2_amd64.deb ...
Unpacking bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) ...
Setting up bcmwl-kernel-source (6.30.223.141+bdcom-0ubuntu2) ...
Loading new bcmwl-6.30.223.141+bdcom DKMS files...
Building only for 3.13.0-24-generic
Building for architecture x86_64
Building initial module for 3.13.0-24-generic
Done.

wl:
Running module version sanity check.
 - Original module
 - Installation
   - Installing to /lib/modules/3.13.0-24-generic/updates/dkms/

depmod.......

DKMS: install completed.

这是我不断重复得到的错误:

modprobe: ERROR: could not insert 'wl': Exec format error

update-initramfs: deferring update (trigger activated)
Processing triggers for initramfs-tools (0.103ubuntu4) ...
update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic

另外,这是什么意思?

我经历了以下询问Ubuntu问题:

第二篇似乎是对所有可能方式的非常全面的总结...我仍然对此表示怀疑Exec Format error


该特定驱动程序已经在此站点上进行了介绍。你有尝试过吗?
2014年

@乔斯第一个答案对我不起作用!(相同的modprobe错误)。第二个似乎对很多人有用。我在其他论坛上也见过同样的情况。但不幸的是,链接已死...感谢您的答复:)
Raghav RV

对我而言,所有链接都不是无效的-尤其是指向.deb文件的链接都有效(某人的Dropbox中的链接)。您似乎可以轻松尝试一下。
乔斯

投递箱deb程序包不起作用,当我这样做时modprobe wl,我再次提到了该错误。我的意思是这个jas.gemnetworks.com链接。对你起作用吗 ?
拉格夫房车

哦,我明白你的意思了。没关系。
2014年

Answers:


19

好,所以我终于解决了这个:D

首先,这是我在此过程中学到的知识:

  1. 在问题得到解决之前,切勿随意地使用不同的驱动程序或模块对操作系统进行夯实,至少要避免以下情况:a)知道自己的行为/原因,以及b)最重要的是如何撤消相同的操作。

  2. 每当尝试使用其他驱动程序,模块或软件包时,请先卸载先前为相同目的安装的软件包

非常感谢@ chili555,他指出先前程序包的剩余部分是原因。

所以我所做的是:

  1. 我尝试bcmwl-kernel-source在Ubuntu 14.04的实时运行中安装(使用LAN电缆),并检查WLan现在是否可以工作。(是的,确实确认不是Ubuntu 14.04 / BCM43142 / bcmwl-kernel-source问题。)

  2. 我去了,/etc/modprobe.d并与硬盘安装版本的同一文件夹交叉检查了那里的文件。

  3. 这个 /etc/modprobe.d目录包含配置文件,其中包含不同模块的黑名单信息。我记下了可用文件,后来又从硬盘安装的同一文件夹版本中删除了此处不可用的文件。

  4. 我去了/lib/modules/3.*/updates/这个是存储所有模块(wl,b43等...)的目录,也是我混入各个论坛中列出的wl模块的各种自定义修补版本的目录。

  5. 经过与我的硬盘安装版本的交叉检查 lib/modules/3.*/updates/,我手动删除了所有蓝牙/无线/ dkms / wl /(特别是一个mac80211),并清理了与wlan相关的所有其他模块。

  6. 我终于用实时操作系统中的相同目录替换了(并递归地复制到了/etc/modprobe.d/lib/modules/3.*/updates/目录(我的硬盘安装目录)和目录。

  7. 重启

  8. sudo apt-get install bcmwl-kernel-source。这是Ubuntu 14.04的BCM43142的官方工作驱动程序。

  9. 重新启动,sudo modprobe wl中提琴,无线正在工作!

最后,我对所有交叉发布,重新发布,向IRC重复发送此问题的垃圾邮件表示诚挚的歉意。:P

注意:仅对于最近安装操作系统的用户,才建议更换/删除硬盘安装文件。否则,就有可能替换/删除可能已为其他设备安装的文件/模块,而这些文件/模块可能与此问题无关。

再次感谢chili555 :)

编辑我最近更新了我的内核,以支持DisplayLinkUSB监视器的驱动程序,并且wifi消失了。

重新安装的盲目尝试在bcmwl-kernel-source构建日志中引发了以下错误。

"alloc_netdev" requires 4 arguments, but only 3 given

事实证明驱动程序未针对升级的内核(版本3.18)进行更新。稍作谷歌搜索后,我就可以发表此帖子-

https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/1358966

哪里有指向修补程序版本的链接 wl,该与升级的内核一起使用。

我手动下载并安装了这个人,并恢复了wifi。

现在,我可以回到和平状态下浏览洛尔猫了。阿们


2
我比较幸运。更新后,我失去了无线连接。通过USB威胁,我只是做了您的8个步骤:sudo apt-get install bcmwl-kernel-source ---和凹凸!它无需重启即可工作。
Felipe 2014年

这个答案是我找到的最可靠的答案,但它对我没有用,我正在使用Lenovo Z40和全新安装的Ubuntu 16.04。有任何升级答案的指针吗?
想法W,

@IdeaW您的Linux内核的升级版本可能与未修补的wl模块不兼容。也许尝试我的上一次编辑,看看它是否对您有用?
Raghav RV

5

在安装Linux Mint,Ubuntu 13.10和14.04时,我也遇到了同样的麻烦。我必须通过电话使用LAN电缆或USB 绑定来获取bcmwl-kernel-source安装,这似乎是DELL inspiron 15唯一可用的无线驱动程序。

但是运行后,我能够在软件更新的其他驱动程序部分中看到bcmwl-kernel-source

sudo apt-get update

通过LAN或USB共享网络建立Interet连接后,从终端上单击鼠标,您将看到列出的其他驱动程序,从这些位置我可以很容易地安装该驱动程序。


0

Ubuntu 11.10和12.10也存在相同的问题。问题是在BCM43142 Sony VAIO FIT 15E上未检测到Wi-Fi。因此,当我尝试安装Ubuntu 13.10时,我在安装过程中选中了“安装此第三方软件”选项,它对我有用!

请参阅“ 安装Ubuntu”小节“ 准备安装Ubuntu”小节中的步骤2 。您也可以尝试一下。


嗯..我记得我猜是选择了第三方选项,因为我是最近才安装此Ubuntu 14的。但是无论如何,现在无需重新安装ubuntu即可再次执行相同的操作?
拉格夫房车

0

我遇到了这个问题,要解决这个问题,我只需运行下一个命令:

# (sudo rmmod b43 ; sudo rmmod bcma ; sudo rmmod wl ; sudo modprobe wl ; sudo modprobe lib80211_crypt_tkip)

看来b43或bcma是与wl模块的冲突。

希望它能帮助某人...

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.