Open Media Vault の基本設定

このページは、私が Open Media Vault (OMV) を使って NAS を構築し、SMB と NFS 共有の設定をした項目の備忘録です。 設定時の OMV のバージョンは 5.6.10.1 です。

設定の流れ #

OMV の基本設定については、 公式の New User Guide に書いてありますので、これに沿ってどういう設定が必要かを見ながら設定すればよいです。

SMB や NFS などのプロトコルでファイル共有を行うためには、最低限次の設定を行う必要があります。本ページではそれぞれ “ストレージ設定” と “サービス設定” の章で説明しています。

  1. ボリュームの作成
  2. 作成したボリュームのマウント
  3. マウントしたボリューム上に共有フォルダーの作成
  4. 作成した共有フォルダーを各種ファイル共有サービスで共有フォルダー対象として指定

その他の設定を含めて次以降に備忘録として残しています。 なお、ローカルネットワークからのアクセスのみに限定していることとアクセスする端末を限定しているため、セキュリティの考慮はしていませんのでご注意ください。

System #

General Settings #

デフォルトでは Web GUI 上で無操作が続くと自動的にログアウトしてしまいます。 いろいろ設定をしている間は自動的にログアウトされると面倒なので一旦無効化します。

General Settings

Date & Time #

NTP の設定を行います。 NTP サーバーのこだわりはないですが NICT の NTP サーバーを登録します。

Date & Time

Network #

ネットワークインターフェースの設定を変更します。

Network - Interfaces

ここで設定した内容は netplan を使って反映されます。 Web GUI 上で設定を変更すると /etc/netplan/10-openmediavault-default.yaml/etc/netplan/20-openmediavault-eno1.yaml といったように設定ファイルが作成されます。

コンソールから netplan を使って手動でネットワークの設定することも可能ですが、Web GUI 上には反映されません。

VLAN、ボンディング、Proxy やファイアウォールの設定などはしていませんが、そういった設定も GUI で設定可能なようです。 詳細は、 こちらの公式ドキュメントをご覧ください。

Notification #

E メールでさまざまな通知を受け取るための設定を行います。 E メールを送信するために SMTP サーバーの設定と受信アドレスの設定が必要です。

Notification

SMTP サーバーとして Gmail を指定する場合、 2FA の設定を行い、app password の設定が必要 です。

なお、バックエンドに Posfix を サテライトモードの MTA として使用しているため、他のサービスで 25 番ポートが使われていると Posfix が立ち上がらず、通知が送られないことに注意が必要です。

個人的にはメールだけでの通知では不便なため、 Slackbot 転送先メールアドレス を通知先のメールとして設定し、Slack に通知するようにしています。

通知項目は「System ⇒ Notification ⇒ “Notifications” タブ」から変更でき、それぞれの項目については 公式ドキュメント Events の節 に記載されています。 なお、 Monit を使った filesystem や system のメトリックス関連のイベントの閾値については、次のファイルに定義されています。

  • /etc/monit/conf.d/openmediavault-filesystem.conf
  • /etc/monit/conf.d/openmediavault-filesystem.conf

Storage #

ここでは、ストレージ用のボリューム作成と、ディスク関連の設定を行っていきます。 今回はデータ保管用のストレージとして RAID 1 を構成し、RAID ボリュームをマウントしていきます。

Disks #

物理ディスクに対する各種設定 を行います。 「Storage ⇒ Disks」から物理ディスクを選択し、“Edit” ボタンを押すと、設定ができます。

待機電力削減のために物理ディスクごとに Advanced Power Management と Spindown time 設定を行います。 また、書き込み性能向上のために物理ディスクごとに Write cache の有効化を行います。

Storage - Disks

S.M.A.R.T. #

S.M.A.R.T. の設定を行います。

「Storage ⇒ S.M.A.R.T. ⇒ “Settings” タブ」から次の項目を設定します。

  • S.M.A.R.T. の有効化
  • Power mode の設定
  • 温度異常の閾値設定

Storage - S.M.A.R.T. Settings

「Storage ⇒ S.M.A.R.T. ⇒ “Devices” タブ」からディスクを選択して “Edit” ボタンを押し、各ディスクの S.M.A.R.T. モニタリングをアクティベーションします。

「Storage ⇒ S.M.A.R.T. ⇒ “Scheduled tests” タブ」から実施するテストの項目として、各ディスク週一回の Short Test と Conveyance Test を追加します。

Storage - S.M.A.R.T. Scheduled tests

なお、 公式ドキュメント が参照しているドキュメントを参照するとテスト項目はそれぞれ次のようなものです。

  • Short Test:電気的特性、機械的特性、読み取り検証の観点でディスクに欠陥がないかをチェックします。最大実行時間は2分です。テストは"オンライン"で行われ、つまり、テスト中でのディスクアクセスは可能です。
  • Long Test:Short Test が最大実行時間が制約されているのに対して、Long Test は時間制約がなく、すべてのディスク領域においてチェックします。テストは"オフライン"で行われるため、テスト中はディスクアクセスができません。
  • Conveyance Test:ディスクの転送時に損失があるかをチェックします。数分以内でテストは終わります。
  • Offline Immediate:上記のとおり、Short Test はオンラインであるため、アイドル中に実施されますが、Immediate オプションを付けることでオフラインとして直ちに実行できます。

RAID Management #

ソフトウェア RAID の設定を行う場合、ディスクのフォーマットの前に「Storage ⇒ RAID management」から “Create” ボタンを押し、RAID を構成するディスクと RAID 構成を選択することで RAID ボリュームを構築できます。

Storage - RAID management

File Systems #

新規でファイルシステムを構築する場合、ファイルシステムのフォーマットから行います。 ファイルシステムのフォーマットは「Storage ⇒ File Systems」から"Create" ボタンを押し、必要な項目を選択することで実行できます。 この実行を行うためにはボリュームがアンマウントされている必要があります。 フォーマットが終われば、ボリュームをマウントします。

Storage - File Systems

Access Rights Management #

ここでは、アクセス権限の設定を行えますが、今回はユーザー認証等は行うつもりはありませんので、共有フォルダーの作成のみ行います。

Shared Folders #

マウントした RAID ボリューム上と共有したいパスを設定して、共有フォルダーを作成します。

Shared Folders

Service #

最後にようやく SMB と NFS サービスを立ち上げます。

SMB/CIFS #

“Settings” タブの General Settings にある Enable を有効化し、SMB サービスを立ち上げます。

“Shares” タブを開き、Shared Folders で作成した共有フォルダーを指定します。なお、今回はユーザー認証を行いませんので、ここでは Public 設定を “Guest allowed” にしておきます。

SMB - Shares

なお、Public 設定を “Guest Allowed” にしていても、対象の共有フォルダーの ACL の Extra Option の Others が “Read/Write/Execute” になっていないとアクセスできません。

NFS #

“Settings” タブの Enable を有効化し、NFS サービスを立ち上げます。

“Shares” タブを開き、“Add” ボタンを押し、ボリュームの設定をします。

NFS - Shares - Add

Client の項目は clientaddr オプションに相当します。

Privilege の項目は rw もしくは ro オプションに相当します。

Extra options の項目には、なぜか、subtree_checkinsecure がデフォルトで入るようになっていますので注意が必要です。 subtree_check は性能に影響が出る可能性があり、insecure はセキュリティに影響が出る可能性があるため、オプションを理解しないで利用していると思わぬ自体が発生する可能性があります。

その他のオプションは こちらをご確認ください。