win7 系统保留分区 BCDedit
系统保留分区简介编辑
Windows Vista/7出于安全考虑,在新装Windows Vista/7系统过程中,如果利用光盘的分区工具给硬盘分区时,系统默认的将一部分(100-200M)的空间划分出来,不分配盘符(你在系统下看到的诸如C、D、E...之类的字母),用于存放系统引导文件(电脑启动时需要首先读取的一部分具有特殊功能的文件)。 一般来说,100MB的系统保留分区只有在以下两种情况都发生时才会产生:
产生保留分区
1) 全新安装Windows 7;
不产生保留分区
以下任意一种情况发生,100MB的系统保留分区都不会产生:
1) 升级安装Windows 7;
要执行全新安装,而又不想使用这个100MB的系统保留分区,可以选择在执行全新安装之前使用其他分区工具比如gdisk.exe来对硬盘进行分区格式化,或者直接进行全新安装,但是在分区画面,使用diskpart.exe来进行分区。
这其实有点类似Linux的做法,Linux在安装过程中可以专门分出一个100MB左右的分区作为它的引导分区(/boot),这个分区主要用来存放grub.exe,menu.lst, *fs_stage_1.5, initrd,以及内核文件vmlinuz的等Linux启动引导过程会用到的文件。
Windows 7的启动过程 :
BIOS--MBR-- Bootmgr--BCD--Winload.exe--内核加载
Bootmgr寻找并读取BCD,如果有多个启动选项,会将这些启动选项反映在屏幕上,由用户选择从哪个启动项启动。
选择从Windows 7启动后,会加载C:\\windows\\system32\\winload.exe,并开始内核的加载过程。
2具体应用编辑
如何手动分配盘符
diskpart
sel disk 0
list vol
sel vol 1
assign letter=R
这个分区里的文件主要有boot目录, bootmgr, bootsect.bak
如何删除Windows 7的保留分区
Windows 7的保留分区可以删除,但是必须小心。
启动到Windows 7,运行具有管理员权限的CMD.exe,然后输入:
diskpart
sel disk 0
list vol
sel vol 0 (你的保留分区所在的编号)
inactive
sel vol 1 (你的系统盘"C盘"所在编号)
active
退出diskpart之后,继续在CMD.exe输入下列命令:
C:\windows\system32\bcdboot.exe C:\windows /s C:
3作用编辑
1、隐藏分区的状态
2、隐藏分区中的内容
操作方法是:在磁盘管理器中选中该分区,右键单击选择“更改驱动器号和路径”弹出更改向导。单击 “添加”按钮在弹出的对话框中点选“分配以下驱动器号”,然后点击其后的下拉列表从中选择F,最后“确定”退出即可。接下来打开“计算机”可看到一个新的磁盘分区F,进入该分区发现有两隐藏目录Boot和System Volume Information,另外还有两个隐藏文件bootmgr和BOOTSECT.BAK。毫无疑问,Windows 7在该隐藏分区中保存了系统的引导文件。
3、添加隐藏分区后对系统启动的影响
接下来我们重启系统,看看上述操作是否会影响到Windows 7的启动。测试结果系统正常启动,可见上述修改不会影响系统启动。为启动分区重新分配盘符的操作并没有修改系统的引导文件,也没有修改磁盘引导扇区。可见,微软之所以将Windows 7的引导文件放在一个独立的隐藏分区中,一定是出于对引导文件的保护。
4、删除隐藏分区对系统启动的影响
通过磁盘管理器,笔者尝试“格式化”、“删除卷”均不能成功,可见Windows 7对该分区的保护是做得很不错的。既然系统工具不行,那试试第三方工具。笔者用Acronis Disk Director Suite 10.0进行测试,利用该工具删除了分区及其上面的数据,然后重启系统。显示“BOOTMBR is missing”即主引导扇区丢失,系统无法启动。由此可见,该隐藏分区中保存了系统的引导文件和磁盘的主引导分区信息。
5、删除隐藏分区中的文件对系统启动的影响
以administrator登录系统,进入F分区然后进行文件删除。在删除的过程中发现,其中有些文件是无法删除的,显示“文件正在使用”或者提示“没有删除权限”。然后又尝试了为administrator赋予“完全控制权限”,结果被拒绝。经过测试发现就连system没有完全控制权限,只有TrusterInstaller用户才有完全控制权限。重启系统,系统正常启动。可见,我们刚才删除的文件与系统启动无关,而真正与系统启动相关的文件是无法删除的。