Ubuntu ファイル システム内にというディレクトリがありmy_projects_linux
、そこには長年にわたる私の作業がすべて含まれています。このディレクトリには、ファイル、サブディレクトリなどが含まれています。
バックアップの目的で、このディレクトリとそのすべての内容を外付けハードドライブにコピーすることがあります。
したがって、外付けドライブの内容は次のようになります。
/mounted_drive/my_projects_linux
/mounted_drive/my_projects_windows # the same idea to backup Windows work
したがって、私が探しているのは次のようなコマンドです。
次のように機能します
cp /home/my_projects_linux /mounted_drive/my_projects_linux
外部ディスク内の古いファイル、サブディレクトリ、サブディレクトリ内のファイルなどを、PC の新しいコンテンツに置き換える必要があります。
早くして変更されたファイルまたは新しく作成されたファイルのみをコピーする必要があります。 のサイズが
my_projects_linux
50 GB を超えることを考えると、すべてをコピーするには 1 時間以上かかり、これは遅すぎます。実際には、最後のバックアップ以降に数 MB しか変更されていないことが多いため、理論的にはコピーははるかに高速に作成できます。
どうやってするか?
フラグ付きの cp が-u
私のニーズに合うかもしれないと Google で検索しました。これは機能しますか (たとえば、サブディレクトリのサブディレクトリを正しく処理しますか)?
また、ファイル システムを外部ディスクに保存することは、バックアップを行う適切な方法でしょうか、それとももっと洗練された方法があるでしょうか。たとえば、クラウドを使用するなどです。洗練された方法はシンプルである必要があることに注意してください。そうでないと、1 つのシェル コマンドを実行する手軽さに勝るものはありません。
答え1
何のために設計されたかを説明していますねrsync
。man rsync
Rsync finds files that need to be transferred using a "quick
check" algorithm (by default) that looks for files that have
changed in size or in last-modified time. Any changes in the
other preserved attributes (as requested by options) are made on
the destination file directly when the quick check indicates
that the file’s data does not need to be updated.
ネットワーキングに関するくだらない話もたくさんありますが、ローカルでも問題ありません。
基本的に必要なものは以下のとおりです。
rsync -rtv /home/my_projects_linux /mounted_drive/my_projects_linux
たくさんのオプションがありますが、-rtv
同期されますr再帰的に、timecodesは同じですが、ヴそれが何をしているのかについて詳しく説明します。
答え2
2 番目の質問にお答えすると、バックアップするためのより高度な方法は ですrdiff-backup
。
rdiff-backup は、ネットワーク経由で、あるディレクトリを別のディレクトリにバックアップします。ターゲット ディレクトリはソース ディレクトリのコピーになりますが、追加の逆差分はターゲット ディレクトリの特別なサブディレクトリに保存されるため、以前に失われたファイルを回復できます。ミラーと増分バックアップの最高の機能を組み合わせるのが目的です。rdiff-backup は、サブディレクトリ、ハード リンク、dev ファイル、権限、uid/gid 所有権、変更時刻、拡張属性、acl、リソース フォークも保存します。
クラウドベースにしたいなら、私は有料サブスクリプションのCrashPlanを使用しています。一度もない手動バックアップについてはもう考える必要はありません。
答え3
この質問には既に回答があることは承知しています。しかし、Windowsも使用しているのがわかるので、クロスプラットフォームのGUIソリューションを追加したいと思いました。私も同じ目的で使用していますフリーファイルシンク. これも FLOSS です。
設定は非常に直感的で、さまざまな同期ジョブを保存できます。
PPA もありますが、現時点では 14.04 の最新バージョンは含まれていません。PPA 経由でインストールするには:
sudo apt-add-repository ppa:freefilesync/ffs
sudo apt-get update