Rsyncのどのオプション/方法/組み合わせを使用して、次のことを確実に実行できますか?
特権/ACLの「制限されたセット」があっても安定した転送が「動作」します。 Cygwin Windows / NTFSと* Nix / Permsなどの灰色の領域間の競合なしに安定して動作します。
または上記の操作を実行できない場合は、完全に更新を実行するか、またはRSyncが許可/ ACLの問題を完全に回避するようにしますか?
過去10年間、私はこの問題を解決する方法について約50のタブとウィンドウを読んできました。
これを処理する方法は、どこで、誰に問い合わせるのか、どのバージョンのRsyncが議論されているか(時間と変更/代替コードベース)によって異なります。
- 同期Windowsでの変更点
- (一部 *Nix および Windows:シビン多様性、同期同期、デルタコピー/同期/Synaman、GR同期、再同期バックアップ、rsync.exeパッケージ、Rclone、AcroSync、YInterSync)
選択できるオプション:
- https://georgik.rocks/how-to-fix-in 正しい-cygwin-permission-inwindows-7/
- https://duncanbowring.wordpress.com/2019/01/30/cygwin-rsync-windows-permissions/
- https://blag.nullteilrfrei.de/2014/04/07/keep-cygwin-applications-from-setting-ntfs-security-descriptors/
- もっと..
この特定のシナリオに対してRSyncを実行する方法に対する回答は、このQnAから得られました。
しかし、RSyncでCygwin、NTFS、権限、ACLなどに関するすべての「知識」を収集した後は、どのような変更が進行方法に影響するのかわかりません。
Windows権限を制御するには、単純なchmodフラグが必要であることがわかりました。
—chmod=ugo=rwX
再同期オプション(一部..)
-p, --perms preserve permissions
-E, --executability preserve the file's executability
--chmod=CHMOD affect file and/or directory permissions
-A, --acls preserve ACLs (implies --perms)
-o, --owner preserve owner (super-user only)
-g, --group preserve group
--devices preserve device files (super-user only)
--specials preserve special files
-D same as --devices --specials
/etc/fstab(追加ノック)
# /etc/fstab
#
# This file is read once by the first process in a Cygwin process tree.
# To pick up changes, restart all Cygwin processes. For a description
# see https://cygwin.com/cygwin-ug-net/using.html#mount-table
# This is default anyway:
# none /cygdrive cygdrive binary,posix=0,user 0 0
none /cygdrive cygdrive binary,posix=0,user,noacl 0 0
答え1
私は過去数日間この問題を調査してきましたが、多くの参考資料を読み、実際にさまざまなフラグの組み合わせを試した後にrsync
Windows ACLを含めないと思います。
rsync -aX src/ dst/
rsync: extended attributes are not supported on this client
私が見つけたこの提案ローカル NTFS ドライブを再マウントする Cygwin ビューノックしかし、私に役立つことはできません。別の提案使っても--chmod=ugo=rwX
全く役に立ちません。
そうだROBOCOPY /SEC
この特定のユースケースでは、代わりに同様のものを使用したいと思いますrsync
。
答え2
これもしばらく私をいじめた。私はrsync-ntaclsパッチを試してみるのに十分勇敢な人を探しています。
このパッチを使用すると、Windowsでrsyncを有効にしてrsyncの増分転送を提供し、同時にNTFSセキュリティ属性を転送できます。 SSH経由でローカルまたはリモートに送信します。 RoboCopy の変更はもう必要ありません。 ;)