rsyncとバックアップとタイムゾーンの変更

rsyncとバックアップとタイムゾーンの変更

私はrsyncを使って次のようにカメラの写真をバックアップします。

 rsync -vzrtl --progress --stats --timeout=0 host destination

最初のバックアップを実行したときは別のタイムゾーンにあり、別のタイムゾーンに移動してノートブックでそれを変更しました(私はubuntu 10.04.4を使用しています)。今日の写真をバックアップし、タイムスタンプが異なることがわかりました(「ls -lt」と見ることができるタイムスタンプを意味します)。だからrsyncはディレクトリ全体をコピーしました。転送するファイルのリスト)。これでファイルは実際には同じですので、これは愚かなことです。だから私は以前のタイムゾーンに戻って変更しましたが、実際にファイルのタイムスタンプが私のカメラと同じように変更されました。ちょっと変だと思っていました。

rsyncを再実行しましたが、ファイルはまだ異なります。 @今、ファイルを再コピーしたくありません。これは愚かなことです。クリーンなソリューションを提案できますか?今後このようなことが起こらないようにするにはどうすればよいですか?以前のタイムゾーンに変更しても、ファイルがまだ異なるのはなぜですか?


statを使用して、ファイルのアクセスと変更時間が異なることがわかりました。たとえば、

ホストから

   File: `DSC00003.JPG'
   Size: 3068392    Blocks: 6016       IO Block: 32768  regular file
 Device: 821h/2081d Inode: 2109        Links: 1
 Access: (0755/-rwxr-xr-x)  Uid: ( 1000/simona)   Gid: ( 1000/simona)
 Access: 2013-03-26 00:00:00.000000000 +0000 
 Modify: 2007-12-25 22:48:20.000000000 +0000
 Change: 2007-12-25 22:48:20.000000000 +0000

そして目的地に

   File: `DSC00003.JPG'
   Size: 3068392    Blocks: 6008       IO Block: 4096   regular file
 Device: 802h/2050d Inode: 245762      Links: 1
 Access: (0755/-rwxr-xr-x)  Uid: ( 1000/simona)   Gid: ( 1000/simona)
 Access: 2013-03-26 10:24:49.000000000 +0000
 Modify: 2007-12-25 22:48:20.000000000 +0000
 Change: 2013-02-09 00:11:09.000000000 +0000

rsyncがターゲットで最近変更された画像を上書きするのを防ぐ方法はありますか?

答え1

この質問に答えるために、私は次の仮定をします。

マウントされたSDカードからバックアップスペースに転送するためにローカルでrsyncを使用しています。

--modify-window=1MMCはFATファイルシステムを使用してフォーマットされているため、FATファイルシステムは2秒の解像度でタイムスタンプを保存するため、MMCを設定することは常に便利です。

man rsync--size-onlyファイルフラグを無視するオプションを提供しますlast-modified。したがって、変更されたサイズのファイル(編集済みファイルなど)のみが同期されます。

別のオプションは、オプションを--modify-window2つの時間差の間の秒単位の時間差に設定することです。たとえば、modify-window=36601時間の差がある場合は2時間を使用します。

UTCの設定に問題がある可能性があります。

date --utc Xour Softwareclock is generate byと入力して、ハードウェアクロックが正しく設定されていることを確認できますdate

この値は、現地時間帯とグリニッジ標準時の差と同じでなければなりません。

タイムゾーン(ソフトウェアクロック)を変更しても、すべてのタイムスタンプが正しく設定されるように、ハードウェアクロックは常にUTCに設定する必要があります。

UTC時間が間違っている場合は、BIOS設定が正しいことを確認してください。間違った場合は修正してください。

設定されていることを確認できます/etc/default/rcS。次の行にする必要があります(Ubuntu 12.04)。

#assume that the BIOS clock is set to UTC time (recommended)
UTC=yes

関連情報