问题
windows安装助手升级系统后,生成Windows.old的文件夹,占用C盘30G,准备删除它。
结果提示:文件夹访问被拒绝。
比如以删除 windows.old 下的 Program Files (x86)为例:
解决步骤
1. 右键文件夹,选择:属性->安全->高级
修改所有者
在弹出的《高级安全设置》弹窗中点击【更改】修改所有者;
因为我们登录后一般属于Administartor,所以输入“Administrators”(这里各位看官按实际情况输入);
这一步让我们成为文件夹的所有者,然后才能进行后面的操作,包括:编辑权限、修改、删除等。
点右侧【检查名称】确保这个用户组存在,不存在会报错;
最后【确定】
成为所有子文件夹和文件的所有者
此时所有者更新了,到这一步,我们成为了Program Files (x64)的所有者。
勾选“替换子容器和对象的所有者”,【应用】后我们就可以成为所有子文件夹和文件的所有者了。
重新打开高级安全设置
上一步点【应用】会弹出提示:
关闭提示后,我们会发现还不能编辑权限条目;
那么按提示来,我们点【确定】后重新打开高级安全设置
5. 确保我们能够完全控制目标文件夹
查看权限条目,发现Administrators还没有完全控制当前文件夹,这意味着我们虽然拥有了文件夹,但还是不能删除它。
为了完全控制当前文件夹,点击【更改权限】
- 选择权限条目进行编辑
完全控制该文件夹
勾选完全控制后【确定】
权限配置继承传递到子对象
回到高级安全设置,我们发现,Administrators已经可以完全控制包含当前文件夹及所有子文件夹和文件了。
再勾选“使用可从此对象继承的权限项目替换所有子对象的权限目录”点【应用】或【确定】
这一步继承的意义在于,对于子文件夹来说,我们也完全控制了它、它的子文件夹(孙子文件夹)和文件,并且一直循环往下传递下去,控制了子子孙孙。
9. 检查子文件夹的高级安全设置(级联删除子文件夹同样有权限控制)
比如子文件夹 Common Files 的高级安全设置:
可以看到Administrators也拥有了子文件夹;
并且Administrators完全控制了子文件夹;
我们还发现Common Files的权限条目是继承于Program Files (x86)的
- 删除文件夹
顺利扔进回收站
总结
什么是TrustedInstaller
TrustedInstaller 是一个内置的系统账户,主要用于安装和更新 Windows 操作系统文件。这个账户具有非常高的权限,可以对系统文件和文件夹进行修改,而普通用户和管理员账户通常没有这样的权限。当你尝试删除或修改某些系统文件夹(如 windows.old),系统会提示你需要 TrustedInstaller 的权限,因为这些文件夹最初由 TrustedInstaller 创建,并且只有它具有完全控制的权限。
联想到windows.old安装助手创建的,可以判断这个TrustedInstaller是那个windows安装助手。
我们是Administrator
我们用自己的账号登录windows系统后,通常的角色是Administrators,显然我们不是windows.old的拥有者。
根本原因:所有者+权限控制
就像现实生活中,我们不能随便替别人扔掉他的物品一样,作为Administrators我们没有权限删除TrustedInstaller的windows.old。
文件夹的属性
通过文件夹的属性,我们可以知道:
- 它的只读属性
- 不同用户组对它的操作权限
- 它的所有者
修改文件夹的所有者
在高级安全设置中,我们可以修改文件夹或文件的所有者和权限:
- 属性>安全>高级:打开高级安全设置
编辑文件夹所有者的权限
- 我们成为文件夹所有者后才能编辑文件夹的权限条目
- 当我们成为文件夹新的所有者时,需要重新打开高级安全设置来编辑权限条目
- 可以通过继承,将权限条目规则传递到子对象,达到控制所有子子孙孙的文件,这样可以级联删除所有子文件
版权归原作者 qq_22981137 所有, 如有侵权,请联系我们删除。