web-dev-qa-db-ja.com

増分バックアップにWSL(Bash for Windows 10)でrsyncを使用する

私は長年Linuxの熱心なユーザーでしたが、Windowsに切り替えました。私がいつも見逃していたことの1つは、バックアップのために rsyncを使用して増分スナップショットを作成する です。次のようなコマンドを使用します。

rsync -aP --link-dest=PATHTO/$PREVIOUSBACKUP $SOURCE $CURRENTBACKUP

また、ハードリンクを使用して以前のバックアップを参照し、バックアップしているフォルダーの現在の状態の完全なディレクトリ構造を作成します。新しいファイルまたは変更されたファイルのみが実際にディスクに書き込まれます。他のすべてはハードリンクとして保存されます。これは非常に素晴らしく、私がWindowsで見つけたソリューションはどれもこれを行うことができませんでした。 (参考までに、私はWindowsファイル履歴を試し、Crashplanやその他の素晴らしい Beyond Compare を含む商用ソフトウェアにお金を払った。)

マイクロソフトがWSLを導入したので、Windowsのbashでこれを実行しようとしました。これは完全に機能しているように見えますが、次に示すように、Windowsはディスク上のサイズを誤って報告しています。

Size on disk reported incorrectly

説明するために、1つのスナップショットでsnapshot-170831__07h08m48s 1.40 GBの大きなビデオファイルを追加しましたが、コピーに数秒かかりました。次のスナップショットでは、snapshot-170831__07h09m09sファイルのコピーに時間がかかりませんでした。これは、ハードリンクが正しく作成され、ハードドライブのスペースが使用されていないことを示しています。

しかし、私のすべてのWindowsツール(Windows Explorer、Directory Opus、WinDirStat)は、2番目のスナップショットフォルダーがディスク上で1.40 GBを使用していると報告しています。

最初の質問はなぜこれらのハードリンクのディスク上のサイズをWindowsが誤って報告するのですか

しかし、より重要な質問は、これを実行する必要があるかどうかです:WindowsでLinuxツールを使用して、通常のファイルバックアップを行います。 WSLでは、Windowsツールを使用して.bashrcなどのファイルを変更すると、WSL内でファイルが読み取れなくなることをすでに確認しました。このようなツールへのバックアップを信頼するのは危険すぎるのか、それともファイルシステムが破損して重要なファイルが失われる危険があるのか​​。

5
Kit Johnson

Windowsでのハードリンクのサイズの計算

Windowsでハードリンクされたファイルのサイズを計算することは困難です。これを可能にする1つのツールは、 TreeSize Professional です(無料ではなく、ハードリンクの分析はデフォルトでオフになっています)。このツールを使用したところ、ハードリンクされたファイルのサイズが正しく推定されました。

詳細な説明については、 を参照してください。多くのハードリンクがあるNTFSディレクトリで使用されている実際のサイズを確認するにはどうすればよいですか?

ファイルは実際に機能していますか?

質問の他の部分については、WSL上のWindowsでLinuxツールを使用してファイルをバックアップすることは危険ですか?スナップショットディレクトリの1つを別の外部ハードドライブにコピーするだけで、これをテストすることにしました。ファイルのコピーや外部ドライブからの読み取りに問題はありませんでした。つまり、ハードリンクは期待どおりに動作しており、ファイルは機能しています。

長期的なデータの安定性

つまり、最後のポイントまで、定期的なバックアップの一部としてWSLの下でLinuxツールを使用すると、ファイルシステムの破損など、何らかの問題が発生する可能性がありますか? WSLが物事を大きく壊さないと信頼していますか?いつでも壊れることがあるので、これらのスナップショットディレクトリが定期的に別のドライブにコピーされるようにします。

5
Kit Johnson