Raspberry PiでNASサーバーを自作する方法!Sambaを使った構築手順を徹底解説
NAS(Network Attached Storage:ネットワーク接続ストレージ)とは、ローカルネットワーク経由でアクセスできるドライブのことです。いわば「家庭用クラウドストレージ」のような存在で、PCの容量では足りないファイルの保存や、複数デバイス間でのファイル共有に最適です。Raspberry Piをお持ちなら、安価かつ簡単にNASサーバーを自作できます。
構築方法はいくつかありますが、最も人気があるのはOpenMediaVault(OMV)とSambaの2つです。この記事ではSambaを採用します。その理由は、現在使っているRaspbian(Raspberry Pi OS)環境のまま動かせる点にあります。OMVはOSを丸ごと置き換えてしまうため、NAS以外の用途にPiを使えなくなってしまいます。ただしOMVは外部ネットワークからのファイルアクセスなど、多機能であるのも事実です。PiをNAS専用機にする予定なら、OMVも検討する価値があります。
必要なもの
- Raspberry Pi(4、3、または2推奨。Sambaは軽量なので最新モデルである必要はありません)
- Piに挿入済みで、RaspbianがセットアップされたSDカード
- Piと同じネットワークに接続されたPC
- 【任意】Piに接続する外付けHDDなどの外部ストレージ
筆者は手元にあるRaspberry Pi 4(4GB RAM)を使用していますが、第2・第3世代のユーザーからもSambaが問題なく動作したという報告があります。保存したいファイルの量にもよりますが、大容量のMicroSDカードだけでも運用可能です。ただし、外付けドライブを接続すれば保存容量を大幅に増やせます。さらに外付けデバイスを2台使ってRAIDを組めば、片方のドライブが故障してもデータを守れますが、今回はシンプルに進めます。
システムが最新の状態でない場合は、まずアップデートしておきましょう。以下のコマンドでパッケージリストを更新し、アップグレードを適用します。
sudo apt update && sudo apt -y upgrade
ステップ1:ストレージを準備する
ほとんどのPiプロジェクトと同様に、ターミナルを開きます。Pi本体の画面でも、SSH経由でも構いません。
外付けドライブを使う場合
USB接続のドライブを使う場合は、まずフォーマットが必要です。GUIツールのGPartedを使ってもよいですが、ここではターミナルでの手順を紹介します。
次のコマンドを実行します。
lsblk
または:
sudo fdisk -l
表示された一覧から、共有ストレージとして使いたいドライブを特定します。1台だけ接続している場合は「sda」や「sda1」という名前になっていることが多いので、それを控えておきましょう。
まずドライブをアンマウントします。
sudo umount /dev/NAME
NAMEの部分には、lsblkやsudo fdisk -lの出力で確認した名前(sda、sda1など)を入れます。
続いてフォーマットします。
sudo mkfs -t ext4 /dev/NAME
これでドライブが消去され、ext4形式でフォーマットされます。NTFSやFAT32も選べますが、ext4の方が高速でトラブルも少ないためおすすめです。
フォーマットには時間がかかります。完了したら、好きなラベル名を付けておきましょう。
sudo e2label /dev/NAME YOURLABEL
NAMEはドライブ名(sdaなど)、YOURLABELは任意のラベル名です。その後、再起動しておくと安心です。
sudo reboot
SDカードを使う場合
外部ストレージが不要なら、PiのSDカード上に共有フォolderを作成するだけでOKです。
次のコマンドを実行します。
mkdir /home/pi/FOLDERNAME
これだけです。ディレクトリやフォルダ名は自由に変更できます。筆者は「raspsharey」という名前にしました。
ステップ2:Sambaをインストールする
Sambaは、WindowsとUnix系マシン間でファイル共有を可能にするツールです。以下のコマンドでインストールします。
sudo apt install samba samba-common-bin
ステップ3:Sambaを設定する
Sambaの設定ファイルは、次のコマンドで開けます。
sudo nano /etc/samba/smb.conf
ファイルを開いたら、一番下までスクロールして、共有したい内容を記述する行を追加します。以下のような形式になります。
[sambadrive] path = /media/pi/pisharedrive writeable=Yes read only=no create mask=0777 directory mask=0777 public=no
[sambadrive]の部分は、他のPCから共有フォルダへアクセスするときのアドレスになります。
pathには、外付けドライブを使う場合は上記のようにマウント先を指定します。SDカード上のフォルダの場合は、ステップ1でmkdirコマンドで作成したディレクトリを指定します。筆者の場合は次の通りです。
/home/pi/raspsharey
publicが「no」の場合、アクセスにはユーザー名とパスワードが必要です。「yes」にすると、ネットワーク上の誰でもアドレスだけでアクセスできるようになるので注意してください。
なお、設定ファイルには複数のフォルダやドライブを同時に登録できます。筆者も外付けドライブと内部フォルダの両方を追加しています。
設定が終わったら、Ctrl + Oを押してEnterで保存し、Ctrl + Xでファイルを閉じましょう。
ステップ4:Sambaユーザーを作成する
次に、Samba用のユーザー名とパスワードを作成します。Raspberry Piのデフォルトユーザーは「pi」なので、これを使うのが簡単です。
sudo smbpasswd -a pi
これでSambaユーザー「pi」がパスワード付きで作成されます。パスワードの入力を求められるので、入力してEnterを押し、確認のためもう一度入力します。
最後に、変更を反映させるためにSambaを再起動します。
sudo systemctl restart smbd
これでセットアップは完了です!あとは別のマシンから共有フォルダにアクセスするだけです。
ステップ5:WindowsからNASにアクセスする
1. エクスプローラーを開きます。
2. 上部バーにある「ネットワークドライブの割り当て」ボタンを探します。エクスプローラーのバージョンによって場所が異なり、「PC」フォルダ内では「コンピューター」タブ配下に大きめのボタンとして表示され、それ以外の場所では「簡単アクセス」メニューの中にあることが多いです。
3. クリックすると設定ダイアログが開きます。「フォルダ」欄に、Raspberry Piのアドレスと設定ファイルの角括弧内で指定した名前を組み合わせて入力します。筆者の場合は \\raspberrypi\\sambadrive のようになります。
4. フォルダの場合も同じ要領です。「raspberrypi」の代わりにPiのローカルIPアドレスを使ってもアクセスできます。
5. 「別の資格情報を使用して接続する」に必ずチェックを入れます。
6. 「完了」をクリックし、Sambaユーザー作成時に設定したユーザー名とパスワードを入力します。
あとはフォルダを開いて、自作NASライフを楽しんでください。
補足:うまくいかないときの対処法
フォルダへのアクセス時に書き込み権限がないなどの問題が発生した場合は、Piユーザーに所有権がないことが原因かもしれません。以下のコマンドで解決できます。
sudo chown -R [PI USER] [PATH TO FOLDER]
筆者の場合は次のようになります。
sudo chown -R pi pi/raspsharey
ネット上では「/etc/fstab」ファイルを編集して権限問題を解決する方法も見かけますが、このファイルの編集は失敗するとシステム全体に深刻な影響を与える可能性があります。あくまで最終手段として考えてください。
順調に進めば、このプロジェクトは30分以内に完成します。完成後は、Piが稼働している限り、いつでも自分専用のNASとして使えます。
関連記事:
- Raspberry Pi 4をエッジゲートウェイにする方法
- Raspberry PiにOSMCをインストールする方法
- Raspberry PiでDIYワイヤレスプリンターを作る方法
-
Raspberry PiとOctoPrintで3Dプリンターを快適に制御する方法
3Dプリンティングは、初心者にとってハードルが高い趣味に思えるかもしれません。しかし、仕組みさえ理解してしまえば、非常に楽しくやりがいのある趣味へと変わります。入門者の中には、Windows 10で手軽に使えるプラグアンドプレイ式の3Dプリンターを購入したいと考える方も多いでしょう。例えば、Monoprice Select Mini Pro(約250ドル)や、3Dプリントに加えてレーザー彫刻・CNCフライス盤機能も備えたSnapmaker 3in1(約800ドル)などが挙げられます。どちらもエントリーモデルとして優れた選択肢ですが、造形サイズが小さいため、大きなパーツを印刷したくなったとき、す
-
Windowsのディスクチェックツールでハードディスクのパーティションを検査・修復する方法
はじめにディスクエラーは、特にメンテナンスが行き届いていない古いパソコンによく発生するトラブルです。幸いにも、Windowsにはシステムユーティリティの1つとしてディスクチェックツールが標準搭載されており、ハードディスクの各パーティションをスキャンして、不良セクタや失われたセクタ、破損したファイルを検出することができます。ディスクチェックユーティリティによって検出・修復されるファイルは、システムトラブルの原因となることが多く、放置すればするほど深刻化する恐れがあります。そのため、このツールの使い方をマスターし、定期的にディスクチェックを実行して、パソコンを悩ませる問題を早めに解決しておくことが