我正在使用Cygwin的cp.exe来复制Windows 7中的文件。不幸的是,当我做文件的权限更改。
我试过使用:
cp --preserve=all
但这也不起作用,当我检查原始文件和副本的安全性时,副本具有不同的权限。
显然,在使用Cygwin复制时必须有一种方法来保留权限,但我找不到它。
我相信在/etc/fstab中为/cygdrive挂载点添加noacl选项会达到你想要的效果。
$ cat fstab
# For a description of the file format, see the Users Guide
# http://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
参见http://cygwin.com/cygwin-ug-net/using.html#mount-table和cygwin邮件列表中的讨论
在问完上面的问题后,我做了更多的调查。
根据与Cygwin开发人员的讨论,Cygwin似乎并不关心Windows权限,而只是坚持POSIX权限。
据我所知,POSIX权限与Windows权限是完全不同的,所以是的,它们被支持是很好的,但最终,Cygwin不能复制文件并保持正常的Windows权限。让它对我毫无用处。使用Python或Ruby会更好。
我宁愿被证明是错的