2016年12月17日土曜日

Raspberry PiのファイルをNASにバックアップする

Raspberry Pi Model B+を使っているが、SDカードの不具合などでファイルが消えてしまうことはありえる。そういったことに備えて、必要なファイルをcronでNASにバックアップするようにした。そのときの手順をまとめておく。行ったことは以下の3つ。

  • NAS共有フォルダのマウント
  • ファイルバックアップスクリプト作成
  • cronジョブ追加

NAS共有フォルダのマウント


まずは準備として、NASでRaspbery Piからアクセスする共有フォルダ、ユーザーを作成し、アクセス権を追加しておく。ここでは以下のNAS情報をもとに設定を行う。

NASのユーザー: nasuser
NASのパスワード: naspassword
NASのIPアドレス:192.168.1.100
NASの共有フォルダ: backup

今回使用するNASの共有フォルダはSMBを使用しているので、Raspberry PiからNASの共有フォルダにアクセスするにはcifs-utilsが必要。Raspberry Piで確認すると、cifs-utilsはインストール済み。


次に、Paspberry Piにマウント用のディレクトリを作成する。


NASの共有フォルダをマウントするコマンドは以下の通り。


上記コマンドでマウントできるが、Raspberry Piが起動したときに自動マウントするにはfstabにマウントの設定を追加する。


以下のような設定をfstabに追記する。


Raspberry Piを再起動後、自動マウントされているか確認。



ファイルバックアップスクリプトの作成


今回は、単純にcpコマンドでマウントしたNASの共有フォルダに必要なファイルをコピーする。

試しにディレクトリをまるごとコピーしてみる。rootでマウントしているので、root権限がないとコピーできない。


コピーできることが確認できたら、バックアップ用のスクリプトを作成する。


スクリプトの内容は、cpコマンドに、ログ出力を加えただけ。ログにはコピーしたファイルの一覧が出力される。


スクリプトに実行権限を追加する。


スクリプトを実行して、ファイルが共有フォルダにコピーされることを確認。


更に、ログファイルにコピーしたファイルが出力されていることを確認。



cronジョブ追加


作成したスクリプトをcronで1日1回実行するように設定する。

cron設定ファイルを開く。


以下の設定を追記する。以下では毎日23時30分にbackup.shが実行される。


設定変更を反映させるためにcronを再起動する。


0 件のコメント:

コメントを投稿