NTFS 权限——“继承自”?

NTFS 权限——“继承自”?

我有一个 NTFS 外置硬盘。它主要用于一台笔记本电脑,但那台笔记本电脑后来被替换了。使用我的新笔记本电脑后,我发现我的所有文件现在都是只读的。“只读”复选框未选中,但似乎是 ACL 导致了问题。

在所有文件上,ACL 上唯一可写的权限是 SYSTEM、管理员和“S-1-5-21-....”我猜是旧笔记本电脑上的帐户号。单击“高级”显示此权限“继承自”“E:\”。但是,如果我打开 E:\ 上的 ACL 列表,我看不到任何涉及“S-1-5-21...”的权限 - 为什么没有?

有没有办法将此设备批量更新到新用户的帐户,以便我可以写入内容?

编辑:这是一个外部驱动器,确实与机器共享了一些。有没有更好的方法来实现这一点?

编辑:旧机器是Windows Vista,新机器(我正在使用的那台)是Windows 7。

答案1

是的。如果您确实想重置此外部硬盘上的所有权限,那么方法是更改​​顶部的 ACL,然后选中“替换所有子对象上的权限条目...”复选框。这将使用您分配给顶层的 ACL 设置该点以下的所有文件和目录。这应该会清除旧的 SID 并让一切恢复正常。

发生这种情况的原因很简单。NTFS 权限是在每个对象(文件和目录)上明确设置的。当您设置要继承的内容时,Windows 会遍历并设置该点以下每个文件和文件夹的继承,跳过设置为阻止继承的目录。如果您的文件系统包含 500 万个文件和文件夹,则这可能需要相当长的时间。如果您在那 500 万个文件树上设置了某些内容然后中途取消只有部分文件和文件夹才具有该权限。已设置的权限将显示它们具有从上层继承的权限,但您不会在对象上看到该权限,因为该权限(奇怪的是)最后设置。清除该权限需要执行我上面列出的过程,强制降低权限,或者在顶部对象上设置该权限并让其完全渗透到树中,然后再次将其删除。

如果您有一个未命名的 SID(就像您有的一样),您也可以尝试通过设置然后取消设置来删除它。假设 Windows 7:

icacls E:\ /grant S-1-5-21-....:(oi)(ci)(m)

一旦完成所有应用,就将其删除。

icacls E:\ /remove S-1-5-21-...

答案2

NTFS 格式的外部驱动器将充当内部驱动器,并以只有一台机器的用户才能访问驱动器的方式设置权限。由于 NTFS 的一些怪异特性,管理员帐户通常可以看到驱动器上的所有内容。

NTFS 硬盘上设置的几乎所有权限都使用安全 ID 号,而不是用户的显示名称。“S-1-5-21...”号是创建 NTFS 驱动器上文件夹的用户帐户的安全 ID。NTFS 专为域中使用而设计,因为用户的安全 ID 在计算机之间不会更改。我假设您不是域的一部分,因为您切换了机器。

我发现有效的方法是向外部驱动器根目录上的“Everyone”用户授予修改权限。这将需要一些时间来处理,但它将打开驱动器,任何帐户都可以访问该驱动器。

这确实带来了安全风险,任何人都可以轻松编辑驱动器上的文件。如果您担心,加密驱动器可以减轻这种担忧。大多数人使用这些驱动器来传递文件,因此他们希望每个人都能阅读它。

希望这可以帮助

答案3

这也可能是由于分配了“创建者/所有者”权限。当用户创建文件时,其特定用户将被添加到文件的 ACL 中,并且如果/当他们的用户被删除时,现在未映射的 SID 将保留,并且无法删除,因为“创建者/所有者”仍在被继承。解决方法是确定“创建者/所有者”权限从哪里继承,然后将其从该文件夹中删除。只要您没有任何继承阻止,就应该可以解决问题。

相关内容