win7 系统保留分区 BCDedit

系统保留分区简介编辑

“系统保留”分区示意图“系统保留”分区示意图
Windows Vista/7出于安全考虑,在新装Windows Vista/7系统过程中,如果利用光盘的分区工具给硬盘分区时,系统默认的将一部分(100-200M)的空间划分出来,不分配盘符(你在系统下看到的诸如C、D、E...之类的字母),用于存放系统引导文件电脑启动时需要首先读取的一部分具有特殊功能的文件)。 一般来说,100MB的系统保留分区只有在以下两种情况都发生时才会产生:

产生保留分区

1) 全新安装Windows 7;
2) 使用Windows 7分区画面进行分区格式化

不产生保留分区

以下任意一种情况发生,100MB的系统保留分区都不会产生:
1) 升级安装Windows 7;
2) 在全新安装之前使用其他工具(比如gdisk.exe)先对硬盘进行分区格式化;
3) 在全新安装过程中使用diskpart.exe对硬盘进行分区格式化;
要执行全新安装,而又不想使用这个100MB的系统保留分区,可以选择在执行全新安装之前使用其他分区工具比如gdisk.exe来对硬盘进行分区格式化,或者直接进行全新安装,但是在分区画面,使用diskpart.exe来进行分区。
Windows 7的100MB的保留分区是Windows 7的活动分区,类似于Linux的/boot.
在Windows 7 beta版本的时候就在安装Windows 7过程中会分出一个100MB的小分区(早期版本的Win7是200MB),这是Windows 7的活动分区,启动引导文件存放的分区。
这其实有点类似Linux的做法,Linux在安装过程中可以专门分出一个100MB左右的分区作为它的引导分区(/boot),这个分区主要用来存放grub.exe,menu.lst, *fs_stage_1.5, initrd,以及内核文件vmlinuz的等Linux启动引导过程会用到的文件。
类似地,Windows 7的这个保留分区是它的主分区系统分区活动分区。Windows 7在启动过程中会从这个分区启动,然后再启动C盘目录。
Windows 7的启动过程 :
BIOS--MBR-- Bootmgr--BCD--Winload.exe--内核加载
开机后,BIOS进行开机自检(POST),然后选择从硬盘进行启动,加载硬盘的MBR并把控制权交给MBR(MBR是硬盘的第一个扇区,它不在任何一个分区内);
MBR会搜索64B大小的分区表,找到4个主分区(可能没有4个)的活动分区并确认其他主分区都不是活动的,然后加载活动分区的第一个扇区(Bootmgr)到内存;
Bootmgr寻找并读取BCD,如果有多个启动选项,会将这些启动选项反映在屏幕上,由用户选择从哪个启动项启动。
选择从Windows 7启动后,会加载C:\\windows\\system32\\winload.exe,并开始内核的加载过程。

2具体应用编辑

如何手动分配盘符

Windows 7的100MB系统保留分区在系统下是不会自动分配盘符的,但是可以手动给它分配一个盘符,运行具有管理员权限的CMD.exe,然后输入:
diskpart
sel disk 0
list vol
sel vol 1
assign letter=R
通过这几行命令会给这个保留分区分配盘符R,你也可以通过磁盘管理工具来给它分配盘符。
分配好盘符之后,打开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:
屏幕提示你操作成功之后,就可以放心删除这个保留分区了,下次开机,你的系统就会从C盘直接启动而不需要这个保留分区了。

3作用编辑

手动安装Windows 7的用户都知道系统在安装时有100M的系统保留分区GHOST安装的用户没有此分区。下面跟大家分享下Windows 7系统保留分区的作用。
1、隐藏分区的状态
分区的格式为NTFS,没有磁盘卷标也没有分配驱动器号,其磁盘状态描述为:系统、活动、主分区。因为没有驱动器号,所以在资源管理器中是不可见的。
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用户才有完全控制权限。重启系统,系统正常启动。可见,我们刚才删除的文件与系统启动无关,而真正与系统启动相关的文件是无法删除的。
posted @ 2015-04-07 10:02  Fatt  阅读(1289)  评论(0编辑  收藏  举报