[翻译]Windows Vista的秘密#11: 删除不可删除的东西
原文地址:http://blogs.msdn.com/tims/archive/2006/11/10/windows-vista-secret-11-deleting-the-undeletable.aspx
作者:Tim Sneath
翻译:Tony Qu (来自BluePrint翻译团队)
我们大部分人都是从Window XP或Windows Vista的早期版本转向最终RTM的,我认为这个小技巧是适合我们的。你知道Windows Vista有许多种不同的方法来升级计算机,从直接的替换安装(插入CD,运行安装并选择升级)到Windows Easy Transfer(允许你从一个老的安装中拷贝设置、程序和数据到一个全新的系统环境)。但是我是个纯化论者,不希望有任何碎片,坚持将系统安装到一个纯净的,没有任何污点的分区。
在安装时,即使是管理员,找到不能访问的文件夹也是很寻常的,因为设置它们的账号ACL是通过原本应用到旧分区的SID完成的。例如,在我家里的机器上,我更换了C:和D:驱动器线,并把Windows Vista RTM安装到一个新的盘符上。当测试并确认所有的东西都工作得很好的时候,我想删除一些老的冗余的目录(比如老的program files目录)。如果连管理员都无法访问这些文件,你该如何获得权限呢?
秘密藏在两个命令行工具,其中一个比较古老,另一个则完全是为这个版本修订的。它们是takeown(可获得一个文件或目录的拥有权)和icacls(可以对一个目录设置新的ACL)。我在我的系统上创建了一个批处理程序,叫做itsmine.cmd, 如下所示:
takeown /f %1 /r /d y
icacls %1 /grant administrators:F /t
在一个升级的(elevated)命令提示符中,从你可以运行一个命令,比如itsmine d:\hard_to_delete,它会重置拥有权和hard_to_delete目录的ACL,例如rd /s d:\hard_to_delete 应该可以运行。
上周,这两行命令已经为我减少了很多痛苦,因为我逐渐熟悉了,并在每台计算器上重新安装了Windows Vista RTM版本:希望它们也同样对你有用。
作者:Tim Sneath
翻译:Tony Qu (来自BluePrint翻译团队)
我们大部分人都是从Window XP或Windows Vista的早期版本转向最终RTM的,我认为这个小技巧是适合我们的。你知道Windows Vista有许多种不同的方法来升级计算机,从直接的替换安装(插入CD,运行安装并选择升级)到Windows Easy Transfer(允许你从一个老的安装中拷贝设置、程序和数据到一个全新的系统环境)。但是我是个纯化论者,不希望有任何碎片,坚持将系统安装到一个纯净的,没有任何污点的分区。
在安装时,即使是管理员,找到不能访问的文件夹也是很寻常的,因为设置它们的账号ACL是通过原本应用到旧分区的SID完成的。例如,在我家里的机器上,我更换了C:和D:驱动器线,并把Windows Vista RTM安装到一个新的盘符上。当测试并确认所有的东西都工作得很好的时候,我想删除一些老的冗余的目录(比如老的program files目录)。如果连管理员都无法访问这些文件,你该如何获得权限呢?
秘密藏在两个命令行工具,其中一个比较古老,另一个则完全是为这个版本修订的。它们是takeown(可获得一个文件或目录的拥有权)和icacls(可以对一个目录设置新的ACL)。我在我的系统上创建了一个批处理程序,叫做itsmine.cmd, 如下所示:
takeown /f %1 /r /d y
icacls %1 /grant administrators:F /t
在一个升级的(elevated)命令提示符中,从你可以运行一个命令,比如itsmine d:\hard_to_delete,它会重置拥有权和hard_to_delete目录的ACL,例如rd /s d:\hard_to_delete 应该可以运行。
上周,这两行命令已经为我减少了很多痛苦,因为我逐渐熟悉了,并在每台计算器上重新安装了Windows Vista RTM版本:希望它们也同样对你有用。
版权声明:本文由作者Tony Qu原创, 未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权。