rsync --ignore-timesパラメータはUbuntu 16.04では機能しません。

rsync --ignore-timesパラメータはUbuntu 16.04では機能しません。

これに基づいて包括的なバックアップスクリプトを実装したいrsyncので、要件に応じて正しいパラメータを決定したいと思います。デフォルトでは、変更されたファイルが変更時刻に関係なくソースからターゲットにコピーされることを望みます(つまり、ソースファイルがターゲットファイルより古いか最新であるかにかかわらず、内容が異なる場合はコピーする必要があります)。しかし、動作しません。

../src/test.txt
../dst/test.txt

上記のフォルダ構造です。次のコマンドを初めて実行すると、test.txtsrcからdstフォルダにコピーされます。

rsync -avh --ignore-times src/ dst/

その後、src / test.txtの内容を修正して上記のコマンドを再実行しましたが、今回も更新されたファイルをdstフォルダにコピーしました。

ところで、次のdstフォルダにあるtest.txtを修正して上記のコマンドを実行してみましたが、今回は動作せず、src/からdst/フォルダにファイルがコピーされませんでした。しかし、考えてみるとこの回答、パラメータを追加してから正しく機能します--ignore-times

これはUbuntuのバグですか、それとも私が何か間違っていますか?コンテンツが異なる場合(ターゲットファイルがより最新の場合でも)、ファイルが常にソースからターゲットにコピーされるようにするには、どのパラメータを追加する必要がありますか?

編集する

私は--checksumチェックサムに基づいてコピーし、タイムスタンプを完全に無視するパラメータを追加してみました(マンページに記載されています)。しかし、それでも動作しません。

ベストアンサー1

何らかの理由で--archiveorパターンがorパラメータaで機能しないようです。ただし、単純な再帰コピーパターン(または)です。だから私の場合、私は次のように完璧に仕事をしました。--ignore-times--checksum--recursiver

rsync -vcr src/ dst/

おすすめ記事