我们已经和Rsync服务器安装在我们的文件服务器之一上,我们每晚将它备份到一台基于Linux的机器上,这台机器做归档和备份循环。
最近我注意到Rsync用户不能访问服务器上的某些文件。 该服务以本地用户身份运行,该用户是备份操作员组的一部分。 我曾经想过,这个小组中的任何人都可以完全访问所有的东西,但是最近的结果告诉我,情况并非如此。
反正有没有这个获得rsync完全访问? 更改文件所有权不是一个选项。 添加权限会发出一个选项,除非可以在不影响其他现有权限的情况下完成所有文件。
您对“备份操作员”如何与NTFS权限进行交互的理解存在缺陷。 “Backup Operators”组的成员可以读取/写入绕过权限,但只能通过rsync不使用的特定备份API函数 。
Rsync使用“普通”文件系统API函数,因此用户rsync运行时必须有权读取每个要备份的文件。 没有办法绕过它不改变rsync的代码。
根据你如何构build你的权限层次结构,你可能能够为你的rsync用户(最好是rsync用户所属的组 – 也许是唯一的成员 – 而不是用户)添加另一个ACE )读取文件。 如果你阻止了权限inheritance(微软似乎没有足够强烈的阻止,只是出于这种原因),那么你有一个烂摊子,你必须授予权限inheritance沿权限的每个根权限。
如果您现有的权限层次结构已经包含一个合适的组(比如说“pipe理员”),那么您可以将rsync用户添加到“pipe理员”组中。 显然,rsync中的一个错误允许非特权用户在rsync用户的上下文中执行代码将是非常非常糟糕的情况,所以要仔细权衡风险。