1つのRaspberryPiと少量の安価な外付けハードドライブを混ぜ合わせると、超低電力で常時オンのネットワークストレージデバイスのレシピが得られます。独自のPiベースのNASをセットアップする方法を説明します。
なぜ私はこれをしたいのですか?
常時接続のネットワークストレージデバイスを使用する利点は、ネットワークの内外のコンピューターからデータ(またはバックアップ先)に常にアクセスできると非常に便利なことです。欠点は、ほとんどの場合、利便性のためにかなりの電力を消費していることです。
たとえば、私たちのオフィスサーバーは24時間年中無休で稼働し、年間約200ドル相当の電力を消費します。一方、Raspberry Piベースのネットワークストレージデバイスは、年間約5ドル相当の電力を消費します。
本格的なサーバーには、より多くのストレージスペースと、より多くの作業(数テラバイトのビデオコレクションを妥当な期間でトランスコードするなど)を実行する機能が備わっていることを、私たちは最初に認めます。ただし、ほとんどの人にとって、家のどこかに常時接続のコンピューターを配置する主な目的は、ファイルサーバーおよびファイルバックアップリポジトリとして機能することです。このようなタスクの場合、Raspberry Piは十分に強力であり、電力使用量の変更を大幅に節約できます。
私には何が必要なのだろう?
このチュートリアルは、前のチュートリアルに基づいています。 RaspberryPi入門のHTGガイド これはすでに完了していると想定します。つまり、Raspberry Piを既に持っており、電源を入れ、マウスとキーボードに接続し、Raspbianをインストールしていることを前提としています。
「RaspberryPi入門」チュートリアルで必要なギアに加えて、必要なハードウェアは次のとおりです。
- 簡単なネットワークバックアップとファイル提供のための1つの(少なくとも)USB外付けハードドライブ
または
- ローカルデータの冗長性のための2つの(少なくとも)USB外付けハードドライブ
それでおしまい!単純なネットワーク接続ドライブが必要な場合は、ハードドライブが1つだけ必要です。ローカル(Raspberry Pi)のデータ冗長性を確保するために、少なくとも2台のハードドライブを使用することを強くお勧めします。このチュートリアルでは、次のマッチングペアを使用しています。 Seagate Backup Plus1TBポータブル外付けハードドライブ 。それらは非常に小さく、外部電源を必要とせず、部品を購入するときに販売されていました。
手持ちの外付けハードドライブならどれでも使用できますが、プロジェクトのテーマ全体は、邪魔にならないように収納できる小型の低電力NASをセットアップすることなので、可能であれば小型の低電力ドライブを使用するのが理想的です。のことを忘れます。
続行する前に、Raspberry Pi NASの構成方法に関して、いくつかの設計上の選択を行ったことに注意する必要があります。ほとんどのユーザーは、私たちが行ったとおりに正確に従うことを望んでいますが、ニーズやネットワーク上のコンピューターの使用方法に合わせて、特定の手順を微調整することをお勧めします。
まず、NTFS形式のハードディスクを使用しています。 Raspberry PiNASが何らかの理由で失敗した場合 または ネットワーク経由ではなくUSB3.0接続を介して情報をすばやくコピーしたいので、NTFSフォーマットのディスクを使用すると、NASビルドで使用しているポータブルUSBドライブを簡単に取り出して、多くのWindowsの1つに接続できます。私たちが毎日使用するマシン。
次に、ネットワーク共有にSambaを使用しています。これも、Raspberry PiNASを主にWindowsネットワークとメッシュ化するのに便利だからです。
外付けハードドライブの準備と取り付け
ハードウェアをまとめたら、Raspberry Pi入門チュートリアルに従って、速度を上げます(そして、Raspianを実行します)。次に、PiをNASとしてセットアップし始めます。
ビジネスの最初の順序は、ハードドライブをRaspberry Pi(または構成によっては接続されたUSBハブ、およびハードドライブがセルフパワーか外部パワーかどうか)に接続することです。ハードドライブが接続され、Piの電源がオンになったら、作業を開始します。
注意: 2台のハードドライブを使用しています。 1台のハードドライブのみを使用することにした場合は、2台目のハードドライブをマウント/変更または操作することを目的としたこのセクションのすべてのコマンドを無視してください。
ターミナル内ですべての作業を行います。そのため、RaspianのLXTerminalを使用してRaspberry Piで直接作業するか、Puttyなどのツールを使用してRaspberryPiにSSHで接続することができます。どちらの方法でも問題ありません。
コマンドラインに到達したら、最初に行う必要があるのは、NTFS形式のディスクのサポートをRasbianに追加することです。これを行うには、次のコマンドを入力します。
sudo apt-get install ntfs-3g
パッケージのダウンロード、解凍、インストールには1〜2分かかります。 NTFSパッケージがインストールされたら、接続されている外付けハードドライブのマウントされていないパーティションを探します。
sudo fdisk -l
少なくとも2つのディスクが表示されますが、データミラーリング用にセカンダリディスクを追加した場合は(現在のように)、次のように3つ表示されます。
最初のディスク
/ dev / mmcb1k0
Raspbianのインストールを格納するRaspberryPi内のSDカードです。それは完全にそのままにしておきます。
2番目のディスク、
/ dev / sda
私たちの最初の1TB外付けハードドライブです。 3番目のディスク、
/ dev / sdb
2番目の1TB外付けハードディスクです。これら2つのディスクで関心のある実際のパーティションは
/ sda1 /
そして
/ sdb1 /
、それぞれ。ハードドライブの名前をメモします。
ドライブをマウントする前に、ドライブをマウントするディレクトリを作成する必要があります。簡単にするために、ドライブごとにUSBHDD1およびUSBHDD2というディレクトリを作成します。まず、ドライブを作成する必要があります。コマンドラインで、次のコマンドを入力します。
sudo mkdir / media / USBHDD1sudo mkdir / media / USBHDD2
2つのディレクトリを作成したら、外付けドライブを各場所にマウントします。再度コマンドラインで次のコマンドを入力します。
sudo mount -t auto / dev / sda1 / media / USBHDD1sudo mount -t auto / dev / sdb1 / media / USBHDD2
この時点で、2台の外付けハードドライブがそれぞれUSBHDD1ディレクトリとUSBHDD2ディレクトリにマウントされています。両方のドライブに特定のディレクトリを追加して、共有フォルダを保持します(物事を整理し、ドライブでの作業を区分化するため)。次のコマンドを入力します。
sudo mkdir / media / USBHDD1 / sharesudo mkdir / media / USBHDD2 / share
次に、Sambaをインストールして、ネットワーク上の他の場所からストレージにアクセスできるようにします。コマンドラインで次のように入力します。
sudo apt-get install samba samba-common-bin
続行するように求められたら、Yと入力して入力します。すべてが開梱されてインストールされるので、座ってリラックスしてください。 Sambaパッケージのインストールが完了したら、少し構成を行います。他の作業を行う前に、Samba構成ファイルに戻す必要がある場合に備えて、Samba構成ファイルのバックアップコピーを作成しましょう。コマンドラインで、次のコマンドラインを入力します。
sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
これにより、ファイル名smb.conf.oldで構成ファイルのバックアップが作成され、元の構成ファイルと同じディレクトリに残されます。
バックアップを作成したら、Samba構成ファイルで基本的な編集を行います。コマンドラインで次のように入力します。
すど なの /えtc/さmば/smb。こんf
これにより、nanoテキストエディタが開き、簡単な変更を加えることができます。 nanoを初めて使用する場合は、チェックアウトすることを強くお勧めします Linuxコマンドラインテキストエディタ、Nanoのビギナーズガイド 。ターミナルウィンドウに次のようなものが表示されます。
Nanoは完全にキーボードで制御されます。矢印キーを使用して、編集する場所にカーソルを移動します。構成設定をクリックすると、メモしたり変更したりする価値のあるものがいくつか表示されます。
1つ目はワークグループ識別子で、デフォルトではワークグループ= WORKGROUPです。ホームワークグループに別の名前を使用している場合は、先に進んで矢印で変更します。それ以外の場合は、デフォルトのままにします。
次の目的は、Sambaストレージのユーザー認証をオンにすることです。そうしないと、ネットワークへの一般的なアクセス権を持つすべてのユーザー(ゲストWi-Fiユーザーなど)がすぐにアクセスできます。Samba構成ファイルを下にスクロールして、読むセクション:
Samba共有のユーザー名/パスワードの確認を有効にするには、security = user行から#記号を削除します(カーソルで強調表示してDeleteキーを押します)。
次に、構成ファイルにまったく新しいセクションを追加します。ファイルの一番下までスクロールして、次のテキストを入力します。
9000002
コメント=バックアップフォルダ
パス= / media / USBHDD1 / share
有効なユーザー= @ users
フォースグループ=ユーザー
マスクの作成= 0660
ディレクトリマスク= 0771
読み取り専用=いいえ
注意 :一番上の行の角かっこで囲んだものはすべて、ネットワーク共有に表示されるフォルダーの名前になります。 「バックアップ」以外の名前が必要な場合は、今がそれを編集するときです。
Ctrl + Xキーを押して終了し、変更を保持して既存の構成ファイルを上書きするかどうかを尋ねられたらYキーを押します。コマンドプロンプトに戻ったら、次のコマンドを入力してSambaデーモンを再起動します。
sudo /etc/init.d/samba restart
この時点で、PiのSamba共有にアクセスできるユーザーを追加する必要があります。ユーザー名backupsとパスワードbackups4everでアカウントを作成します。ユーザー名とパスワードは何でも作成できます。これを行うには、次のコマンドを入力します。
sudo useradd backups -m -G userssudopasswdバックアップ
確認のため、パスワードを2回入力するよう求められます。パスワードを確認したら、正当なSambaユーザーとして「バックアップ」を追加します。次のコマンドを入力します。
sudo smbpasswd-aバックアップ
プロンプトが表示されたら、バックアップアカウントのパスワードを入力します。ユーザーアカウントとパスワードを作成したら、認証されたユーザーを監視するようにすでに指示しているため、Sambaデーモンを再起動する必要はありません。これで、ネットワーク上の任意のSamba対応マシンにホップして、ネットワーク共有への接続をテストできます。
近くのWindowsマシンから、Windowsファイルエクスプローラーを開き、[ネットワーク]をクリックし、ホスト名RASPBERRYPIがWORKGROUPSワークグループにあることを確認し、共有フォルダー[バックアップ]をクリックしました。
プロンプトが表示されたら、前の手順で作成した資格情報を入力します(行を追っている場合、ログインはバックアップで、パスワードはbackups4everです)。
資格情報が承認されると、共有にはまだ何もないため、空のフォルダとして扱われます。すべてがスムーズに機能していることを再確認するために、接続をテストしたコンピューター(この場合はWindows 7デスクトップ)から簡単なファイルを作成しましょう。次のようなtxtファイルを作成します。
これまでずっと作業してきたコマンドラインから、Windowsデスクトップで作成したファイルが、作成した共有ディレクトリ内に正しく表示されるかどうかを確認しましょう。コマンドラインで次のコマンドを入力します。
cd / media / USBHDD1 / sharels
hello-is-it-me-you-are-looking-for.txtはディレクトリにあります。私たちの簡単な共有ディレクトリの実験は成功です!
チュートリアルのこのセクションを離れる前に、もう1つやることがあります。再起動時に外付けハードドライブが自動的にマウントされるようにPiを構成する必要があります。そのためには、nanoエディターを起動し、すばやく編集する必要があります。コマンドラインで次のように入力します。
sudo nano / etc / fstab
これにより、nanoでファイルシステムテーブルが開き、いくつかの簡単なエントリを追加できます。 nanoエディター内に、次の行を追加します。
/ dev / sda1 / media / USBHDD1 auto noatime 0 0/ dev / sda2 / media / USBHDD2 auto noatime 0 0
Ctrl + Xキーを押して終了し、Yキーを押して保存し、既存のファイルを上書きします。
冗長性のない単純なネットワーク共有に単一のハードドライブのみを使用している場合は、それだけです。構成プロセスはすべて完了し、超低電力NASを楽しむことができます。
シンプルなデータ冗長性のためのRaspberryPiNASの構成
これまでのところ、Raspberry Pi NASはネットワークに接続されており、ファイル転送は機能しますが、1つ明らかなことが欠けています。そのセカンダリハードドライブは構成されていますが、完全にアイドル状態です。
チュートリアルのこのセクションでは、2つのシンプルで強力なLinuxツール、rsyncとcronを使用して、プライマリドライブの/ share /フォルダーから/ shares /への夜間データミラーリングを実行するようにRaspberryPiNASを構成します。セカンダリドライブのフォルダ。これは、リアルタイムのRAIDのようなデータミラーリングにはなりませんが、セカンダリドライブへの毎日(または半毎日)のデータバックアップは、データセキュリティの別のレイヤーを追加するための優れた方法です。
まず、Rasbianインストールにrsyncを追加する必要があります。 rsyncを初めて使用する場合で、コマンドの概要を詳しく知りたい場合は、チェックアウトすることをお勧めします。 Linuxでrsyncを使用してデータをバックアップする方法 。
コマンドラインで、次のコマンドを入力します。
sudo apt-get install rsync
rsyncをインストールしたら、cronジョブを設定して、USBHDD1からUSBHDD2にファイルをコピーするプロセスを自動化します。コマンドラインで、次のコマンドを入力します。
cろんたb ーえ
このコマンドは、チュートリアルのこの時点ではなじみのある、nanoテキストエディタでcronスケジューリングテーブルを開きます。先に進み、ドキュメントの一番下までスクロールして、次の行を入力します。
0 5 * * * rsync -av --delete / media / USBHDD1 / share / media / USBHDD2 / share /
このコマンドは、毎日午前5:00(0 5の部分)、毎日(* * *、年、月、日のスポットのワイルドカード)に、rsyncで2つのディレクトリを比較し、HDD1からすべてをコピーするように指定します。 HDD2に移動し、バックアップディレクトリ内のプライマリディレクトリ内の何かと一致しなくなったものを削除します。削除するHDD1にムービーファイルがある場合は、次回の同期時にそのファイルもバックアップから削除する必要があります。
このコマンドの構成に関する重要な部分は、スケジュールした共有フォルダーに対する他のネットワークアクティビティを妨げない時間を選択することです。たとえば、毎朝午前5時にファイルをNASにコピーするある種の自動ソフトウェアのバックアップ先としてRaspberry Pi NASを使用している場合は、バックアップソフトウェアでバックアップ時間を調整する必要があります。 Piでのcronジョブの時間を調整しますが、リモートバックアップでデータをネットワーク共有にダンプすることと、RaspberryPiがローカルドライブ間でそのデータを同時に同期しようとすることはできません。
crontabエントリを入力したら、CTRL + Xをクリックしてファイルを終了して保存します。すぐにrsyncを実行してデータのミラーリングを高速化し、システムで最初のcronジョブを少し軽くしたい場合は、次のようにコマンドラインでcrontabに入力したのと同じrsyncコマンドを入力します。
rsync -av --delete / media / USBHDD1 / share / media / USBHDD2 / share /
それでおしまい!この時点で行う必要があるのは、翌日または2日以内にRaspberry Piにチェックインして、スケジュールされたジョブが期待どおりに実行されていることと、
/ USBHDD1 /株/
に登場しています
/ USBHDD2 /株/
。
これ以降、Raspberry Piを搭載したNASに入れたものはすべて、両方のハードドライブに毎日ミラーリングされます。
トピックを完全に終了する前に、新しいRaspberryPi搭載NASにパンチを追加するためにチェックアウトしたいハウツーオタクの追加記事をいくつか示します。
- UbuntuPCを使用してGmailアカウントをバックアップする方法 —手順はUbuntu向けですが、Raspbianのテーマを簡単に変更して、PiNASを自動電子メールバックアップマシンに変えることができます。
- Windows PCでどのファイルをバックアップする必要がありますか? -NASにバックアップする必要のあるファイルがわからない場合は、ここから始めるとよいでしょう。
- CrashPlanを使用してデータを無料でリモートバックアップする方法 — CrashPlan は、Windows、Mac、およびLinuxマシンで利用できる無料のバックアップアプリケーションであり、NASへの定期的なバックアップを簡単にスケジュールできます。
私たちに見てもらいたいRaspberryPiプロジェクトがありますか?大小を問わず、私たちはPiで遊んでみるのが大好きです。