我今天想尝试删除一个目录。但我没想到,Windows 不允许我这么做。
C:\Data\Projects\acme\4.2.0>rmdir /s product
product, Are you sure (Y/N)? y
product\release - Access is denied.
这是在以管理员身份运行的命令提示符下发生的。如果不是管理员,我想我会试着找出它属于谁:
C:\Data\Projects\acme\4.2.0\product>dir /q
Volume in drive C is Windows 8
Volume Serial Number is 38F9-44D7
Directory of C:\Data\Projects\acme\4.2.0\product
01/02/2013 14:47 <DIR> RADISH\Trejkaz .
01/02/2013 14:47 <DIR> RADISH\Trejkaz ..
01/02/2013 14:47 <DIR> ... release
0 File(s) 0 bytes
3 Dir(s) 79,467,786,240 bytes free
“...”?这是什么鬼?我们去问问 SysInternals 吧,他们通常知道事情是怎么运作的:
C:\Data\Projects\acme\4.2.0\product>accesschk.exe release
Accesschk v5.03 - Reports effective permissions for securable objects
Copyright (C) 2006-2012 Mark Russinovich
Sysinternals - www.sysinternals.com
Error getting security for C:\Data\Projects\acme\4.2.0\product\release:
Access is denied.
No matching objects found.
看来我必须进入系统级别才能删除这个目录,尽管我自己创建了它。
我尝试了这里提到的一些技术:
http://blogs.msdn.com/b/adioltean/archive/2004/11/27/271063.aspx?Redirected=true
这些都不起作用,因为我在管理员命令提示符下没有所需的权限。Windows 8 似乎已经将这些东西锁定得如此严格,以至于您无法再使用自己的计算机。
尝试通过 Explorer 获取所有权时会出现这个神秘的对话框,它建议单击对话框中根本不存在的“更改”按钮:
答案1
从 Hiren 的 BootCD 启动(实际上您并不需要刻录它,可以将其放在 pendrive 上),然后从菜单中选择 Mini Windows XP 并使用它来删除该目录。
我想我不需要提及,要做到这一点,您必须拥有 Windows XP 许可证 - 否则这是违法的。
另一种选择是使用一些带有 ntfs-3g 驱动程序的 Linux 发行版(例如 Ubuntu),这被认为是可以安全地写入 NTFS 卷的 - 尽管这是一种特殊情况,所以要小心。
chkdsk /r C:
啊,如果这是损坏的文件描述符问题,运行可能会有帮助。
答案2
尝试使用“takeown /f filename”,然后尝试使用 cacls/gui 更改权限。如果 takeown 在管理员提示符下运行时无法取得所有权,则可能是磁盘损坏,因此随后在驱动器上运行 chkdsk 可能会有所帮助。
或者按照建议,从 Linux 发行版中删除该文件