相关疑难解决方法(0)

使用 Cygwin rsync 将 ACL 处理留给 Windows

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

rsync -rt --partial-dir=".rsync" --del rsync://server/a/ a/
Run Code Online (Sandbox Code Playgroud)

每当此命令创建一个目录时,它往往会创建一个具有疯狂 ACL/权限的目录。对我来说,它倾向于创建 10<not inherited>个条目,其中一个拒绝运行rsync命令的用户的条目,其他条目也没有多大意义。甚至使用类似线程建议的--chmod=ugo=rwX选项也会发生这种情况。

我该怎么做才能完全阻止rsync尝试设置权限(并将权限留给 Windows 中的 ACL 继承)?

windows cygwin rsync acl

13
推荐指数
1
解决办法
1万
查看次数

Windows 上基于 Rsync 和 Cygwin 的备份给出了权限被拒绝的错误

背景

我在 Windows 10 上使用 rsync/cygwin 将所有本地文件(源)备份到外部硬盘驱动器(目标)。我使用本指南http://www.howtogeek.com/175008/the-non-beginners-guide-to-syncing-data-with-rsync/作为有关如何使用 rsync/cygwin 进行备份的教程。注意:我的外置硬盘格式化为 NTFS。

在第一次备份时,我手动将所需的文件夹复制/粘贴到目的地。所有后续备份都使用 rsync 完成,如下所述。

我使用 rsync/cygwin 的备份方法

在 Windows 上,我使用 rsync 命令创建了一个 backup.bat 文件,以便我可以快速插入外部驱动器并开始备份。下面是我的 backup.bat 文件的示例,其中 C 是我的本地驱动器,E 是我的外部驱动器。

pause
rsync -avhP --delete --log-file="/cygdrive/C/Users/MyUsername/rsync-backup-log.txt" "/cygdrive/C/Users/MyUsername/Folder A" "/cygdrive/E/Backup/"
rsync -avhP --delete --log-file="/cygdrive/C/Users/MyUsername/rsync-backup-log.txt" "/cygdrive/C/Users/MyUsername/Folder B" "/cygdrive/E/Backup/"
rsync -avhP --delete --log-file="/cygdrive/C/Users/MyUsername/rsync-backup-log.txt" "/cygdrive/C/Users/MyUsername/Folder C" "/cygdrive/E/Backup/"
pause
Run Code Online (Sandbox Code Playgroud)

为了确保我没有权限问题,我将 C:\cygwin64\etc\fstab 文件编辑为以下内容:

none /cygdrive cygdrive binary,posix=0,user,noacl 0 0
Run Code Online (Sandbox Code Playgroud)

问题/问题

我遇到的问题是我经常看到“权限被拒绝(13)”错误。下面是 rsync 日志的摘录。请注意某些文件/文件夹是如何无错误地备份的。但是,有些文件/文件夹会出现权限错误。

...
2016/12/17 15:57:04 [2968] >f+++++++++ Documents/Subfolder A/IMG_5678.JPG
2016/12/17 15:57:04 [2968] >f+++++++++ Documents/Subfolder A/IMG_5679.JPG
2016/12/17 …
Run Code Online (Sandbox Code Playgroud)

windows backup cygwin rsync permissions

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

cygwin ×2

rsync ×2

windows ×2

acl ×1

backup ×1

permissions ×1