使用Cygwin rsync将ACL处理留给Windows


10

我正在运行rsync命令,将文件从服务器复制到Windows计算机,例如:

rsync -rt --partial-dir=".rsync" --del rsync://server/a/ a/

每当此命令创建目录时,它都会创建带有疯狂ACL /权限的目录。对我而言,它倾向于创建十个<not inherited>条目,其中一个拒绝运行rsync命令的用户,其他条目也没有太大意义。这甚至可以使用--chmod=ugo=rwX选项执行,该选项建议使用类似的线程

我该怎么做才能阻止rsync尝试设置权限(而仅在Windows中将权限留给ACL继承)?

Answers:


12

使用手册中noacl选项挂载有问题的目录。

(并且,如果您想知道为什么Unix权限到Windows ACL的映射并不简单,请参见此处。)


noacl确实可以防止疯狂的权限,但是由于它使用“只读”位伪造了权限,因此我得到了一堆奇怪的部分只读目录。这是一个改进。
palswim 2011年

1
实际上,似乎在任何目录上(无论是否rsync创建)都出现“部分只读”症状。Windows似乎只是在说目录没有readonly属性
palswim 2011年

2
ak2的答案非常有用,但是花了很多时间来查找如何noacl在/ etc / fstab中正确设置。我发现此链接很有帮助。使用noacl修复我的rsync问题-谢谢。
拾音

1
@miking已经通过该链接和noacl选项给出了很好的提示。使用MobaXterm(便携式)对我来说并不可行,因为/etc/fstab每次启动似乎都会重新创建。我部分地绕过了放置mount -c /drives -o binary,posix=0,user,auto,noacl在我的.bashrc。“部分地”,因为这仅影响“ Windows驱动器号”(而不影响例如/home)。
Izzy 2015年

1
@SimonEast-在您回复时发现了这个。您可以尝试一下并做出回应吗?- developers.redhat.com/blog/2018/02/07/... - #如果分配没有一个fstab文件,这是典型的cwRsync,这是很容易固定。C在$MY_RSYNC_DIST_DIR/etc/fstab以下位置创建文件并粘贴以下内容:none /cygdrive cygdrive binary,posix=0,user,noacl 0 0
Alex S
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.