从系统盘符选错到认识硬盘的各种分区
硬盘各种分区
主分区,扩展分区,逻辑分区,活动分区,系统分区,启动分区。。。。。。。。。
主引导扇区,MBR,bootloader。。。。。。。。。。
各种概念,你都清楚什么意思吗?
花了一天的时间终于研究清楚了,网上好多帖子的解释都是错的,或者没有深入到本质,都是什么C盘啊,D盘啊,都被windows洗脑了。浪费了好好长时间。
主分区
实际上在早期的硬盘分区中并没有主分区、扩展分区和逻辑分区的概念,每个分区的类型都是主分区。由于硬盘仅仅为分区表保留了64个字节的存储空间,而每个分区的参数占据16个字节,故主引导扇区中总计只能存储4个分区的数据。也就是说,一块物理硬盘只能划分为4个逻辑磁盘。在具体的应用中,4个逻辑磁盘往往不能满足实际需求。为了建立更多的逻辑磁盘供操作系统使用,引入了扩展分区和逻辑分区,并把原来的分区类型称为主分区。
扩展分区
上面说了,4个分区显然不能满足需求,但是物理硬件限制只能有4个分区怎么办呢?所以操作系统开始出马了,把其中一个主分区命名为扩展分区,记住只是命名哦,原则上扩展分区和主分区是一样的,只不过功能不同。下面说完逻辑分区,你就懂我在说什么了。
逻辑分区
4个分区肯定不够,我想要20个分区,怎么办呢?把其中一个主分区变成扩展分区,然后在这个扩展分区上进行切割,变成一个个D盘,E盘,F盘什么的,但是这些盘综合起来就是一个扩展分区,这些盘是相互链接的,并不像主分区那样,4个之间相互独立互不干扰。逻辑分区用链表进行链接,如果E盘中的分区信息丢掉,操作系统就找不到F盘了。
启动分区
很简单,存放操作系统文件的的分区,比如你装了2个系统:win7+linux那么你就2个启动分区。装的是windows的话就看windows文件夹(system32文件)存放在那个区,哪个区就是你的启动分区,默认装C盘,你也可以装F盘等。装的是Linux的话就看 / 分区装在哪,哪就是启动分区。
系统分区
存放Ntldr程序或者Grub程序的分区,windows通常装在C盘,linux通常装载/boot分区
活动分区
活动分区是主分区,活动分区是系统分区,每次PC启动时,一块硬盘只能有一个活动分区,如果要启动windows就将windows的系统分区设为活动分区,计算机就会去那里装载引导程序(Ntldr或者Grub)并执行,如果要启动Linux就将Linux的系统分区设为活动分区。
看到没?上图是我的硬盘分区情况,我的win7装在C盘,即我的windows文件夹在C盘,所以C盘是启动分区;但是我把Grub装到Z盘去了,即引导程序Ntldr. boot.ini什么的,所以Z盘是系统分区。。。。。又由于我当前启动的时win7系统,所以win7的系统分区也是活动分区。
各位童鞋应该都明白了吧~~~~~
主引导扇区
下面讲一讲启动的事情
主引导扇区:每块硬盘,对,每块硬盘不是每个分区,都只有一个主引导扇区,即该硬盘0号柱面,0号磁头的第一个扇区,大小为512字节。主引导扇区包含的MBR(硬盘主引导记MBR占446bytes)、DPT(分区表DP占64bytes)、MN(硬盘有效标志Magic Numbe占2byte。AA和55被称为幻数(Magic Number),BOIS读取MBR的时候总是检查最后是不是有这两个幻数,如果没有就被认为是一个没有被分区的硬盘),这3个区域是操作系统无关的,在每块硬盘上都存在;MBR是一段可执行程序,由各个操作系统写入不同的代码。MBR的存储空间限制为446字节,MBR所做的唯一的事情就是装载第二引导装载程序。Windows产生的MBR装载运行PBR;GRUB产生的MBR装载运行grldr
MBR:正如上面所说的那样,它是一段程序,长度为446字节,作用是加载bootloader的。
系统分区和启动分区
在平时操作中,经常要接触到系统分区和启动分区,很多朋友将它们混为一谈,其实这是两个不同概念的分区。比如,你简单地把别人C盘中的所有文件复制到自己的C盘,虽然包括Windows文件夹,但并不能成功启动这个系统。原因何在呢?其中就是系统分区和启动分区在作怪。小编帮大家理顺一下。
根据微软件帮助文档的解释,系统分区是指导包含加载Windows(比如Ntldr、Boot.ini、Ntdetect.com)所需的硬件特定文件的分区,系统分区可以(但不是必须)与启动分区相同。启动分区则是指包含操作系统及其支持文件的分区。从微软的解释可以看出,这是两个不同定义的分区。通俗理解,系统分区就是保存各种引导文件的分区(也叫引导分区),启动分区则是指保存Windows目录的分区。比如对于Windows 7系统,保存Bootmgr文件和boot目录的分区就是系统分区,启动分区则是保存Windows目录的分区。二者的关系可以从系统启动流程图清晰地看出来。
具体区别,还得视情况而定
微软文档中的可以(但不是必须)说明两者之间即有联系又有区别。
情况1:系统分区就是启动分区
对于系统用户,系统分区一般就是启动分区,因为引导文件和Windows目录都存在于同一位置。比如XP安装在C盘单系统用户,ntldr、boot.ini、Ntdetect.com引导文件和Windows目录都在C盘,所以这两个分区是一致的。
情况2:系统分区不是启动分区
对于c:Windows XP+d:Windows 7双系统用户,此时系统分区就不一定是启动分区了。比如当你通过Bootmgr多重启动菜单进入Windows 7,此时对于Windows 7而言,系统分区就是C盘(因为其中包含c:\bootmgr引导文件和c:\boot引导目录),启动分区则是D盘(因为该分区保存着d:\windows系统目录)。进入Windows 7后打开磁盘管理组件,可以非常清楚看到两者的不同,这也就是解释文档中但不是必须的实例解读。
对于一些品牌机或者使用Windows 7安装光盘全新安装系统的用户,由于这此电脑的C盘前还存在隐藏分区,隐藏分区负责保存系统引导文件,因此系统分区也不是启动分区。别轻易碰系统分区。
清楚了系统分区,启动分区的联系与区别,就很容易对付一些常见启动故障了。比如,对于c:Windows XP+D:Windows 7双系统用户,如果对C盘进行格式化重装XP后就无法进入Windows 7.因为对于Windows 7来说,格式化C盘后就破坏了其系统分区,自然无法进行成功地引导。
系统分区担负系统引导功能,如果该分区文件丢失就会告成系统无法引导。比如对于XP用户,如果丢失ntldr引导文件,开机就会出现ntldr is missing(ntldr文件丢失)提示。常规修复方法是添加启动文件,或对启动配置(比如Windows 7下BCD文件)进行重新编辑。启动分区则是系统核心文件、系统初始化、核心加载、驱动配置、系统服务管理都是基于该分区文件的存在。
系统分区、启动分区、主分区、逻辑分区有何区别?
前两个是针对操作系统而言,主要是从功能上划分的概念,后两个则是针对磁盘分区类型划分的。系统分区具备引导功能,一般就是活动的主分区,启动分区则可以是主分区或逻辑分区(主要看该分区是否存放Windows目录)。
注:以上内容转自网络
Windows原版镜像
Windows原版系统ISO文件图
sources
系统文件都在里面,很大的一个文件夹
autorun.inf
是我们电脑使用中比较常见的文件之一 ,其作用是允许在双击磁盘时自动运行指定的某个文件
bootmgr
启动管理器。Bootmgr是Boot Manager的缩写,是在Windows Vista、Windows 7、windows 8/8.1和windows 10中使用的新的启动管理器,以代替Windows NT系列操作系统(Windows XP、Windows 2003)中的启动管理器——NTLDR。
误打误撞
安装盘选错
上图是我用WinNTSetup装系统时错误地把 安装磁盘的位置 选择成E盘,结果系统安装之后磁盘E和C合并成同一个磁盘C。
重新分配置盘符
重新分配盘符之后,C盘E盘和原来的盘符互换了。\Window目录在新C盘,Windows其它文件在E盘