ハードウェアに問題はないと思います。明らかに、WiFi接続は明らかに切断されます。したがって、これは必ずしも この場合と同じ とは限らず、モジュールをリロードする必要はないかもしれません。
しかし、wlan0
を再起動する方法は? restart network-manager
を試しましたが、これはwlan0
をそのままにしておくようです。
再起動するだけです Network Manager :
Sudo service network-manager restart
これを試して:
Sudo ifconfig wlan0 down
Sudo ifconfig wlan0 up
スクリプトを作成する場合、これらはルートを必要としません。
nmcli networking off
nmcli networking on
さらに行うには:man nmcli
編集:
これらの人がコメントで言っているように、WI-FIのみ:
nmcli radio wifi off
nmcli radio wifi on
デバイスの電源を切ってみてください。デバイスを物理的に切断できない、または切断したくない場合、(rootとして)iwconfig wlan0 txpower off
を実行する必要があります。その後、10〜15秒待って、問題の原因となっているハードウェアの問題がすべて停止したことを確認してから、iwconfig wlan0 txpower auto
を実行します。
または、rfkillを実行して、デバイスをブロック/ブロック解除するだけです。これを行うには、rfkill block wifi
を実行し、続いてrfkill unblock wifi
を実行します。この2番目のオプションは、コマンド間で10〜15秒ではなく2〜3秒待つだけで済むため、より高速になります。実際、私のマシンでは、待機する必要はまったくありませんが、これはWiFiハードウェアに依存していると思われます。このオプションは通常のユーザーとしても実行でき、ルートは不要です。
NetworkManagerを再起動することもできます。 initシステムとしてsystemctlを使用する場合(Ubuntuの新しいバージョンの場合)、systemctl restart NetworkManager
を使用できます。それ以外の場合は、Sudo initctl restart network-manager
を使用できます。使用しているinitシステムがわからない場合は、両方のコマンドを試して、何が機能するかを確認してください。
ワイヤレス接続用のカーネルモジュールの名前を見つけましょう。
Sudo hwinfo --network
(お持ちでない場合は、パッケージhwinfo
をインストールしてください。)
「ドライバー」行でモジュール名を探します。
次に、モジュールをアンロードしてから再ロードします。たとえば、私のモジュール名はiwlwifi
です
あなたは幸運になるかもしれませんが、おそらくあなたはこの失敗メッセージを受け取るでしょう:
$ Sudo modprobe -r iwlwifi
modprobe: FATAL: Module iwlwifi is in use.
そこで、iwlwifi
を使用して他のモジュールを探します。
$ lsmod |grep iwlwifi
iwlwifi 241664 1 iwldvm
cfg80211 765952 4 iwldvm,iwlwifi,mac80211,rtl8187
左側はモジュール名、右側はそれを使用する他のモジュールです。最初にiwldvm
を無効にしてみましょう:
$ Sudo modprobe -r iwldvm
これが機能する場合、iwlwifi
を正常に無効にできます。
$ Sudo modprobe -r iwlwifi
そして、両方のモジュールを逆の順序で再度有効にします。
$ Sudo modprobe iwlwifi
$ Sudo modprobe iwldvm
これは、iwconfig
を使用して設定した低レレル設定(frag、rate)をリセットするのに有効な唯一の手順です。
これが効果的に行うのは「ドライバーのリロード」です。
事前リンクのアドバイスに基づいてスクリプトを作成し、事前リンクの混合とマッチングを行いました。これは、Mint Linux 17.3で実行している場合に有効です。
以下のファイルはnot rootアクセスを必要とします。また、wifiを再起動するだけですonly既にダウンしている場合。ここで、このスクリプトをcronジョブに追加して、15分ごとにWiFi接続を確認する必要があります。
#!/bin/bash
wlan=$(/sbin/ifconfig wlan0 | grep inet\ addr | wc -l)
if [ $wlan -eq 0 ]; then
nmcli nm wifi on
else
echo "interface is up"
fi
「systemctl restart NetworkManager」を使用した回避策は、Debian BusterおよびUbuntu 19.04でBroadcomとAtheros WiFiを搭載した2つの異なるノートブックで機能します。私は最初にデスクトップランチャーを作成してWi-Fiリセットを手動で起動しようとしましたが、これは機能し、パスワードが必要です-しかし、その後、実行するシステム内の場所にリセットの呪いをかける人々によるいくつかのメモを見つけました再開後のスクリプト。つまり、/lib/systemd/system-sleep/
スクリプトを置くのに適した場所のように見えます 。そして、 スクリプト は、NetworkManagerをリセットするのが適切なタイミングであることを知るために、いくつかの条件(cmdline引数で取得)をテストする必要があります。切り取りと貼り付けの代わりにリンクすることをお-びします。この特定の著者の許可を求めたことはありません。
それ以外は、Ubuntu 16.04の元の問題に対する いくつかの非常に単純で直接的な解決策 NetworkManager.confのwifi.scan-Rand-mac-address=no
またはapt-get update && apt-get upgrade
にさえ気づきました。これらは、16.04の特定のバグに対する最適なソリューションです。これらは、この種の他のさまざまな問題の解決策ではない可能性があります。サスペンドから再開するたびにNetworkManagerを強引に(ただしかなり迅速に)再起動することで回避できます。