为什么 NTFS ACL 实用程序“icacls”会在后台改变系统分区?

为什么 NTFS ACL 实用程序“icacls”会在后台改变系统分区?

我将硬盘连接到我的 win7 机器,并将驱动器号分配I:给硬盘上的唯一分区。该硬盘最初来自另一台计算机,为了避免出现所有“您目前没有权限...”对话框,我决定使用它icacls来清除所有 ACL。

我运行了icacls I:\ /reset /t /c /l。过了一会儿,Chrome 停止工作。Safari 崩溃了。我追踪了问题,发现我的主文件夹(在C:\Users)的 ACL 都乱了。Chrome 和 Safari 无法写入缓存文件夹。我修复了主文件夹的 ACL,一切都好了似乎现在就好了。

icacls当我明确告诉它在驱动器上工作时,为什么它会弄乱我的主文件夹I:我甚至加入了/L开关,这样它就不会解析符号链接。我误解了这个开关吗?

供您参考,以下是帮助屏幕的相关部分。

ICACLS name /reset [/T] [/C] [/L] [/Q]
    replaces ACLs with default inherited ACLs for all matching files.

    /T indicates that this operation is performed on all matching
        files/directories below the directories specified in the name.

    /C indicates that this operation will continue on all file errors.
        Error messages will still be displayed.

    /L indicates that this operation is performed on a symbolic link
       itself versus its target.

答案1

好的,我找到了答案......

隐藏Documents and SettingsI:\是指向 的联结点C:\Users。联结点的目标是绝对路径(而不是相对路径)。由于/L仅处理符号链接,icacls因此解析I:\Documents and SettingsC:\Users并在那里重置所有 ACL。

因此,除非您已经检查过要处理的icacls文件夹中的所有连接点,否则切勿使用!icacls这使得icacls递归 ACL 修改工具实际上毫无用处...如果文件夹包含指向C:\文件夹结构深处的连接点,您可能会在不知道原因的情况下关闭 Windows!

相关内容