コマンドラインからWi-Fi接続を再開するにはどうすればよいですか?


28

時折、さまざまな理由でWi-Fi接続が機能しなくなります。ネットワークインジケーターのグラフィカルインターフェイスを使用してWi-Fiを無効にしてから再度有効にしても、これらの場合の問題は解決しません。

マシンを再起動せずにコマンドラインからWi-Fi接続を完全に再起動するにはどうすればよいですか?


スタック交換リンク
ニックシリト

回答:


35

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

4
.service暗示されているので、省略することができますsudo systemctl restart NetworkManager
ザンナ

1
@Zanna TIL ...この間ずっとタイプしてきまし.serviceた。
edwinksl

私にとって魅力のように働いた。
ジョシュ

ありがとう、素晴らしい。なぜ2つの異なるコマンドがあるのですか?
-neverMind9

1
@TechLord基本的には、15.04バージョン以降、Ubuntuがsystemdinitシステムに切り替わりました。これは、起動時に基本的なサービスとデーモンを実際に起動するものです。問題は、古いものとは異なり、systemd単に物事を開始するだけでなく 、物事を管理しようとすることです。これはnmcliと一致するように書き換えられることになりsystemdます。少なくともこれは私の理解です。
セルギーコロディアズニー

10

私が考えている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

5

Ubuntu 15.10および16.04 LTSでは、次のsystemd機能を使用できます。

 systemctl restart NetworkManager.service

4

使用ifdownを無効にネットワークへの+インタフェース名

ifdown IFACE

ifup+インターフェイス名を使用して有効にします

ifup IFACE

IFACEによって指定されたデバイス名に置き換えますifconfig

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.