時折、さまざまな理由でWi-Fi接続が機能しなくなります。ネットワークインジケーターのグラフィカルインターフェイスを使用してWi-Fiを無効にしてから再度有効にしても、これらの場合の問題は解決しません。
マシンを再起動せずにコマンドラインからWi-Fi接続を完全に再起動するにはどうすればよいですか?
時折、さまざまな理由でWi-Fi接続が機能しなくなります。ネットワークインジケーターのグラフィカルインターフェイスを使用してWi-Fiを無効にしてから再度有効にしても、これらの場合の問題は解決しません。
マシンを再起動せずにコマンドラインからWi-Fi接続を完全に再起動するにはどうすればよいですか?
回答:
nmcliNetwork Managerと対話するための非常に便利なコマンドラインユーティリティです。Ubuntu 16.04 LTSでこのコマンドを使用します
nmcli radio wifi off && sleep 5 && nmcli radio wifi on
15.10より前のバージョン(つまりに移行する前systemd)では、コマンドは少し異なります。
nmcli nm wifi off && sleep 5 && nmcli nm wifi on
それについての良いこと-これはルート権限を必要としません。
ネットワークマネージャー自体を再起動することもお勧めします。
16.04 LTSの場合:
sudo systemctl restart NetworkManager
および14.04 LTSの場合:
sudo service network-manager restart
本当に必要な場合は、wifiを再起動するスクリプトで自動化することもできます。
#!/bin/bash
# replace wlan0 with your device name
# as given by ip addr or ifconfig
while true
do
# keep checking if we have ip address
wifi_info=$(ip -4 -o addr show wlan0 )
while [ -n "$wifi_info" ];
do
wifi_info=$(ip -4 -o addr show wlan0 )
sleep 0.25
done
# We get here only if IP address is lost
# which means we're off-line
# restart wifi
nmcli radio wifi off && sleep 5 && nmcli radio wifi on
done
.service暗示されているので、省略することができますsudo systemctl restart NetworkManager
.serviceた。
systemdinitシステムに切り替わりました。これは、起動時に基本的なサービスとデーモンを実際に起動するものです。問題は、古いものとは異なり、systemd単に物事を開始するだけでなく 、物事を管理しようとすることです。これはnmcliと一致するように書き換えられることになりsystemdます。少なくともこれは私の理解です。
私が考えている2つの選択肢は次のとおりです。
最初の代替手段、インターフェースのダウン/アップ
ifconfig wlan0 down ## assumes your wlan is named wlan0
ifconfig wlan0 up
2番目の方法では、ネットワークマネージャー全体を再起動します。これは、ネットワークマネージャーがインストールされていることを前提としています。そうでない場合は、次のcmdを使用してターミナルにインストールしますsudo apt-get install network-manager。
sudo service network-manager restart
使用ifdownを無効にネットワークへの+インタフェース名
ifdown IFACE
ifup+インターフェイス名を使用して有効にします
ifup IFACE
IFACEによって指定されたデバイス名に置き換えますifconfig