我刚刚重新安装了 Windows 10,它创建了一个新用户/ID。现在我的所有硬盘都是只读的,因为新用户与旧用户不匹配(真是个很棒的系统)。我仍然可以通过 Windows 资源管理器访问所有内容,但不断被要求提供管理员权限。问题是任何试图保存内容的应用程序都会失败。幸运的是,当我第一次运行它时,Steam 似乎知道如何解决这个问题(感谢他们不遗余力地修复 Windows 没有准备好的东西),尽管这花了一段时间。
我认为正常的修复方法是继续摆弄文件夹属性和安全选项卡,等待一段时间让 Windows 逐个更改权限,同时递归到整个磁盘上的每个目录。更不用说在遇到回收站等系统文件时出现错误了。
该takeown
命令看起来很有希望并且需要很长时间,但我仍然遇到相同的访问被拒绝的情况。
takeown /F Z: /R /D Y
有没有一个干净、无痛的解决方案?
答案1
只需执行 icacls PATH /reset /t /q
其中 PATH 是给您带来麻烦的文件夹/驱动器,您可以放心操作。它会将权限重置为默认值。
答案2
尝试这个技巧:快速将驱动器的文件夹共享给您自己的用户,这样可以绕过这个问题。
如果没有的话,你就必须采取老办法,‘重新吸收它们’:
- 单击驱动器的属性并转到“安全”选项卡。
- 单击“高级”,然后在高级安全对话框窗口中单击“所有者”选项卡。
- 检查当前所有者。要获取所有权,请单击“编辑”按钮。然后在“将所有者更改为”框中突出显示您的用户名,然后单击“确定”以完成该过程。
- 返回“高级安全设置”窗口,您将看到当前所有者已更改为您的用户。单击“确定”按钮退出此窗口。再次单击“确定”以完全退出属性窗口。
- 再次转到对象的属性窗口。
- 在对象的属性窗口中,单击“编辑”按钮,并根据需要向 UAC 确认。
- 在“组或用户名”框中选中管理员。如果您要管理对象权限的用户 ID 或组不存在,请单击“添加”按钮,在“输入要选择的对象名称 [...]”框中输入所需的用户名或组名,然后单击“确定”。
- 在下面的管理员权限框中(或您选择的任何其他用户名或组名),单击“允许”列下的“完全控制”,为管理员组分配完全访问权限控制权限。
如果该操作也失败了,您将必须启用默认管理员帐户并从该帐户尝试相同的过程(提升的 cmd --> net user administrator /active:yes
)。
另一种方法是尝试使用 subinacl。下载官方的 subinacl.msi 并安装它。
然后,打开提升的 cmd 并粘贴以下行:
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=system=f
这样做的目的是修复用户帐户权限。