0.はじめにと背景
この回答は、Broadcomに関連するほぼすべての問題で協力して作業したさまざまなUbuntuユーザーによる広範な調査に基づいています。Ubuntuフォーラムやこのサイトで、ワイヤレスデバイスに関連する多くの質問をしてくれたchili555と、最も人気のあるBroadcomワイヤレスカードでさまざまなドライバーのテストに電子メール、チャット、IRCなどを提供してくれた他の人に感謝します(本当にChili555に感謝します。この男は彼のものを知っています)。
全体として、私たちは簡単にフォローでき、ほとんどのBroadcomカード/ドライバーをカバーできる答えを提供したいと考えました。あなたがこのガイドを実行した後、あなたがしますNEEDアドホックモード、インフラストラクチャモードのいずれか、または両方で別のデバイスと(私は実際に8時間をお勧めします)は、少なくとも2時間のワイヤレス接続をテストします。解決される一般的な問題(ドライバーがインストールされないことを除く)は次のとおりです。
- 数分または数時間後に接続がタイムアウトする
- 他のデバイスの検索を停止します(他のデバイスは表示されません)
- APにパスワードがない場合でも、パスワードを要求し続けます
- 受信/送信トラフィックを停止します(一時的に修正するには再起動が必要です)
- ログにdmesgエラーが発生してシステムがクラッシュする(以下のリンク1)
- システムが完全にフリーズする(再起動/電源ボタンしか押せない)(以下のリンク1)
- 正しく構成または接続しようとする巨大なログレポートを作成します
- 追加のドライバー / 追加のハードウェアを介してインストールすると失敗します(以下のリンク3)
- X秒ごとに連続的に接続および切断します
- Network Managerに接続されているように見えますが、インターネットを受信していません
- 接続を正しく終了せずに何度も接続しようとします
- 接続に時間がかかりすぎる
- 以前のバージョン(例:12.04から12.10)からアップグレードした後、動作しなくなります
- ワイヤレスカードがオンにならず、有効化または無効化されません(以下のリンク2)
- ハードウェアによってブロックされたワイヤレスカード
- Launchpad、Ubuntu Forum、Askubuntuで見つかったその他の問題
リンク1- https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1060268
リンク2- https://bugs.launchpad.net/ubuntu/+source/bcmwl/+bug/732677
リンク3 -「申し訳ありませんが、このドライバーのインストールに失敗しました。」のようなエラーが表示されます。
したがって、これを念頭に置いて、次のことを現在3つだけの手順で簡略化しています。
1.使用しているBroadcomワイヤレスカードを知る
Broadcomのワイヤレスカードは数十種類あり、毎日増えているようです。ネットワークカードの正しいドライバーを見つける鍵は、PCI ID(PCI.ID)と呼ばれるものです。所有しているPCI.IDを確認するには、CTRL+ ALT+ T(背景が空白のウィンドウを開くはずです)を押してターミナルを開き、このターミナル内で次のコマンドを実行します。
lspci -nn -d 14e4:
Broadcomワイヤレスアダプターを使用している場合は、次のようなものが得られます(ほとんどの場合、上記の例で使用されているID 14e4はBroadcomワイヤレスカードです)。
Broadcom Corporation BCM4306 802.11bgn Wireless Network Adapter [14e4:4320] (rev 03)
この例のPCI.IDは、ブラケット内で見られるように14e4:4320です[...]。場合によっては、特別な場合にリビジョンバージョン(表示される場合)も必要になります。この場合、最後の括弧(...)内に示されているように、改訂バージョンはrev 03です。したがって、この検索後に必要なものは次のとおりです。
[14e4:4320] (rev 03)
この新しい情報を使用して、以下の表を見て、ドライバーをインストールする適切な方法を選択できます。たとえば、この場合、14e4:4320 rev 03があるため、まったく同じPCI.IDを表示するリストに移動すると、Ubuntu 12.04、13.10、または14.04の列に表示されます。firmware-b43-installer
パッケージ・ドライバー。これは、すべてのUbuntuバージョンの列に表示されるため、この特定のパッケージのみをインストールする必要があることを意味します。
注 -続行する前に、以前にドライバーをインストールした場合、ドライバーファイルまたは構成ファイルをブラックリストに追加またはコメント解除した場合、または以前の試行でドライバーが動作するようにシステムに変更を加えた場合は、それらを元に戻す必要がありますこのガイドに従ってください。これをゼロから行っており、システムの構成ファイル、モジュール、またはドライバーを(システムの更新を除いて)変更していないことを前提としています。これには、apt-get、aptitude、synaptic、dpkg、ソフトウェアセンター、またはパッケージの手動コンパイルとインストールを使用したインストールが含まれます。これが機能し、以前の作業が行われた場合に発生する可能性のある競合を避けるために、システムはゼロから開始する必要があります。
たとえば、bcmwl-kernel-source
パッケージを以前にインストールしたことがある場合は、パージ方法を使用してパッケージを削除する必要があります。
sudo apt-get purge bcmwl-kernel-source
2.システムの準備
Ubuntuをインストールしたばかりの場合、まだインストールしていない場合は、ドライバーをインストールする前に、利用可能なパッケージのインデックスを作成する必要があります。
sudo apt update
PCI.IDのUbuntuリストを更新するために、さらに先に進みます:
sudo update-pciids
使用している特定の新しいBroadcomデバイスのIDが表示された場合に備えて。
次に、上記の手順で見つけたPCI.IDを使用して、以下のリストを検索し、一致するPCI.IDと、それに関連付けられたドライバーを簡単で正しい方法でインストールする方法を見つけます。端末は、GUI関連の問題を回避するために使用されます。これは、注記されている場合を除き、すべての場合に適用されます。インストール手順は、端末を介してのみ行われます。また、一時的な有線イーサネット接続またはUSBモデム、またはPCに一時的にインターネットアクセスを提供できる手段を使用してインターネットに接続します。以下のリストで正しいパッケージを見つけたら、インストールを続行します。
3.パッケージのインストール(オンライン)
上記の検索で見つかったPCI.ID 14e4:4320 rev 03を使用し、下の表を見て、インストールする正しいパッケージがであることがわかったと仮定すると、次にfirmware-b43-installer
このパッケージを単にターミナルにインストールします。
sudo apt install firmware-b43-installer
そして再起動
sudo reboot
インストールするフォーマットは非常にシンプルで、ただ次のとおりです。
sudo apt install <PACKAGE_NAME>
上記の例では、PACKAGE_NAMEはfirmware-b43-installer
です。
BROADCOM WIRELESS TABLE(2017年8月18日更新)
PCI.ID 16.04 LTS 17.10+
------------------------------------------------------------------------------------
14e4:0576 Special Case #1 UNKNOWN
14e4:1713 firmware-b43-installer firmware-b43-installer
14e4:4301 firmware-b43-installer firmware-b43-installer
14e4:4306 firmware-b43-installer firmware-b43-installer
14e4:4306 rev 02 firmware-b43-installer firmware-b43-installer
14e4:4306 rev 03 firmware-b43-installer firmware-b43-installer
14e4:4307 firmware-b43-installer firmware-b43-installer
14e4:4311 firmware-b43-installer firmware-b43-installer
14e4:4311 rev 01 firmware-b43-installer firmware-b43-installer
14e4:4312 firmware-b43-installer firmware-b43-installer
14e4:4313 firmware-b43-installer firmware-b43-installer
14e4:4315 firmware-b43-installer firmware-b43-installer
14e4:4315 rev 01 firmware-b43-installer firmware-b43-installer
14e4:4318 firmware-b43-installer firmware-b43-installer
14e4:4318 rev 02 firmware-b43-installer firmware-b43-installer
14e4:4319 firmware-b43-installer firmware-b43-installer
14e4:4320 rev 02 firmware-b43-installer firmware-b43-installer
14e4:4320 rev 03 firmware-b43-installer firmware-b43-installer
14e4:4321 firmware-b43-installer firmware-b43-installer
14e4:4324 firmware-b43-installer firmware-b43-installer
14e4:4325 firmware-b43-installer firmware-b43-installer
14e4:4328 firmware-b43-installer firmware-b43-installer
14e4:4328 rev 03 bcmwl-kernel-source bcmwl-kernel-source
14e4:4329 bcmwl-kernel-source bcmwl-kernel-source
14e4:432a bcmwl-kernel-source bcmwl-kernel-source
14e4:432b bcmwl-kernel-source bcmwl-kernel-source
14e4:432c bcmwl-kernel-source bcmwl-kernel-source
14e4:432d bcmwl-kernel-source bcmwl-kernel-source
14e4:4331 firmware-b43-installer firmware-b43-installer
14e4:4335 firmware-b43-installer firmware-b43-installer
14e4:4350 firmware-b43-installer firmware-b43-installer
14e4:4353 Special Case #1 UNKNOWN
14e4:4353 rev 01 Special Case #1 UNKNOWN
14e4:4357 Special Case #1 UNKNOWN
14e4:4358 bcmwl-kernel-source bcmwl-kernel-source
14e4:4359 bcmwl-kernel-source bcmwl-kernel-source
14e4:4360 bcmwl-kernel-source bcmwl-kernel-source
14e4:4365 bcmwl-kernel-source bcmwl-kernel-source
14e4:4365 rev 01 bcmwl-kernel-source bcmwl-kernel-source
14e4:43a0 bcmwl-kernel-source bcmwl-kernel-source
14e4:43ae rev 02 UNKNOWN UNKNOWN
14e4:43b1 bcmwl-kernel-source bcmwl-kernel-source
14e4:43b1 rev 03 bcmwl-kernel-source bcmwl-kernel-source
14e4:43c3 rev 04 UNKNOWN Special Case #2
14e4:4727 bcmwl-kernel-source bcmwl-kernel-source
14e4:4727 rev 01 Special Case #1 Special Case #1
14e4:a962 firmware-b43-installer firmware-b43-installer
------------------------------------------------------------------------------------
特別なケース#1-用途bcma
とbrcmsmac
ドライバーの組み合わせ。必要なファームウェアは、デフォルトでパッケージにインストールされますlinux-firmware
。
特別なケース#2 - ASUS PCE-AC88 AC3100の手順は次のとおりです。
- このファイルをダウンロードし、解凍後、/ lib / firmware / brcmに配置します
sudo cp brcmfmac4366c-pcie.bin /lib/firmware/brcm/brcmfmac4366c-pcie.bin
- 次にmodprobe brcmfmacを
sudo nano /etc/rc.local
追加して保存します
sudo reboot
Lenovo S10-2などのハードウェアでは、ワイヤレスカードがSSIDに接続しようとして動けなくなる(接続しようとする)場合、それを機能させるための代替手段はbcmwl-kernel-source
パッケージをインストールすることです(それに関連する他のインストール済みパッケージを削除します) )。このワイヤレスデバイスの詳細については、以下の「デバッグ」セクションをお読みください。
重要な注意 -2014年9月以降、この回答に従っても正しいドライバーのインストールに問題がある場合は、firmware-b43-installer
パッケージを試してコメントでお知らせください。いくつかの変更があり、一部のドライバーはこのパッケージでのみ動作します。インストールする前に、クリーンなシステムを用意してください。
sudo apt install firmware-b43-installer
いくつかの特定のケースでは、インストール後にfirmware-b43-installer
b43モジュールを削除する必要があり、それを再度有効にし、rfkillでブロックを解除します。
sudo modprobe -r b43
sudo modprobe b43
sudo rfkill unblock all
異なるpci.idを持つBroadcomカードがある場合は、新しい質問をしてください。解決したら、このハウツーにソリューションを追加します。
4.パッケージのインストール(オフライン)
4.1インストール firmware-b43-installer
firmware-b43-installer
オフラインでインストールするには、この回答を参照してください。
4.2インストール bcmwl-kernel-source
インストールする必要bcmwl-kernel-source
があるがオフラインになっている場合は、それについての優れた答えがあります。ただし、基本的には次の手順を実行します。
- Ubuntu Package Repositoriesでパッケージを検索します
- 正しいアーキテクチャ(32ビット、64ビットなど)を選択してください。
- パッケージとそれに関連する依存パッケージを同じフォルダーにダウンロードします。
- すべてのパッケージ(およびその依存関係)が必要になったら、すべてのパッケージがあるフォルダーに進み、を実行し
sudo dpkg -i *.deb
ます。これにより、すべてのパッケージがそのフォルダーにインストールされます。エラーが発生した場合は、エラーを読み、記載されている手順に従ってください。
たとえば、上記のポイント1に進んだ後、Broadcom 14e4:43a0
がある場合は、bcmwl-kernel-source
パッケージを検索し、対応するUbuntuバージョン(私の場合は16.04またはXenial)を選択すると、次のページに移動します。
http://packages.ubuntu.com/xenial/bcmwl-kernel-source
このページでは、対応するアーキテクチャ(32または64)を選択しますが、次の図に示すように、そのページに記載されている3つのパッケージの依存関係もダウンロードする必要があります。
すべてのパッケージと依存関係をダウンロードしたら、すべてのパッケージを単一のフォルダーにコピーし、dpkg
上記の手順4で説明したコマンドを実行することができます。
注意
一部のコンピューターでは、コマンドを実行する前に、BIOSでセキュアブートオプションを無効にする必要があります。これは、たとえば、bcmwl-kernel-sourceが既にインストールされているが、ドライバーがまだ機能しない場合に適用されます。そのように再インストールするか、BIOSセットアップに移動してセキュアブートを無効にすることができます。
sudo apt-get install --reinstall bcmwl-kernel-source
デバッグ
次の情報は、ワイヤレス管理および他のネットワークデバイスとの競合に関連するさまざまな問題の解決について読むための追加資料です。カーネルの新しいバージョンごとに、新しいネットワークドライバー、既存のドライバーに対する改善、またはそれらに関するバグを解決するため、カーネルのバージョンを更新する必要がある場合があることを理解してください。
下記のポイントを読む前に、Ubuntuシステムですべてのリポジトリを有効にしてください。確認するには、ターミナルで実行しsoftware-properties-gtk
、Ubuntu Softwareタブのすべてのオプションが有効になっていることを確認します。
ターミナルを介してワイヤレスデバイスを構成するには、ターミナルでネットワークに手動で接続および切断する方法をお勧めします。
接続が頻繁に切断される場合、一部のユーザーはIPv6を無視に設定することを提案しています。[ネットワークマネージャー](トップパネルのネットワークアイコン)に移動します。それをクリックし、[ 設定の編集]を選択します。次に、使用しているワイヤレス接続に移動して選択します。ここで、IPv6設定に言及している最後のタブに移動します。[メソッド]フィールドで[ 無視]を選択します。
ラップトップがワイヤレスカードを検出しない場合、一部のユーザーは、使用rfkill unblock all
することで問題が解決すると述べています。他の人は、単にラップトップのWiFiスイッチをオフにしてから再びオンにしました(このラップトップでは物理スイッチを使用できます)。詳細rfkill
については、rf kill unblock allが機能しないことをご覧ください。
b43-phy0エラーが発生している場合:致命的なDMAエラー/ b43-phy0警告:強制PIOは次を実行します。
sudo rmmod b43
sudo modprobe b43 pio=0 qos=0
動作する場合は、RCファイルに追加して、起動するたびに実行されるようにします。必要に応じて、PIOを1に変更できます。
あなたが持っている場合に必要なキーが利用できない(エヌビディア、ブロードコムや他の人と同じように)DKMSモジュールをインストールするときは、に行くことができますここでパイロットの回答
ワイヤレスカードでルーターが表示される/表示されず、無限に接続しようとする(1/3を試す)ループが発生する場合、ソリューションはルーターまたはワイヤレスSSIDデバイスの適切な構成である可能性があります。
一般にすべてのワイヤレスカードでは、使用しているネットワークデバイス(ルーター、スイッチ、ワイヤレスチャネル、ワイヤレスバンドなど)も考慮することが非常に重要です。この情報を使用すると、行き止まりに到達したときに問題の原因をよりよく評価できます。例として、14e4:4315 rev 01 PCIID を使用するLenovo S10-2があります。正しいドライバーをインストールした後でも、ユーザーは「接続しよう」ループになります。ワイヤレスSSIDが表示されますが、接続しようとすると、再接続ループに入ります。
解決策は、この特定のワイヤレスデバイスが40 Mhzチャネルをサポートせず、802.11Nもサポートしないことでした。その場合のルーターは、実際には強制的な40 MhzでWiFi-Nのみでブロードキャストしていました。ルーターが自動モードと20/40 Mhzチャネルに設定されている場合、ワイヤレスカードは正常に機能しました。これは、他のケースでも繰り返されるケースシナリオであるため、ネットワーク機器の適切な評価が大いに役立ちます。
繰り返される場合:
エラー@ wl_cfg80211_get_station:間違ったMacアドレス...
やったときdmesg
とワイヤレス接続が頻繁に(1時間または1日に数回)に低下、ここでの問題は、あなたがワイヤレスブリッジ(同じSSIDとの接続を共有する2つのルータ)として使用される無線信号の内側にあることかもしれません。これは、同じSSIDを提供することでワイヤレス接続を拡張できる最新のルーターで発生する可能性があります。両方のルーターの間にいる可能性があり、両方の間の信号強度がほぼ同じであるため、ワイヤレス接続が切断される可能性があります。
接続が頻繁に切断される場合は、両方のルーターデバイスのほぼ中央にいることを意味します。ワイヤレスデバイスのドロップレートを下げるか、または排除するには、ワイヤレスカードが1つのルーターのみを見ることができるか、少なくとも1つのルーターが他のルーターよりも信号強度が高い場所に自分自身を配置してください。
また、接続するルーターのMACアドレスにBSSIDを設定することにより、ワイヤレスデバイスが特定のルーターにのみ接続するように強制する手法もあります。これにより、ワイヤレスデバイスは強制的に接続されます。
セキュアブートの問題
いくつかの特定のシナリオでは、セキュアブートが無効になっていない場合、さまざまなDEBパッケージまたはインターネットアクセスを備えたapt-getを使用してオフラインモードでドライバーをインストールできません。
これは、必要なアクセスがセキュアブートによって拒否され、ドライバーが実際にはインストールされていないにもかかわらず正しくインストールされているように見えるためです。そのため、非常に特定のケースでは、ドライバーを機能させるために一時的にセキュアブートを無効にする必要があります。
Linuxファームウェアの更新
他のケースでは、最新のLinuxファームウェアを探してインストールすると問題が解決します。正常に機能しているカードで発生していた軽微な問題を解決するか、初めてカードを機能させます。