yaourt -Syua とかやっているとたまに急に Wifi が down するときが 2 回発生(2 out)したのでメモ。

結論

ip link して表示された無線LAN デバイス が DOWN している、かつ、rfkill list して Wireless LAN が Soft Blocked: yes の場合は、 rfkill unblock wifi すれば直る。

参照: Rfkillによるブロック

追ってみてみる

yaourt -Syua してライブラリアップデートをしながらネットサーフィンしていたら急に「インターネットにつながりません」 そして、デスクトップの無線LANマークが未接続になったことに気がつく。

コンソールで↓のコマンドをうってNICの状態を確認した。

$ ip link

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: wlp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
    link/ether f0:d5:bf:68:56:b4 brd ff:ff:ff:ff:ff:ff

2 の状態が DOWN になっている。そこで下記コマンドをうったが状況変わらず。

$ sudo ip link set wlp4s0 up
$ ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: wlp4s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000
    link/ether f0:d5:bf:68:56:b4 brd ff:ff:ff:ff:ff:ff

そういえば以前に、rfkill あたりをうって解決した記憶が…ググってみると、Rfkillによるブロック に当たった。 そこで書かれているように rfkill list をうってみる。一箇所 yes になっている箇所がある。

$ rfkill list
0: tpacpi_bluetooth_sw: Bluetooth
        Soft blocked: no
        Hard blocked: no
1: phy0: Wireless LAN
        Soft blocked: yes
        Hard blocked: no
2: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no

これか…ということで Soft blocked を no に変更する。

$ sudo rfkill unblock wifi
$ rfkill list
0: tpacpi_bluetooth_sw: Bluetooth
        Soft blocked: no
        Hard blocked: no
1: phy0: Wireless LAN
        Soft blocked: no
        Hard blocked: no
2: hci0: Bluetooth
        Soft blocked: no
        Hard blocked: no

気がつくと、デスクトップのWifi接続通知が接続済みになっていた。

感想

何故にアップデートしていると rfkill が有効になって Wifi が繋がらなくなるのかわからんけど、急に繋がらなくなった場合はこいつを確認しよう。