[メモ] OMV6でNASる  (x86_64系/2022年初夏)

※Zennの[記事](https://zenn.dev/mt08/articles/c3ec53d8893ae8)と同じです。

# 概要
- [DietPi](https://dietpi.com/)ベースにして、[OpenMediaVault](https://www.openmediavault.org/)を入れて、NASを作る
- **OMV6**はDebian11(Bullseye)、**OMV5**はDebian10(Buster)、と依存している。
- プラグイン()を使って、rootfsにあるフォルダを共有フォルダにする。

- [OMV5でNASる (x86_64系/2021年初夏)](https://qiita.com/drafts/e125aa9804424536ade6) の OMV6版

# 環境
- x86_64系のPC (インストール先が全部消去される)
	- PC
		- CPU:
		- Memory:
		- Storage:
		- LAN:
- Windows PC
	- ISOイメージのダウンロードと、[rufus](https://rufus.ie/ja/)でUSBへISOイメージ書き込み
	- ブラウザ開いて、OpenMediaVaultのWebUIに接続

# 手順
## DietPi (v8.5x)
### DietPi::インストール
1. [DietPi](https://dietpi.com/)のサイトで、[Download] => [PC/VM]にてフィルタ。Native PC(UEFI) をクリック、Installer Imageから、ファイルをダウンロード。解凍して、ISOファイルを焼く。OMV6をインストールするので、**Bullseye**　であること。

    https://dietpi.com/downloads/images/DietPi_NativePC-UEFI-x86_64-Bullseye_Installer.7z
2. USBメディアから起動。　電源入れたら、[F12]をぽちぽちおすと、起動デバイスが選べる機種がおおいかと。
3. Clonezillaが起動する. 基本Enterキー。インストール先を間違えないように
4. インストールが終わると、電源オフになる。

- うまくインストーラーが起動しない場合
    - BIOS設定で、Secure bootを、Disabled に。
    - だめなら、Native PC(BIOS/CSM)を使ってみる

### DietPi::初期設定
1. 有線接続(Ethernet)して、電源オン。
2. 初回起動時
    ![](https://storage.googleapis.com/zenn-user-upload/9d6a14cb1006-20220701.png)
    1. 初回ログイン: ユーザ:`root` / パスワード:`dietpi`
    2. ネットにつながって、自動更新される。
    3. DietPi-Softwareでインストールするソフトのデフォルトパスワード`dietpi`を変更するか?<br>=> `<OK>`変更する / `<Cancel>`**変更しない**
    4. `root`と`dietpi`というユーザのパスワードを変更するか? <br>=> `<OK>`**変更する** / `<Cancel>`変更しない <br>=>パスワード入力
    5. シリアルコンソールを禁止するか   <br>=> `<OK>`**禁止する** / `<Cancel>`禁止しない
    6. DietPi-Softwareというのが立ち上がる。
4. DietPi-Software
    `<OK>`で選択、`<Back>` `<Exit>`で戻る
    - DietePi Config　 
        - Advanced Options > RTC mode > [Emulate] => [Hardware]に変更
        - Language/Regional Options > TimeZone(default: `Europe/London`)とKeyboard(default `gb`)の設定変更
        - （`<Exit>`で戻る)
    - DietPi-Software
        - SSH Server: [Dropbear] => [Open SSH Server]に変更
        - 設定したら、"Install"を選択
		- Would you like to begin? で `<Ok>`

4. DietPi-Surveyに参加する(1:OptIn)か、参加しない(0:OptOut)か選ぶ。
5. (Optional) apt-cache-server があれば、設定する。
	```bash:例
	echo 'Acquire::http::Proxy "http://apt-cache-server.local:3142";' | sudo tee /etc/apt/apt.conf.d/02proxy
	```


6. `reboot` # 再起動

sshで`root`ログインできるようになってます。

## OpenMediaVault 6

### OMV6::インストール
- rootでログインして、以下実行
    ```bash
    time sudo bash -c 'wget -O - https://github.com/OpenMediaVault-Plugin-Developers/installScript/raw/master/install | bash'

    # 再起動
    reboot
    ```

- おそらく、`nginx`の起動に失敗しているので、以下実行
	```bash
	# nginxが起動してるか確認
	systemctl status nginx.service
	# logがどうこうでErrorだったらフォルダ作成
	mkdir /var/log/nginx
	# nginxサービス再起動
	systemctl restart nginx.service

	# 一応、再起動
	reboot
	```

### OMV6::初期設定
1. なんらかのPCで、ブラウザを開いて、`http://<OMVをインストールしたPCのIPアドレス>/`にアクセス
2. ログイン: ユーザ:`admin` / パスワード:`openmediavault`
	- パスワード忘れたら、`omv-firstaid` をコマンドラインで実行
3. **基本**: 設定 - 個々のメニューで設定を [Save/保存]して、上に黄色いのが出てきたら、✓[Apply/適応]を押して、Confirmにチェックを入れて、[はい]を押す。
4. 右上の歯車のアイコンをクリックして、
	- Change Password: Webログインパスワード変更
	- Language > 日本語 
5. Networkネットワーク => 一般 => ホスト名
	=> PCの名前を付ける(例: omv6)
	- 適用後、帰ってこない場合は、IPが変わった可能性があるので、ログインして確認。再起動するとよいかも
	- `omv6.local` などでアクセスできるかも。
		- 例: `ping omv6.local`、`ssh root@omv6.local`や `http://omv6.local`
7. Systemシステム =>
	1. Date & Time 日付と時刻=> Time zoneタイムゾーン設定
	2. omv-extras
		- Portainer
		　-	=> Install インストール　で Dockerもインストールされるハズ
		　-	http://hostname:9000/ でアクセス
	3. Pluginsプラグイン　クリックしたら、インストールボタン。
		- `openmediavault-sharerootfs` : システムのドライブ上のフォルダを共有できるようにする 
		- `openmediavault-wetty` : ブラウザからターミナル (http://hostname:2222/)
		- `openmediavault-kvm` : kvm仮想機械 使う場合
8. Storageストレージ
	1. 共有フォルダ
		+ボタンで作成 (ファイルシステム:`/dev/sda2`になるかな?)
		- `data`: `OMV/data` (絶対パス `/OMV/data`)
		- `home`: `home` (絶対パス `/home`)
9. Services サービス
	1. Wetty Enabled有効
	2. SMB/CIFS
		1. 設定: 有効 (一番下の、保存を押す)
		2. 共有: + ボタンで作成
			1. Shared folder: OMV/data を指定
				1. ごみ箱有効化?

5. ユーザー
	1. 設定 >  ユーザーのホームディレクトリ 
		1. 有効、OMV/home指定
	2. ユーザー + ボタンで作成
		- 名前(**ログイン名**):
		- Email: (空白でよい)
		- パスワード / 確認
		- シェル: `/bin/bash` (お好みで)
		- グループ
			- `adm` : 
			- `docker` : Docker用
			- `kvm, libvirt, libvirt-qemu` : KVM用
			- `sambashare` :ネットワークフォルダ用(SMB)
			- `ssh` : sshログイン用
			- `sudo` : sudo用
			- `users`: ユーザなら


### 以上で、↓ができるハズ。
※`omv6.local`でだめなら、直接 IP を入れる
- ブラウザで http://omv6.local/ で OMVのWebログイン
- (SMB) Windowsエクスプローラから、`\\omv6.local` でアクセスして、作成したユーザ・パスワードで、`data`フォルダがみれるハズ
- (ssh)`ssh tsukutta_user@omv6.local` で、sshログインできるはず
- (wetty) ブラウザで http://omv6.local:2222/ で webベースのssh
- (portainer) ブラウザで http://omv6.local:9000/ 
	- 再起動しろ、とかでてきたら、OMV管理から、Plugins > omv-extras > Docker で Restart再起動ボタンを押す
- (KVM ... あとで詳しく書く) poolを作って Activate, NetworkをActivate, ISOをpoolにつっこんで、VMsからVM作成


# TODO (期待薄?)
- 外部ストレージ使用
- KVMの使い方説明
	- Windows 10 ゲストとか
	- vagrant で使う、とか
- dockerでのサービス類 とか
	- [Nextcloud](https://nextcloud.com/)
	- メディアサーバ [Jellyfin](https://jellyfin.org/)