rsyncはアクセス時間をどのように維持しますか?

rsyncはアクセス時間をどのように維持しますか?

私はFedora 33(GNOME)でrsync-3.2.3を使用しています。

atimeしかし、ファイルとフォルダのアクセス時間()をどのように保存できますか?

mtimeこのコマンドを使用すると、修正時間()のみを保存できます。

rsync -t

ベストアンサー1

保留atime(接続時間)をリクエストできます。源泉この--noatimeフラグを使用しますがrelatime(最新のデフォルト)としてマウントされたファイルシステムではnoatime必ずしも必要ありません。

rsync -av --noatime src/ dstHost:dst/

atimeターゲットシステムにそのままにするオプションがないことがわかりますrsync。ターゲットシステムにアクセスできる場合は、コピーしたツリーをナビゲートできます。これはGNU / Linuxタイプのシステムで機能します。

( cd src/ && find -type f -print0 ) |
    ssh dstHost 'cd dst && while IFS= read -r -d "" f; do  touch -a -d "@$(stat -c %Y "$f")" "$f"; done'

または、2つのローカルファイルシステム間のコピーを処理する場合

( cd src/ && find -type f -print0 ) |
    ( cd dst && while IFS= read -r -d "" f; do  touch -a -d "@$(stat -c %Y "$f")" "$f"; done )

デフォルトでは、両方のスニペットは同じことを行います。つまり、ソース内の各ファイルについて、ターゲットでそのファイルを見つけてatime一致するように更新しますmtime

おすすめ記事