2007/04/28
安全删除Vista和XP双系统中的Vista
日前,Windows Vista RC1 Build 5600开始了公测,必定有好多人下载来在自己的爱机上测试,笔者就是这一拨人之一了。Windows Vista RC1 Build5600比起前面的Windows Vista Beta2版本,在安装速度、功能使用上已经有了很大的进步,并且剔除了很多Bug。相比较以前的版本,这个RC1 Build5600非常值得一用。但是就像是笔者一样的,很多人用的机子配置并不高,还属于无法开启Vista的Aero Glass特效的那种配置。并且是在基于原有的Windows XP下安装的双系统来试用Vista的,那么在测试完了这次的RC1 Build5600版本后,相信还是有不少用户觉得自己的爱机还是不足以流畅运行Vista而想要恢复成原有的Windows XP单系统的。格式化重装Windows XP系统非常容易,但也非常耗费时间,单是安装完系统后的Windows Update也要耗费不少时间,还不算安装其它软件的时间。所以我们还有选择,就是手动删除Vista来恢复原有的Windows XP单系统引导。
由于Windows Vista的设计使然,使用Vista时的引导程序从ntldr转交到新的引导程序,名为Windows Boot Manager,所以我们要想删除Vista和XP双系统的Vista,关键就在于这个Windows Boot Manager。我们可以选择保留Windows Boot Manager来引导Windows XP,也可以选择删除Windows Boot Manager来将引导转交回ntldr。
一、保留Windows Boot Manager
我们要保留Windows Boot Manager,就要用到用来管理Windows Boot Mananger的小工具??bcdedit.exe,这个工具位于Vista OS所在分区的Windows\system32下。我们可以在Windows Vista下的命令行使用这个工具,也可以在Windows XP下使用这个工具。笔者的环境为C盘是Windows XP所在分区,Windows Vista在F盘。笔者选择在Windows XP下使用这个工具。在『开始』菜单的“运行”中键入“CMD”(不包括双引号)来启动命令行,在命令行下键入“cd f:\windows\system32”后回车,然后再键入“f:”即可直接进入F:\Windows\System32目录。我们可以开始使用 bcdedit.exe这个小工具了:
1、键入 bcdedit 后回车;
2、把“Windows Boot Loader”下方的“resumeobject”后的那串ID即Windows Vista的GUID记住,如图1所示;
图1
3、键入 bcdedit /export "X:\Backup\" 后回车,这条命令的意思是指将启动配置数据备份到X盘下的Backup目录中,X盘由用户来决定;
4、在Windows XP下安装Vista生成的双系统启动菜单是将Windows XP描述为“Earlier Version of Windows”的,我们可以更改一下这个描述。笔者的Windows XP是Pro版的,所以笔者的修改为:键入 bcdedit /set {legacy} Description "Windows XP Professional" ,当反馈“操作成功完成”时,修改描述就成功了,这个时候再键入 bcdedit 回车,在Windows Legacy OS Loader下看到的description就成了刚才修改的“Windows XP Professional”了。
5、由于安装好Vista后Boot Manager默认的首选启动操作系统是Windows Vista,所以我们要修改首选启动操作系统为Windows XP。在命令行下键入 bcdedit /default {legact} 后回车,当反馈“操作成功完成”时,再键入 bcdedit 回车,我们可以在“Windows Boot Loader”下看到“default”已经是“
6、既然要修改成为Windows XP单系统,那么我们也就不需要在启动菜单上等待了,那么我们就可以修改启动菜单的显示时间为0。在命令行下键入 bcdedit /timeout 0 后回车,然后再键入 bcdedit 回车,我们可以看到“Windows Boot Manager”下的“timeout”的值为 0 了。
7、虽然现在已经是默认Windows XP直接启动了,但是在Windows Boot Manager的启动配置数据中还存在这Windows Vista的数据,我们可以删除有关数据。在这里我们就要用到Windows Vista的GUID了,键入 bcdedit /delete {GUID} /cleanup 后回车(在{ }中键入那串GUID),显示“操作成功完成后”,再键入 bcdedit 回车,便看不到关于Windows Vista的启动配置数据了。
8、关于双系统的启动菜单我们已经修改成为单系统的启动了,此时我们便可以清除Windows Vista的数据了,可以选择格式化Windows Vista所在分区,如果不想格式化的话,我们可以删除Windows Vista所在分区的如下的文件夹和文件:Documents and Settings、Program Files、ProgramData、Users、Windows、autoexec.bat、config.sys、hiberfil.sys、 pagefile.sys以及Vista版的回收站文件夹$RECYCLE.BIN等文件。至此我们就达到了保留Windows Boot Manager并修改成为Windows XP单系统的启动的任务了。由于Vista只能在NTFS分区下安装,所以Vista的有关文件夹都是有权限的,在Windows XP的Explorer下可能无法直接删除,其实可以在命令行下使用rd /s /q来删除执行的目录。如果rd也无法删除的,我们只需要继承所有权即可删除。
PS:Windows Vista的一些文件是具有隐藏属性的,我们需要设置一下才能看到。在Windows XP下打开“我的电脑”,选择“工具/文件夹选项”菜单,在“查看”选项卡下去掉“隐藏受保护的操作系统文件(推荐)”复选框,选上“显示所有文件和文件 夹”单项框,单击“确定”按钮即可。
PS:也许有些读者觉得命令行下的操作实在太麻烦了,有没有GUI界面来管理呢,答案是肯定的。有一个在GUI下调用bcdedit的工具,名为VistaBootPro。可以使用这个GUI界面来管理启动配置数据,但原理还是调用bcdedit的。
二、清除Windows Boot Manager
在Windows Vista Beta2下,我们清除Windows Boot Manager只需要在Windows Vista所在分区的Boot目录下执行 Bootsect.exe -NT52 All 命令便可以完成了。但在现在的RC1 Build5600的Vista分区下并没有Boot目录,在C盘中的Boot目录中也找不到Bootsect.exe文件,所以原来的方法无效。在这里 我们需要用到Windows XP的安装光盘来完成清除Windows Boot Manager。
用Windows XP安装光盘引导计算机,当显示了“Press Any Key To Boot From CD...”时按下任意键以从光盘引导,然后开始加载数据,如果使用的是SATA硬盘还需要在加载过程当下方显示“Press F6 if you need to install a third party SCSI or RAID driver...”按下F6来加载SATA驱动。当显示到Windows XP安装程序界面时,如图2所示:
图2
按下 R键 进入恢复控制台。进入恢复控制台后会提示要求选择登录Windows,根据显示来按键选择数字,选择后还需要键入Windows XP中的管理员帐户密码,之后便会显示命令行。在命令行下键入 fixboot c: 后回车,根据提示按下 Y键即可完成将引导转交到ntldr,至此Windows Boot Manager便清除了。然后我们只需要根据自己的情况选择格式化Vista所在分区或者删除有关目录和文件。
PS:删除Vista的有关文件夹和文件需要继承权限,操作需要登录管理员帐户。首先在XP中的“文件夹选项”的“查看”选项卡下去掉“使用简单文件共享 (推荐)”复选框,然后单击“确定”按钮。在要删除的目录上右击,选择“属性”,在“安全”选项卡下单击“高级”按钮,在“所有者”选项卡下如果“目前该 项目的所有者”下是类似“S-1-5-21-1528117516-2020809315-3846545974-1000”这样子的代码,那么在“将所 有者更改为”下方选择自己当前的管理员帐户,然后勾选“替换子容器及对象的所有者”复选框,然后单击“确定”按钮。再次重复刚才的操作打开至“高级安全设 置”的“权限”选项卡下,勾选“从父项继承那些可用应用到子对象的权限项目,包括那些在此明确定义的项目”复选框和“用在此显示的可以应用到子对象的项目 替代所有子对象的权限项目”复选框,然后单击“确定”按钮,此后会有一些应用动作,待这些动作完成后就可以直接删除那些“拒绝访问”的文件夹了,包括 Vista的Windows文件夹等文件。
说明:此文的“简化版”已刊登至2006年10月15日出版的第20期《电脑爱好者》,题目为“安全 卸载双系统中的Vista”。本文基于Windows Vista RC1 Build5600撰写,在后续的Windows Vista RTM Build6000中的方法可能略有改变,请注意。
标签: Vista, Windows Vista, WindowsXP
