Raspberry PiをNASとして使用する
この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues
Raspberry PiをNAS(ネットワーク接続ストレージ)として使用する
Raspberry Piは、技術愛好家の間で人気のある強力なマイクロコンピュータです。さまざまなDIYプロジェクトに使用でき、その中にはネットワーク接続ストレージ(NAS)のセットアップも含まれます。このガイドでは、以下の側面について探ります:
Raspberry PiはNASに適しているか?

Raspberry Piは強力な処理能力と柔軟な構成オプションを備えており、NASを構築するための理想的な選択肢です。以下はその利点です:
- コスト効率:Raspberry Piは従来のNASデバイスと比較して比較的安価です。
- 低消費電力:Raspberry Piは非常に低い消費電力を持ち、24時間365日の運用に適しています。
- 柔軟性とカスタマイズ性:さまざまなオペレーティングシステムやソフトウェアをインストールして、必要に応じてNASを構成できます。
- コミュニティサポート:Raspberry Piには大規模なユーザーコミュニティがあり、豊富なリソースと技術サポートを提供しています。
ただし、以下の制約を考慮する必要があります:
- 性能の制約:Raspberry Piは、大量のデータを処理する際に高性能なNASデバイスと比較して性能の制約がある場合があります。
- ストレージの制約:Raspberry Pi自体には大容量のストレージが内蔵されておらず、外部ハードドライブやSSDが必要です。
Raspberry Pi 5をNASに変換する方法
Raspberry Pi 5をNASに変換するのは複雑ではありません。以下の手順に従ってください:
ステップ1:ハードウェアの準備
- Raspberry Pi 5
- microSDカード(32GB以上推奨)
- 安定した電源アダプター
- 外部ハードドライブまたはSSD
- ネットワーク接続(有線または無線)
ステップ2:オペレーティングシステムのインストール
- Raspberry Pi Imagerのようなツールを使用して、OSイメージをmicroSDカードに書き込みます。

- 「Raspberry Pi 5」->「Raspberry Pi OS (32-bit)」-> SDカードを選択します(他のUSBデバイスが接続されている場合はデータ損失を避けるため、正しいデバイスを選択してください)。次に「Next」をクリックします。以下は例です:

- 次に設定を編集します。以下は提供される設定の例です:
- 推奨されるホスト名「nas」を入力します。
- 後で認証に必要なユーザー名とパスワードを入力します。
- 「WiFiを構成する」のチェックボックスをオンにして、Piが自動的にWi-Fiに接続できるようにします。
- ネットワークSSID(名前)とパスワードを入力します。
- 「SSHを有効にする」のチェックボックスをオンにして、マウスやキーボードを使用せずにPiに接続できるようにします。

- 「Save」をクリックした後、イメージの書き込みを開始します。このプロセスには時間がかかる場合があります。以下の画像のように表示された場合、書き込みが完了したことを示します。

ステップ3:Piへのリモート接続
SDカードを挿入した後、Raspberry Piに電源を入れます(可能であれば、イーサネットケーブルを使用してネットワークに接続しますが、このチュートリアルではイメージング中に選択したWiFiを使用します)。
コンピュータでターミナルセッションを開き、以下のコマンドを実行してSSH経由でRaspberry Piにアクセスします。usernameとhostnameはイメージング中に設定したものに置き換えてください:
$ ssh <username>@<hostname>.local
例:
$ ssh [email protected]
イメージング中に作成したパスワードを入力する必要があります。以下は例です:

SSH接続が完了したので、これをNASに変換する準備が整いました。
ステップ4:NASのインストールと構成
1. ドライブの確認
まず、ストレージデバイスをRaspberry Piに接続し、以下のコマンドを使用して接続されたストレージデバイスを確認します:
$ lsblk
以下のような出力が表示されます:

この出力では、mmcblk0はmicroSDカードであり、最初に接続されたUSBストレージデバイスはsda(ストレージデバイスA)として表示されます。追加のデバイスはsdb、sdcなどとして表示されます。
2. ドライブのパーティション分割
次に、Raspberry Pi OSが単一のストレージデバイスとして認識できるようにドライブをパーティション分割します:
$ sudo fdisk /dev/sda
以下は関連するコマンドです:
- 新しいパーティションを作成:n
- 現在のパーティションを一覧表示:p
- パーティションを削除:d
- 保存せずに終了:q
このプロジェクトでは、新しいパーティションを作成するために「n」を入力し、Enterキーを押します。その後、「p」を入力してEnterを押し、プライマリパーティションとして指定します。残りのオプションについては、Enterを押してデフォルト設定を選択します。既存のパーティションがある場合は、「d」を入力して削除します。以下はその例です:

「All space for primary partitions is in use(プライマリパーティションのスペースがすべて使用されています)」というメッセージが表示された場合、ディスク上にすでに4つのプライマリパーティション、または3つのプライマリパーティションと1つの拡張パーティションが存在していることを意味します。この場合、パーティションを削除する必要があります(d)。
ディスクにマウントされたパーティションがある場合(例:sda1)、以下の手順でアンマウントしてください:
- fdiskを終了する:
q
を入力してEnterを押し、fdiskを終了して誤った変更を防ぎます。 - ファイルシステムをアンマウントする:ディスクにマウントされたパーティションがある場合、まずそれらをアンマウントします。以下のコマンドでマウントされたパーティションを確認できます:
$ mount | grep /dev/sda
- 次に、以下のように
umount
コマンドを使用してアンマウントします:
$ sudo umount /dev/sda1
- 以下を実行します:
$ sudo fdisk /dev/sda
以下はその例です:

その後、上記のパーティション作成手順に戻ります。
3. ドライブをフォーマットする
ドライブのパーティションが完了したら、Raspberry Pi OSがデータをアクセスおよび操作できるようにフォーマットする必要があります。ext4ファイルシステムでドライブをフォーマットするには、以下のコマンドを使用します:
$ sudo mkfs.ext4 /dev/sda1

4. ドライブをマウントする
次に、ドライブをマウントしてRaspberry Piのファイルシステムで使用可能にします:
$ sudo mount /dev/sda1 /mnt
システム起動時にドライブが自動的にマウントされるようにするには、以下を実行します:
$ sudo nano /etc/fstab
ファイルの末尾に以下の行を追加します:
/dev/sda1 /mnt/sda1/ ext4 defaults,noatime 0 1
Ctrl+X、次にY、最後にEnterを押してnanoで編集したファイルを保存します。以下はその例です:

5. 共有フォルダを作成する
以下のコマンドを実行して、ドライブ上に共有フォルダを作成します:
$ sudo mkdir /mnt/sda1/shared
次に、Raspberry Pi上のすべてのユーザーに読み取り、書き込み、実行権限を付与します:
$ sudo chmod -R 777 /mnt/sda1/shared
以下はその例です:

ステップ5:ドライブをネットワークで共有する
ネットワーク上でディレクトリを共有するためのツールであるSambaをインストールするには、以下のコマンドを実行します:
$ sudo apt install samba samba-common-bin
以下はその例です:

次に、Sambaを設定してディレクトリをネットワーク上で共有します。Samba設定ファイルを編集して指示を与えます。設定ファイルsmb.conf
をエディタで開きます:
$ sudo nano /etc/samba/smb.conf
ファイルの末尾に以下の行を追加します:
[shared]
path=/mnt/sda1/shared
writeable=Yes
create mask=0777
directory mask=0777
public=no
Ctrl+X、次にY、最後にEnterを押してnanoで編集したファイルを保存します。以下はその例です:

設定変更を適用するためにSambaを再起動します:
$ sudo systemctl restart smbd
以下はその例です:

ステップ6:ドライブへのアクセス権を付与する
最後に、Samba共有にアクセスできるようにするため、認証されたユーザーにのみファイルへのアクセス権を付与します。以下のコマンドを実行して、Samba共有を管理するユーザーを作成します。この例では、ユーザー名をpinas
とします:
$ sudo adduser <username>
以下はその例です:

次に、以下のコマンドを使用してそのユーザーにパスワードを設定します:
$ sudo smbpasswd -a <username>
以下はその例です:

ステップ7:NASにアクセスして使用する
Windowsから
- ファイルエクスプローラーを開き、「ネットワークドライブの割り当て」をコンピュータメニューから選択します。
- ドライブ文字を選択し、フォルダパスを入力します。このチュートリアルでは、パスは
\\nas\pinas
です。ドメイン名形式を使用すると、IPアドレスが変更されてもデバイスに簡単にアクセスできます。 - ログインユーザー名とパスワードを入力します。以下はその例です:

- ログイン後、サーバー上のファイルにアクセスできます。

次のステップ
もし、ハードドライブと Raspberry Pi をより整理され、見た目が美しくなるようにしたい場合は、3Dプリンターを使用してブラケットやエンクロージャーを作成し、Raspberry Pi と外付けハードドライブを固定して一緒に組み立てることができます。
Raspberry Pi を NAS として使用する際の一般的な問題と解決策
Raspberry Pi を NAS として使用する際に遭遇する可能性がある一般的な問題とその解決策を以下に示します:
質問 1: Raspberry Pi NAS の性能を向上させる方法は?
- データ読み取り速度を向上させるために HDD の代わりに SSD を使用する。
- Raspberry Pi を有線ネットワークに接続して、より安定した性能を確保する。
- Samba の設定ファイルを最適化し、キャッシュ設定や最大接続数を調整する。
質問 2: Raspberry Pi NAS を安全に保つ方法は?
- セキュリティ脆弱性を修正するために、システムとソフトウェアを定期的に更新する。
- 強力なパスワードを使用し、SSH アクセスを制限する。
- ファイアウォールを設定し、リモートアクセスには VPN を使用する。
質問 3: Raspberry Pi NAS へのバックアップを自動化する方法は?
- rsync ツールを使用して定期的なバックアップタスクを設定する:
rsync -av --delete /source_directory /mnt/external_hdd/backup_directory
- cron ジョブを設定して自動バックアップを実行する。
技術サポート & 製品に関するディスカッション
私たちの製品を選んでいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しています。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルを用意しています。