Raspberry Pi 2 Model Bでファイルサーバを構築してみた

公開日: : 最終更新日:2016/03/27 Raspberry Piの技術メモ ,

本記事は、Raspberry Pi 3に対応しています。

Raspbian jessie でSambaを使ってファイルサーバ(NAS)を構築しました。

ファイルサーバのデータ格納領域は以下の記事で書いたSanDisk Ultra Fit 128GBを使います。

Raspberry Pi 2 Model B用にUSBメモリ(SanDisk Ultra Fit 128GB)を購入してみた

構築方法は以下のとおり

スポンサーリンク

必要パッケージのインストール

ファイルサーバ(samba)構築に必要なパッケージをインストールします。

サービスの管理に便利なchkconfigコマンドもインストールしておきます。

sambaの設定

sambaの設定ファイルに設定を記載します。

記載する内容の例は以下のとおりです。

グローバル設定

ここでは以下の2つの設定をする例を紹介します。

  1. 日本語対応設定
  2. 192.168.0.x のセグメントからしか接続を許可しない設定

共有フォルダ設定

ここでは以下の2つの設定をする例を紹介します。

  1. /usbmem というディレクトリを、shareという共有フォルダ名で公開
  2. 共有フォルダには誰でも書き込みOK

以上の設定で、192.168.0.xのセグメントからの接続なら誰でも書き込みOKという設定が完了です。

sambaサービスの起動

起動

以下のコマンドで起動します。

稼動状態確認

参考

以下のコマンドでは起動できないようです。上記のようにsamba-ad-dcというサービスを起動する必要があります。

自動起動設定

OS起動時にsambaが自動起動するように設定します。

別デバイスからの動作確認

Windowsから接続してみましょう

Raspberry Pi (Raspbian jessie)のIPアドレスが192.168.0.20の場合、以下にアクセスしてみます。

shareという共有フォルダが見えれば成功です。
samba_01

shareの中をさらに開き、何かファイルを書き込んでみて、書き込めたら成功です。
samba_write_test

書き込めればOK。書き込めない場合は、ディレクトリのアクセス権をきちんと設定する必要があります。書き込めない場合の手順は以下のとおりです。

書き込めない場合

公開するディレクトリの権限をnobody:nogroupにする必要があります。

公開ディレクトリがUSBメモリ等のマウントディレクトリではない場合

Raspbian上に作成した、/share という公開ディレクトリの権限を変える場合を例にします。

sambaサービスを再起動します。

これで書き込めるようになったハズです。

USBメモリ等をマウントして公開している場合

この場合は少しテクニックがいります。

まずsambaサービスが公開ディレクトリを掴んでいるため、sambaサービスを停止します。

/usbmemというディレクトリにUSBメモリをマウントしている場合を例にします。

少し解説ですが、マウントする前のディレクトリの権限が以下のようになっていても、マウントするとroot:rootの権限になるため、マウントオプションを付けてマウントする必要があります。

試しに、nobody:nogroupの権限のディレクトリに、USBメモリ(dev/sda1)をマウントしてみると、

root:rootの権限になりました。

この状態で、さらに、マウントされている状態で権限を変えようとすると、以下のように拒否されます。

と、このようにうまくいきません。

実は、マウントした状態の権限を変更するには、マウントオプションに権限を追加する必要があります。(解説終わりです。長くなってすみません)

 

正しいやり方はここからです。まず、nobodyのuidとnogroupのgidを確認します。

uidは65534でした。

gidは65534でした。

この結果をもとに、/etc/fstabにuidとgidを固定するマウントオプションを追記します。

追記が終わったら、rebootコマンドで再起動し、再度ディレクトリのアクセス権を確認します。(再起動で、先ほど停止したsambaサービスも起動してきます)

以下のようになっていれば成功です。

後は、再度Windows等から書き込みテストをしましょう。

書き込めるハズです。
samba_write_test

なお、私がRaspberry Piのファイルサーバ領域として使っているUSBメモリはこちらです。
小さくて大容量でイイ感じです!
Raspberry Pi 2 Model B用にUSBメモリ(SanDisk Ultra Fit 128GB)を購入してみた

 

AD

この記事が興味深かった場合は、SNSボタンでシェアいただけると嬉しいです。

関連記事

Raspbian Jessieの基本セキュリティ設定を実施する

Raspbian jessieの基本セキュリティ設定です。 デフォルト設定のままでは簡単に不正ログ

記事を読む

SanDisk Ultra Fit 128GB 4個でRAID5を構築してみた

先日、Raspberry Pi 2 Model B 用に、SanDisk Ultra Fit 128

記事を読む

Raspberry Pi 2 Model Bでミュージックサーバを構築してみた

Raspberry Pi 2 Model B を使って、高音質で低消費電力な静音ミュージックサーバを

記事を読む

Raspbian jessie で”rsyslogd-2007: action ‘action 17’ suspended, next”が出力される場合の対策

Raspbian jessie で /var/log/messages を確認してみると沢山出力され

記事を読む

Raspberry Pi 2 Model B で L2TP/IPSec VPNサーバを構築してみた(その3)

本記事は、Raspberry Pi 3に対応しています。 さて、 Raspberry Pi

記事を読む

Message

メールアドレスが公開されることはありません。

AD

PAGE TOP ↑