RaspberryPi3にOpenMediaVault5をインストールしたら無線LANが使えなくなった

#追記
##2020/05/03
一旦解決したと思ったのですが別の機会に再度OSとOMVのインストールを試みたら、うまく行かず、「無線ではだめだけど有線だとつながる」という点には再現性がないことがわかりました。（少なくともラズパイのイメージは変えていないので、ひょっとしたらOMVの仕様が変わったのかもしれません。GitHubなどでも似たようなissueが報告されているようです。）

参考
https://github.com/openmediavault/openmediavault/issues/688

この日起こった現象は下記です。
* OMVインストール前は有線（`eth0`）、無線（`wlan0`）ともにDHCPでipv4アドレスを獲得できていた
* OMVインストールして再起動したら、有線・無線ともにDOWNしていた（`ifconfig`の出力結果が`lo`のみ）
* `ifconfig -a`でインターフェースの存在自体は確認できた。ただし有線の`eth0`は`enx...`という名前に変わっていた。上記のissueによれば仕様だそうです。
* 
下記コマンドでCUIでもネットワークの設定ができるので、

ラズパイに直接ディスプレイとキーボードをつないで`sudo omv-firstaid`からネットワークの設定をしたら有線の`enx...`でインターネットに繋ぐことができました。

#概要（以下は2020/04/20時点での情報です）
RaspberryPi3にOpemMediaVaultをインストールしたら無線LANが使えなくなりました。`raspi-config`での無線再設定はできませんでした。
有線LANでOpenMediaVaultにアクセスはできたので、そこから無線インターフェースを追加する設定をしたら、無線LANが復活しました。

他のページなどで無線LANが繋がらなくなることに言及したものがなかったので、ひょっとしたら僕の環境特有の問題だったのかもしれません。ただ、少なくとも僕の環境では再現性がありましたので、同じように困っている方への情報共有として、この記事を書きました。
#環境
##ホスト
Raspberry Pi 3 Model B+
Rasbian Buster Lite
OpenMediaVault5
##クライアント
macOS Catalina 10.15.4
##その他準備するもの
有線LAN環境
無線LAN環境

(以下はRaspberryPiにつないで使う。トラブルが生じたときの状況把握に便利。必須ではない）
HDMIディスプレイ
USBキーボード
USBマウス
#やったこと
##RasbianのインストールからOpenMediaVaultのインストールまで
基本的な流れは下記を参考にしました。OpenMediaVaultのインストール完了までの流れはほぼ同じです。
[Adden-B-Installing_OMV5_on_an R-PI.pdf](https://github.com/OpenMediaVault-Plugin-Developers/docs/blob/master/Adden-B-Installing_OMV5_on_an%20R-PI.pdf)

また日本語で書かれた下記の記事も大いに参考にさせていただきました。下記記事ではRaspberryPi4へのインストール方法が書かれていますがRaspberryPi3でも同じ方法でできました。
[RaspberryPi4にOpenMediaVault5をインストールする](https://qiita.com/kalafinalice/items/d9337d2cd6650f337fff)

OpenMediaVaultをインストールして再起動（下記コマンド）したところで、RaspberryPiが無線LANに繋がらなくなってしまいました。

```
cd /opt/
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash
sudo reboot
```

##無線LANにつながらなくなった
ディスプレイとキーボードをRaspberryPiに直接つないで出力を見てみたところ、まず起動処理が`A start job is running for wait for network to be configured.`というところで止まっており、２分くらいでタイムアウトになって起動されました。
`ifconfig`でネットワーク設定を確認したところ`wlan0`のカードが消えていました。（ちなみに`iwconfig`だと`wlan0`カードの存在自体は確認できました。）
詳細は不明ですが、OpenMediaVaultをインストールする際にネットワークの設定が変わってしまったと考えられます。
##有線LANでOpenMediaVaultにアクセスして無線LANインターフェースを追加して解決
有線LANだとつながることがわかったので、有線LANでOpenMediaVaultにアクセスし、設定することにしました。

クライアントPCのブラウザからRaspberryPiのIPアドレス（http://[IPアドレス]）にアクセスします。
下記のような画面が見えたら成功です。
ユーザ名/パスワードにそれぞれadmin/openmediavaultを入力し、ログインします。
<img width="1280" alt="スクリーンショット 2020-04-06 0.25.13.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/259353/f627217f-4f85-e732-295d-1d6e4a3fc46f.png">
###無線LANインターフェースの追加
ログインしたら`①ネットワーク`、`②インターフェース`、`③追加`の順にクリックしてWiFiのインターフェースを追加します。
![20200405_qiita画像素材.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/259353/6f206c64-fa50-9ce9-4742-481a19bd03f9.jpeg)
インターフェース名wlan0、接続方式DHCPなど各自の環境にあったものにして保存、適用とクリックして反映が完了すると再びWiFi経由でRaspberryPiにアクセスできるようになりました。
##有線LANを使わない方法（試してはない）
~~Rasbianのデスクトップからブラウザを起動してOpenMediaVaultにアクセスすれば、有線LANを使わずに無線LANの設定ができるかもしれません。ただし、Raspbian Buster LiteではなくRaspbin Buster with Desktopをインストールする必要があります。またRaspberryPiを直接操作するためのHDMIディスプレイ、マウス、キーボードが必要になります。~~
後日、`sudo omv-firstaid`でCUIからでもネットワークの設定ができることを知りました

モバイルルータなどを使っていて有線LAN環境を用意できない場合、ひょっとしたら役に立つ方法かもしれません。ただし僕は試していないので、あくまで可能性です。
#補足：OpenMediaVaultをインストールするまでに具体的にやったこと
読んで頂く必要はないですが、念の為、インストールまでにやったことを載せておきます。
##Rasbianのインストール
###OSイメージのダウンロード
[公式](https://www.raspberrypi.org/downloads/raspbian/)からRasbian Buster Liteのzipをダウンロードしました。
###SDカードへの書き込み
zipを解凍して得られたimgファイルをmacのddコマンドでmicroSDカード（以下SDカード）に焼きました。
まずSDカードを抜き差ししたときの`diskutil list`コマンドの差分からSDカードがどのディスクに割り当てられているか確かめます。

```
diskutil list
```

以下では`/dev/diskX`に割り当てられていたものとします。
SDを挿入した状態で下記を実行し、SDをアンマウントします。

```
diskutil umount /dev/disk2
diskutil umount /dev/disk2s1
```
余談ですが、1行目については、実行すると`disk2 was already unmounted or it has a partitioning scheme so use "diskutil unmountDisk" in stead`というメッセージが出てきたので、ひょっとしたら１行目は実行不要か、もしくは指示されているように"diskutil unmountDisk"を使うべきだったのかもしれません。ただこのときは、そのまま進めて問題はなかったです。

アンマウントできたら`dd`でSDカードにイメージを焼き込みます。
下記のように`if=`で焼き込み元のimgファイルを、`of=`で焼き込み先のSDカードを指定します。
`bs=1m`と`diskの頭のr`はつけておくと書き込みが高速になるようです。
（参考：[ディスクのクローンを作成](https://qiita.com/sira/items/0e7cc588276b8bec35ac)）

```
dd if=/path/to/img of=/dev/rdiskX bs=1m
```
筆者の環境では書き込みは５分ほどで終了しました。
##sshの有効化
初回起動時から、ssh接続を受け付けられるようにするための設定をします。
やることは書き込みが完了したSDカード（`boot`）のトップにsshという名前のファイルを作成するだけです。

```
cd /Volume/boot/
touch ssh
```
##WiFiの有効化
有線LANで接続する場合は不要です。
OpenMediaVaultをインストールする直前までは無線LANで設定したいという方は初回起動時から指定した無線LANに繋がるように設定します。具体的にはSDカード（boot）のトップに`wpa_supplicant.conf`を作成し、下記の内容を書きます。
`SSID`、`PASSWORD`はそれぞれ繋ぎたい無線LANに対応したものに書き換えてください。

```:wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=JP

network={
	ssid="SSID"
	psk="PASSWORD"
}
```
#RaspberyPiの起動と初期設定
##sshログイン
RaspberryPiにimgを焼き込んだmicroSDを挿入し、電源を入れてください。
起動後、クライアントPCからsshできたらOKです。
Rasbianの初期ユーザ名はpiです。
IPアドレスはLanScanなどのアプリを使ってIPを調べます。
またはクライアントPCがmacやlinuxであれば、`raspberrypi.local`で名前解決できるかもしれません。

```
ssh pi@[IPアドレス]
```
または

```
ssh pi@raspberrypi.local
```
##RaspberryPiの初期設定とOpenMediaVaultのインストール
無事、RaspberryPiにsshできたら、下記の初期設定を行います。
パスワード変更、ホスト名の変更については必ずしもやらなくてよいです。
###パスワード変更

```
passwd
```
###piをsshを許可するユーザに追加

```
sudo adduser pi ssh
```
###ホスト名変更
`/etc/hosts`、`/etc/hostname`それぞれに初期ホスト名（raspberrypi）が直書きされているので、新しいホスト名に書き換えます。ホスト名を書き換えたら再起動します。

```
sudo nano /etc/hosts
sudo nano /etc/hostname
sudo reboot
```

###パッケージの更新

```
sudo apt-get update
sudo apt-get upgrade
```
###OpenMediaVaultのインストール

```
cd /opt/
wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | sudo bash
```
###再起動

```
sudo reboot
```
#おわりに
RaspberryPi3にOpenMediaVaultをインストールすると無線LANが使えなくなる、という問題に遭遇したので、経緯と復活させるためにやったことを書きました。
無線LANが使えなくなる問題について他に言及している記事が調べた範囲であまりなかったので、僕の環境特有の一般性の低い問題かもしれません。万が一、同じ状況でつまづいている方がいれば、参考になりましたら幸いです。