GNU/Linux >> Linux の 問題 >  >> Linux

ManjaroでBroadcomWirelessを有効にする方法

ここに興味深い問題があります。数週間前、HPPavilionラップトップでManjaro18.0.4 Illyriaをテストしましたが、興味深い現象に遭遇しました。ラップトップにはBroadcomWirelessカードが装備されており、ライブセッションでは、無料ドライバーと非無料ドライバーの両方で、ネットワークは正常に稼働していました。ただし、インストール後、ワイヤレスはありませんでした。

システムの外観を見ると、WLC_SCANエラー(-22)というエラーが見つかりました。この検索で​​Intertubesにアクセスすると、すべての地獄が解き放たれました。この問題について話しているArchとManjaroのフォーラム投稿が数十件見つかりました。いくつかのソリューションが提供されましたが、それらは効果がないか、実装が非常に困難でした。だから私は自分でこれを修正しようと決心したので、このガイド。フォローしてください。

問題の詳細

たまたま、私の場合、ワイヤレスアイコンが表示され、ネットワークマネージャーはラップトップの近くにあるいくつかのアクセスポイントを一覧表示しました。しかし、接続しようとしても何も起こりませんでした。パスワードを入力して待つと、選択したアクセスポイントがリストから消え、接続が確立されません。 dmesgを実行すると、次のテキストが表示されました:

[526.274664] IPv6:ADDRCONF(NETDEV_UP):wlo1:リンクの準備ができていません
[526.276614]エラー@wl_cfg80211_scan:
[526.276619] WLC_SCANエラー(-22)

ワイヤレスネットワークカードを識別しました(稼働中)。 (空き)wlカーネルモジュールがメモリにロードされました。ただし、システムは接続を確立できませんでした。 IPv6をオフにしても効果はありませんでした。これは、ルーターでIPv6を使用しないことによるアーティファクトにすぎません。

さまざまなスレッドで提案されているクイックフィックスのいくつかを試しました。そのうちの1つは、ラップトップケースのハードウェアボタンを使用してワイヤレスアンテナのオン/オフを切り替え、rfkillコマンドでステータスを確認することでした。一部の人々は、これが彼らのカードを「ブロック解除」するのを助けると報告しました。うまくいきませんでした。

rfkillリスト
0:hp-wifi:無線LAN
ソフトブロック:いいえ
ハードブロック:はい
1:hp-bluetooth:Bluetooth
ソフトブロック:はい
ハードブロック:はい
2:phy0:無線LAN
ソフトブロック:いいえ
ハードブロック:いいえ

私はこの時点でヨーグルトをいじり始めたくありませんでした。broadcom-wl-dkmsやその他のヒントやコツを試してみました。システムの状態を最小限に変更するだけでこれを解決できるかどうかを確認したいと思いました。できれば、有線ネットワーク(または同様のもの)を介してダウンロードする必要はありません。

解決策

このマシンで使用した他のディストリビューション(やや問題のあるFedora 30や、良好で妥当なネットワーク接続と速度を備えたディストリビューションなど)を見ると、ワイヤレスデバイスにはb43カーネルモジュールを使用する必要があることがわかりました。 wlブロブより。最初のステップは、既存のモジュール(wl)を手動でアンロードし、b43モジュールをロードすることでした。

sudo modprobe -r wl

sudo modprobe b43

これを行うと、問題が変わりました。 b43モジュールがメモリにロードされていても、ワイヤレスはまったくありませんでした。そこで、システムメッセージをもう一度確認したところ、次のエラーが表示されました。

[120.170582]モジュールparamallhwsupport=0によって無効にされたコアリビジョン0x17および0x18のサポート。 b43.allhwsupport=1を試してください
[120.170590] b43:bcma0:1のプローブがエラー-524で失敗しました
[120.170611] Broadcom 43xxドライバーがロードされました[機能:PNLS]

エラーが示すように、さまざまなパラメータでモジュールをロードする必要がありました:

sudo modprobe b43 allhwsupport =1

成功!これを行うと、ワイヤレスカードが復活し、ネットワークに接続して問題なく使用できるようになりました。したがって、問題は解決されますが、その理由を理解してから、起動時にb43モジュールの使用を自動有効化する必要があります。

ブラックリストに登録されたモジュール

何らかの理由で、Manjaro Illyriaの無料版と非無料版の両方でb43モジュールがブラックリストに登録されています。これは、起動時にロードされない理由を説明しています。これは、/ etc/modprobe.dの下にあるlinux419-broadcom-wl.confという名前のファイルの内容を調べることで確認できます。内部には、b43、b43legacy、bcma、ssbなどを含む関連モジュールの全範囲がリストされています。

起動時にb43の読み込みを有効にする

手動で修正したので、永続的にする必要があります。これには、2つのファイルを編集する必要があります。 1つは、/ etc / modules-load.d / modules.confの下で起動するモジュールのリストに、b43を追加する必要があります。このファイルの内容を猫にすると、次のように表示されます:

#起動時にロードするモジュールのリスト

次のように、下にb43を追加する必要があります:

#起動時にロードするモジュールのリスト
b43

しかし、それだけではありません。 /etc/modprobe.dの下にモジュールロードオプションを追加する必要があります。これは、Realtekワイヤレスカードを使用して古い3.Xカーネルで動作させるために行ったことと似ています。 「モジュール名」.confの形式で構成ファイルを作成する必要があります。この場合、b43.confです。このファイル内には、allhwsupportオプションが必要です:

オプションb43allhwsupport=1

確認するには、ファイルは次のようになります。

cat /etc/modprobe.d/b43.conf
options b43 allhwsupport =1

以上です。再起動すると、ワイヤレスが起動して実行されます。

結論

そこに行きます。これは些細なことではありませんでした。しかし、これは手動でモジュールをコンパイルしてビルドするよりもエレガントで、必要なパッケージを取得するためだけに別のネットワークを使用する必要があると思います。モジュールのロードを有効にするために使用する必要のある2つの異なるディレクトリもあるという事実も、これを少し複雑にします。

とにかく、長期的な解決策は、ディストリビューションがすでにライブステージにある潜在的に「悪い」ハードウェアを自動的に検出し、それに応じて調整することです-コンパイルツールとヘッダーをインストールし、システム構成を事前に変更するなど、ユーザーがログに記録するときに初めて、すべてが機能します。このチュートリアルがお役に立てば幸いです。気をつけて、マンジャリアン。


Linux
  1. HAProxy統計を有効にする方法

  2. LinuxでのIP転送とは何ですか? IP転送を有効にする方法は?

  3. Linux スワップ パーティションを有効にするにはどうすればよいですか?

  1. LinuxでIP転送を有効にする方法

  2. NGINXでHTTP2を有効にする方法

  3. BroadcomBcm4312ワイヤレスカードを機能させる方法は??

  1. KaliLinuxで自動ログインを有効にする方法

  2. NginxでHTTP/2を有効にする方法

  3. Linux で md5 ハッシュを有効にする方法