Ubuntu ServerとOpenMediaVaultで作る自作Home NAS:低コストで10TBのストレージを構築

Ubuntu tutorial - IT technology blog
Ubuntu tutorial - IT technology blog

データの分散とクラウド費用の悩み

スマートフォンで撮影した写真や4K動画、仕事の資料などは、毎年数十GBずつ増え続けています。Google DriveやiCloudに毎月数百円から数千円を払い続けると、数年後にはかなりの金額になります。また、クラウドへの依存はプライバシーへの懸念や、通信障害時のアクセス速度低下といった問題も伴います。

Synologyのような専用NASを購入するのは安心ですが、高価です。2ベイのNASでも数万円しますが、ハードウェアスペックは控えめなことが多いです。一方、古いミニPCやデスクトップPCを再利用すれば、圧倒的なパフォーマンスが得られます。しかし、Ubuntu Serverをコマンドライン(CLI)だけで管理するのは、多くのユーザーにとって大きな壁となります。

OpenMediaVault (OMV) こそがその解決策です。Ubuntu Server上にOMVをインストールすることで、直感的なWeb UIが利用可能になります。ターミナルを多用することなく、ディスク管理や権限設定、メディアサーバーの構築が行えます。

なぜTrueNASや素のSambaではなくOpenMediaVaultなのか?

この構成に決める前に、私は3つの一般的な方法をテストしました:

  • TrueNAS (ZFS): 非常に安全ですが、メモリ(RAM)を大量に消費します。ZFSファイルシステムを安定して動作させるには、最低でも8GB〜16GBのRAMが必要です。
  • Ubuntu Server + Samba: 非常に軽量ですが、ユーザー作成やドライブのマウントのたびにSSHでコマンドを入力する必要があります。家族全員でデータを共有するには不便です。
  • Ubuntu上のOpenMediaVault: これが完璧なバランスです。OMVはRAM 2GBでもスムーズに動作し、Dockerのサポートも充実しており、Ubuntuの膨大なアプリケーションリポジトリをそのまま活用できます。

以下は、私が10以上の家庭用NASシステムを構築してきた中で培った、最も安定性の高い最適化プロセスです。

ステップ1:Ubuntu Serverの準備

Ubuntu Server 22.04または24.04 LTSをインストールしておきます。マシンがLANケーブルで接続され、sudo権限があることを確認してください。開始前に、以下のコマンドでシステム全体を更新します。

sudo apt update && sudo apt upgrade -y

重要な注意点: UbuntuはデフォルトでNetplanを使用してネットワークを管理しますが、OMVは独自の構成を行います。インストールの途中でWebインターフェースへの接続が失われるのを防ぐため、最初から静的IPアドレスを設定しておくことをお勧めします。

ステップ2:自動スクリプトによるOpenMediaVaultのインストール

各パッケージを手動でインストールすると競合が発生しやすいため、OMV-Extrasコミュニティが提供しているスクリプトの使用を推奨します。このツールはハードウェアを自動的に認識し、すべてを自動で設定してくれます。

以下のコマンドを実行してプロセスを開始します:

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

このプロセスには10〜15分ほどかかります。完了後、サーバーは自動的に再起動します。これでUbuntuが本格的なNAS専用OSへと変貌します。

ステップ3:Web UI管理画面の設定

同じLAN内にある別のPCのブラウザから、サーバーのIPアドレス(例:http://192.168.1.100)にアクセスします。

  • デフォルトアカウント: admin
  • デフォルトパスワード: openmediavault

まず最初に「System(システム) -> Workbench(ワークベンチ)」に移動しましょう。すぐに管理者パスワードを変更し、設定中にログアウトされないようタイムアウト(timeout)を30分に延長してください。

ステップ4:ストレージドライブの設定

適切にフォーマットされたストレージがなければ、NASは役に立ちません。OSをインストールしたドライブをデータ保存用に使わないようにしましょう。

1. 古いデータの消去(Wipe)

Storage(ストレージ) -> Disks(ディスク)」に移動します。新しく追加したHDDを選択し、「Wipe(消去)」をクリックします。これにより古いNTFSやFAT32のパーティションが削除され、新しいLinuxフォーマットの準備が整います。

2. ファイルシステムの作成

Storage(ストレージ) -> File Systems(ファイルシステム)」に移動し、「+ (Create)」ボタンを押します。Linuxで抜群の安定性を誇る EXT4 フォーマットをお勧めします。スナップショット機能などが必要な場合は BTRFS が高度な選択肢となります。作成後、「Mount(マウント)」をクリックしてシステムに認識させます。

ステップ5:Windowsやスマホで利用するためのSMB共有設定

家族が映画を見たり写真を保存したりできるように、Sambaプロトコルを有効にします。

  1. Shared Folder(共有フォルダ):Storage(ストレージ) -> Shared Folders(共有フォルダ)」で「DATA」というフォルダを作成し、前のステップでマウントしたドライブを選択します。
  2. SMB Service(SMBサービス):Services(サービス) -> SMB/CIFS -> Settings(設定)」で「Enable(有効)」をオンにします。
  3. Shares(共有): 「Shares」タブで「DATA」フォルダを追加します。これで、Windowsエクスプローラーで \\192.168.1.100 と入力するだけでファイルにアクセスできるようになります。

ステップ6:Docker経由でJellyfinを使った動画ストリーミング

モダンなNASにはエンターテインメント機能が欠かせません。システムをクリーンに保つため、直接インストールするのではなくDockerを使用します。「System(システム) -> Plugins(プラグイン)」から openmediavault-compose プラグインをインストールしてください。

以下は、現在最も優れた無料の映画管理ツールであるJellyfinの基本的なDocker Compose設定です:

services:
  jellyfin:
    image: jellyfin/jellyfin
    container_name: jellyfin
    network_mode: host
    volumes:
      - /ssd/config:/config
      - /hdd/movies:/data/movies
    restart: unless-stopped

実行後、http://NASのIP:8096 にアクセスすれば、スマートTVやスマートフォンで滑らかな4K動画ライブラリを楽しめます。

NASを安定して運用するための実践的なヒント

長年自宅でNASを運用してきた中で、3つの大きな教訓を得ました:

  • データ保存にUSBメモリを絶対に使用しない: USBメモリは頻繁なデータの書き込みにより、わずか数ヶ月で故障します。専用のHDD(WD RedやSeagate IronWolfシリーズなど)に投資しましょう。
  • 温度管理: NASは通常24時間365日稼働します。突然のデータ消失を防ぐため、HDDの温度は45°C以下に保つようにしてください。
  • 安定した電源: 可能であれば小型のUPS(無停電電源装置)を導入してください。データの書き込み中に突然停電すると、ファイルシステムが破損するリスクが非常に高いです。

自作NASはクラウド費用の節約になるだけでなく、自分のデータを完全にコントロールできるという満足感を与えてくれます。ぜひ自分にぴったりのストレージシステムを構築してみてください!

Share: