ページ

2014年9月18日木曜日

Raspberry Pi で NFS サーバーを構築する.

Raspberry Pi はストレージとしてSDカードを利用するため,あまり大容量のファイルを保存するのには向かない.そこで,USB接続で外付けHDDを接続して/homeディレクトリにマウントし,さらにそれをNFSとして公開する.

■サーバー側の設定


外付けHDDを/homeディレクトリに自動でマウントするために,/etc/fstab を管理者権限で開き,以下の一文を追加する.
/dev/sda1 /home ext4 defaults 1 2

(外付けHDD は予め ext4 形式でフォーマットし,元の /home ディレクトリの中身を rsync コマンド等で複製しておく.)

作業後はサーバーを一度再起動し,dfコマンドで設定が反映されたか確認する.
pi@raspberry:$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       7.2G  2.8G  4.2G  40% /
devtmpfs        214M     0  214M   0% /dev
tmpfs            44M  268K   44M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs            87M     0   87M   0% /run/shm
/dev/mmcblk0p1   56M   20M   37M  36% /boot
/dev/sda1       2.7T  578G  2.0T  23% /home

次にこれを NFSサーバーとして公開する.まずは必要なパッケージをインストール.
pi@raspberry:$ sudo apt-get install -y nfs-common nfs-kernel-server

インストールが完了したら,/etc/exports を管理者権限で開き,以下の一文を追加.
/home 192.168.100.0/24(rw,sync,no_subtree_check)

/etc/exports の記述形式は以下の通り.
公開するディレクトリ 公開先(オプション)

今回は /home ディレクトリを 192.168.100.0〜255(ネットワーク全体)に読み書き可能なネットワークストレージとして公開した.

最後に起動時に自動でサーバーが立ち上がるようにする.
pi@raspberry:# update-rc.d rpcbind enable
pi@raspberry:# update-rc.d nfs-common enable
pi@raspberry:# update-rc.d nfs-kernel-server enable

【2016.11.4追記】
jessieからはsystemdが標準になったので以下のコマンドで自動起動化する.
pi@raspberry:# systemctl enable rpcbind.service
pi@raspberry:# systemctl enable nfs-common.service
pi@raspberry:# systemctl enable nfs-kernel-server.service

【2019.7.24追記】
いつから変更になっていたのか正確には不明だが,起動スべきサービス名が変更になっていた.(しかもインストール直後からenableのため,実際にはコマンドを叩く必要は無い)
pi@raspberry:# systemctl enable nfs-server.service

最後に再起動してサーバー側の設定は終了.

■クライアント側の設定


クライアント側の設定は非常に簡単で,ただ /etc/fstab を編集するのみ.まずは必要なパッケージのインストール.
pi@raspberry:$ sudo apt-get install -y nfs-client

/etc/fstab を管理者権限で開き,以下の一文を追加する.192.168.100.5 はサーバーのアドレス.
192.168.100.5:/home /home nfs defaults 0 0

一度再起動し,df コマンドなどで設定が反映されたか確認する.
pi@raspberry:$ df -h
Filesystem           Size  Used Avail Use% Mounted on
/dev/root             15G  2.8G   11G  21% /
devtmpfs             459M     0  459M   0% /dev
tmpfs                 93M  288K   93M   1% /run
tmpfs                5.0M     0  5.0M   0% /run/lock
tmpfs                186M     0  186M   0% /run/shm
/dev/mmcblk0p1        56M   20M   37M  36% /boot
192.168.100.5:/home  2.7T  578G  2.0T  23% /home

0 件のコメント:

コメントを投稿