前回は、仮想ドライブへのマウント・アンマウントの方法とデータの暗号化について解説しました。
今回は、「 3. バックアップの自動化 」を解説します。
1. 前提ソフトウェアのインストール
1.1 Dropboxのインストール
1.2 VeraCryptのインストール
1.3 VeraCryptによる仮想暗号化ディスクの作成
2. バックアップデータの暗号化
2.1 仮想ドライブへのマウント
2.2 データの暗号化とバックアップ
2.3 仮想ドライブへのアンマウント
3. バックアップの自動化 ← ★ここからです
3.1 Windowsスクリプトによるバッチファイルの作成
3.2 タスクスケジューラによるタスクの作成
それでは、解説に入ります。
3. バックアップの自動化
前回「 2. バックアップデータの暗号化 」では、「 仮想ドライブのマウント 」→「 データの暗号化とバックアップ 」→「 仮想ドライブのアンマウント 」をすべて手作業で行いました。
今回は、これら一連の作業をすべて自動化します。
3.1 Windowsスクリプトによるバッチファイルの作成
VeraCryptには、コマンドラインから実行するためのインタフェースが提供されており、引数( パラメタ )の指定によって起動や停止を行えます。
以降で、VeraCryptをコマンドラインから実行するための「 バッチファイル( Windowsスクリプト )の作成方法 」を解説します。
バッチファイルの作成
まずは、バッチファイルを格納するためのフォルダを作成します。
作成する場所はどこでも構いませんが、デスクトップは避けた方がよいでしょう。
ここでは、Cドライブの直下へ「 C:\bachfile 」を作成します。
次に、C:\bachfileにバッチファイルの雛形を作成します。
右クリックし、「 新規作成 」 > 「 テキストドキュメント 」を選択します。
「 backup.txt 」と名前を付けます。
次に「 backup.txt 」を「 backup.bat 」にリネームします。
下記の警告ダイアログが表示される場合は、「 はい 」を押します。
以下の画面の通り、バッチファイル( backup.bat )が作成できたら、ドラッグ&ドロップで「 メモ帳 」へ展開します。
次は、バッチファイル( backup.bat )に記述する、ソースコード( Windowsスクリプト )を作成します。
ソースコードでは、次の処理を実行します。
① VeraCryptの起動
・VeraCryptへパラメタ( パスワードとキーファイル )の引き渡しをします。
・backupdata.hcへマウントします。
② バックアップデータのコピー
・xcopyコマンドを実行します。
・「 c:\backupfile 」のデータを「 i:ドライブ 」へ丸ごとコピーします。
③ VeraCryptの停止
・backupdata.hcからアンマウントします。
今回は以下のソースコードを使用しますので、、すべて( 1~9行目まで )コピーし、backup.batへ貼り付けます。
1 2 3 4 5 6 7 8 9 |
@echo off "c:\Program Files\VeraCrypt\VeraCrypt.exe" /v "c:\Users\ユーザ名\Dropbox\backupdata.hc" /l i /p "パスワード" /k "c:\Users\ユーザ名\Desktop\key.png" /b /q xcopy "c:\backupfile" "i:" /D /S /E /H /C /Y /R "c:\Program Files\VeraCrypt\VeraCrypt.exe" /d i /q /b exit \b 0 |
次に、ソースコード内の「 ユーザ名( 2箇所 ) 」と「 パスワード( 1箇所 ) 」を書き換えます。
「 ユーザ名 」は、現在PCで使用しているログインユーザ名に。「 パスワード 」は、前回作成した「 C:\Users\ユーザ名\Dropbox\backupdata.hc 」へマウントする時のパスワードに書き換えます。
書き換えが終わったら、「 backup.bat 」を「 上書き保存 」します。
バッチファイルの動作確認
次に、バッチファイル( backup.bat )の動作確認を行います。
事前に、以下のデータが存在していることを確認します。
仮想暗号化ディスク | c:\Users\ユーザ名\Dropbox\backupdata.hc |
キーファイル | c:\Users\ユーザ名\Desktop\key.png |
バッチファイル | c:\bachfile\backup.bat |
バックアップ元データ | c:\backupfile\テスト.txt ※ |
※ 今回は「 テスト.txt 」をテストデータとして作成しておきます。
「 backup.bat 」をクリックして実行します。
しばらくの間、以下のようなダイアログとコマンドプロンプト画面が表示されます。
「 VeraCryptの起動 」 → 「 バックアップデータのコピー 」 → 「 VeraCryptの終了 」の処理が行われた後、ダイアログとコマンドプロンプト画面は自動で閉じられます。
次に、バックアップデータのコピーが正しく行われているか確認します。
仮想暗号化ディスク( c:\Users\ユーザ名\Dropbox\backupdata.hc )をクリックし、マウントします。
マウントが完了したら、「 スタート 」 > 「 すべてのプログラム 」 > 「 アクセサリ 」から「 エクスプローラー 」を起動します。
「 I:ドライブ 」に「 c:\backupfile\テスト.txt 」がコピーされていれば自動バックアップは成功です。
3.2 タスクスケジューラによるタスクの作成
次は、タスクスケジューラ( Windows標準機能 )で、バックアップを実行するためのタスクを作成します。
このタスクからバッチファイルを実行することで、定期的にバックアップを行えるようになります。
タスクの作成
「 スタート 」 > 「 すべてのプログラム 」 > 「 アクセサリ 」 > 「 システムツール 」 > 「 タスクスケジューラ 」を起動します。
次に、メニューの「 操作 」 > 「 タスクの作成 」選択します。
「 名前 」には、タスク名を入力します。
どんな名前でも構いませんので、ここでは「 データバックアップ 」とします。
「 構成 」の欄は、現在ご使用されているPCと同じOSを選択します。
※選択できるOSには、WindowsXP、WindowsVista、Windows7、WindowsServerなどがありますが、Windows8やWindows10をご使用の方はWindows7を選択しておけば問題ないでしょう。
設定が完了したら「 OK 」ボタンを押します。
「 トリガー 」タブに移動し、「 新規 」ボタンを押します。
「 設定 」の選択では、1回、毎日、毎週、毎月が選択でき、ここでタスクを実行する周期を決めることができます。
今回は、「 1回 」を選択しておきます。
「 開始 」の入力では、実行するタスクの開始日と開始時間を設定します。
設定が完了したら「 OK 」ボタンを押します。
「 操作 」タブに移動し、「 新規 」ボタンを押します。
プログラム/スクリプトの入力欄には、先ほど作成した「 c:\bachfile\backup.bat 」を指定します。
ファイルの設定ができたら「 OK 」ボタンを押します。
タスクスケジューラの管理画面に戻り、「 データバックアップ 」のステータスが追加されていればタスクの作成は完了です。
これでタスクスケジューラは、指定した日時になるとタスクを開始し、バッチファイルが実行されます。
今回のタスクは1回のみの設定でしたが、毎日00:00にバックアップを取ったり、週末だけバックアップを取ったりするようなことも可能です。
PCの条件や環境に合わせて、他のバックアップの周期も試してみてください。
まとめ
「 VeraCryptとDropboxを活用した暗号化&バックアップ 」を3回に渡って解説してきました。
1回目(インストール編)では、DropboxとVeraCryptをインストールし、仮想暗号化ディスクを作成しました。
2回目(暗号化編)では、仮想暗号化ディスクへのマウント・アンマウントし、バックアップデータを暗号化しました。
そして、今回の3回目(自動化編)では、バッチファイルを作成し、タスクスケジューラで自動化しました。
これらの機能を利用することで、日々のバックアップを容易に行えるようになります。
また、Windowsスクリプトを介していますので、ログの出力、WindowsServer連携、OSのシャットダウンなど、拡張性の高いバックアップシステムを組むことも可能です。
今回、解説してきた方法は、お金を掛けずに、かつ安全に利用することができますので、ぜひ活用してみてください。
お疲れ様でした。