回答:
Network Managerを再起動するだけです。
sudo service network-manager restart
スクリプトを作成する場合、これらはルートを必要としません。
nmcli networking off
nmcli networking on
さらに行うには: man nmcli
編集:
これらの人がコメントで言っているように、WI-FIのみ:
nmcli radio wifi off
nmcli radio wifi on
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システムがわからない場合は、両方のコマンドを試して、何が機能するかを確認してください。
事前リンクのアドバイスに基づいてスクリプトを作成し、事前リンクの混合とマッチングを行いました。これは、Mint Linux 17.3で実行している場合に有効です。
以下のファイルには、ルートアクセスは必要ありません。また、wifi が既にダウンしている場合にのみ、wifiを再起動します。ここで、このスクリプトを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
echo
は、自動化された(cron'd)スクリプトを持っています。
ワイヤレス接続用のカーネルモジュールの名前を見つけましょう。
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
これは、を使用して設定した低レレル設定(frag、rate)をリセットするのに私にとって有効な唯一の手順ですiwconfig
。
これが効果的に行うのは「ドライバーの再読み込み」です。
「systemctl restart NetworkManager」を使用した回避策は、Debian BusterおよびUbuntu 19.04でBroadcomとAtheros WiFiを搭載した2つの異なるノートブックで機能します。私は最初にデスクトップランチャーを作成してWi-Fiリセットを手動で起動しようとしましたが、これは機能し、パスワードが必要です-しかし、実行中のシステム内の場所にリセットの呪いをかける人々によるいくつかのメモを見つけました再開後のスクリプト。つまり、/lib/systemd/system-sleep/
スクリプトを配置するのに適した場所のように見えます。そして、スクリプトNetworkManagerをリセットするのが適切なタイミングであることを知るために、いくつかの条件(cmdline引数で取得)をテストする必要があります。切り取りと貼り付けの代わりにリンクをおologiesびします。この特定の著者の許可を求めたことはありません。彼はYouTubeの貢献(要点については十分に説明されています)についても賛成票を楽しんでいます。
それ以外にも、Ubuntu 16.04の元の問題に対する非常にシンプルで直接的な解決策がいくつかあることに気付きましたwifi.scan-rand-mac-address=no
。NetworkManager.confまたは単にapt-get update && apt-get upgrade
。これらは、16.04の特定のバグに対する最適なソリューションです。これらは、この種の他のさまざまな問題の解決策ではない可能性があります。サスペンドから再開するたびにNetworkManagerを強引に(ただしかなり迅速に)再起動することで回避できます。
sudo systemctl restart NetworkManager
た方がよい場合があります。