Ubuntu から QNAP NAS にバックアップを取る
まえがき
バックアップ用に QNAP NAS TS-431Kを調達しました。
QNAP(キューナップ) TS-431K 専用OS QTS搭載 クアッドコア1.7GHz CPU 1GBメモリ 4ベイ ホーム&SOHO向け スナップショット機能対応 NAS 2年保証
- 発売日: 2020/05/29
- メディア: Personal Computers
ここに、仕事用の様々な PC からバックアップを取ることにします。
Windows からは、QNAP 純正ユーティリティの NetBak Replicator が使えるので、それを使いました。
ただこのツールは Windows 専用。
Ubuntu 用には QSync というツールがありますが、これは Google Drive みたいな感じで、QNAP の特定ディレクトリをマウントするユーティリティのようです。
なので、これを使ってマウントしたうえで、rsync でバックアップを取ることにしました。
QNAP に Qsync Central を設定する
基本的には以下のドキュメントに書いてあるとおりです。
まず最初に QNAP の GUI から App Center を開きます。
そこで Qsync Central を検索してインストールします。
次にメインメニュー -> アプリケーションから Qsync Central を開きます。
共有フォルダーを開き、バックアップ先にしたいディレクトリに権限付与を設定します。
これで QNAP 側の設定は OK です。
Ubuntu に Qsync Client を設定する
Ubuntu で QNAP ユーティリティのページにアクセスし、Qsync の Ubuntu 用パッケージをダウンロードします。
ターミナルを開き、ダウンロード先のディレクトリに移動します。
そこで以下のコマンドを叩きます。
$ sudo dpkg -i <download_file.deb>
インストールすると再起動せよと出るので、指示通りに再起動します。
すると起動後に Qsync Client が自動的に起動されます。
そこで QNAP 側のアドレスや ID を設定し、同期用のディレクトリを指定すれば完了です。
Ubuntu で rsync によるバックアップを行う
まずは rsync をインストールします。
$ sudo apt update $ sudo apt -y install rsync
次に rsync コマンドを発行します。
$ sudo rsync -auv --delete --progress src_path dest_path
src_path はバックアップしたいディレクトリ、dest_path は、さきほど設定した同期用のディレクトリです。
これで、バックアップが行われるようになります。
定期的に実行されるようにする
cron を使えば、定期的にバックアップを実行できます。
私の場合はいくつかのディレクトリをバックアップしたいので、簡単なシェルスクリプトを作って実行させるようにしました。
こんな感じです。
#!/bin/bash echo 'password' | sudo -S rsync -auv --delete --progress src_path1 dest_path1 echo 'password' | sudo -S rsync -auv --delete --progress src_path1 dest_path1
password は sudo 用のパスワードです。
これをすることで sudo が自動的に実行されるようにしました。
最後に cron への設定です。
$ sudo crontab -e
0 3 * * * bash /home/user/backup.sh
これで毎日3時に、バックアップ用のスクリプトが実行されるようになりました。