系统引导分析及usb.doc_第1页
系统引导分析及usb.doc_第2页
系统引导分析及usb.doc_第3页
系统引导分析及usb.doc_第4页
系统引导分析及usb.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

火山城个人技术文档 系统引导分析及usb启动盘制作v0.10 2010-5-16系统引导分析及usb启动盘制作 引子:我的笔记本是东芝nb200,一个没有光驱的上网本,我对它还是非常满意的,我本人比较喜欢linux,所以总想弄双系统(上网本装虚拟机的估计是sb,哈哈),动了一下硬盘分区,结果卷入了长达3天的黑屏事件,让我好生痛苦。人说好奇害死猫,可是如果没害死,可能是让你学到更多东西,是不是好事呢?目录系统引导分析及usb启动盘制作1一、我的nb200问题分析3二、引导分析62.1、BIOS的概念62.2、MBR的概念72.3、操作系统引导过程72.4、主分区、扩展分区、逻辑分区及限制82.5、一般单操作系统启动过程82.6、修改标准过程实现按需启动指定操作系统92.7、MBR损坏及修复92.8、从U盘或移动硬盘启动操作系统的步骤9三、如何制作linux的usb版live启动盘93.1、格式化u盘93.2、写入主引导分区113.3、创建分区引导113.4安装Fedora到u盘123.4.1、方法1:安装liveusb-creator123.4.2、方法2:使用UltraISO软件的写入硬盘映像功能来实现14结语15一、 我的nb200问题分析东芝nb200是上网本,没有光驱,我又想装双系统,怎么办呢?从本地的硬盘安装当然是最好的方式。Ubuntu的wubi有这个功能,YLMF定制的Ubuntu里也有这样类似的功能好像是hdd-wubi。我试了几次都没成功,原因是我不是在Administrator用户安装的。为什么没有Administrator呢?东芝的nb200默认的操作系统是xp,东芝做了定制,把Administrator用户屏蔽了,安全模式下能进去,正常的进不去,我没找到好的解决方法,所以比较郁闷。那怎么办呢?我先把本地硬盘的空间清出1个linux分区,然后usb安装就ok了。于是我用Norton PartitionMagic8.05 简体中文版进行了磁盘操作,操作完了之后我重启了一下,之后就进入了长达3天的黑屏事件。黑屏了我倒是没放在心上,东芝有隐藏分区,开机后按住0(零,不是噢)就可以进入系统恢复,我按了一下,果然进入了HDD-recovery mode,正常的话会进入恢复界面,几分钟就可以搞定。可是这次不然,问题很严重,黑屏不动,退又退不出去,其他的键子都不好使。神啊?谁有办法?我用朋友电脑把u盘做了一个win PE启动盘,做法其实和下面讲的制作linux光盘时一样的。插上u盘,启动电脑,按住f12,从u盘启动,进入winPE,然后把我的硬盘里面的好东西都备份出来。这步非常重要哦。这时,我有一个发现。就是在winPE下面可以看到B盘,大小约3个多G。我看了下里面的内容,就猜到它肯定是隐藏分区。既然它是隐藏分区,现在的问题是隐藏分区能进入,但是没有吊起恢复界面。这里面的原因肯定是在隐藏分区启动文件里。DATA.INI,DMI.INI,PLANDATA.INI,SUPPORT.INI,WINNT.SIF里看不出什么。这里出来从Base.iso启动外,再就是知道此磁盘启动使用的是MS的默认启动方式,特定时i386是MS的内核,而且有NTLDR文件。偶然发现BIN目录下有个RECOVERY.BAT文件,我猜可能是掉他执行还原的。Bat文件咱还是懂些的。采用如上方法,加“断点”,测出49行附近有问题红色部分的意思出错就ERREND_OTHER,正确就GOTO MODECHECK。既然知道是这里出错,那就好办多了,把它注视掉,然后直接跳转到GOTO MODECHECK就可以了。双击执行此bat,果然通过了,进到系统恢复界面。这里有必要说一下DMICHECK做的是本地磁盘检测,我之前用Partition Magic做过磁盘操作,所以引起了此处不能检测通过,造成无法恢复的问题。所以东芝的本子建议轻易不要对分区进行调整。进入到恢复界面,我以为没问题了,点几下就搞定,nnd,谁知道直接系统初始化(不改变磁盘)这种方式进行不了,结果把我惹怒了,一气之下使用了恢复功能里的擦除磁盘数据,结果把所有数据都干掉了,包括隐藏分区的东西。我的想法是这样的,如果所有的东西都擦除了,我再ghost还原一个不就可以正常运行了吗?在winPE下,傻呵呵的用ghost还原了c盘。重启计算机,God,还是一样的黑屏。现在隐藏分区里东西没了,所以只有黑屏,什么都没有,什么也进不去(处理winPE)由此得出结论:系统首先找东芝的隐藏分区,从隐藏分区里启动c盘的操作系统。那么是什么能让它直接从隐藏分区启动呢?我在网上泡了很久,从制作启动盘道各种引导技术都看了,刚开始不是很明白,后来做启动盘的时候,我发现他们总是先写MBR,然后再PBR,然后再写入到u盘中。这样把u盘从电脑启动才能有效。也就是说首先告诉MBR我引导什么类型的,比如windows,然后如果分区引导部分和此一直就从此分区引导可以说硬盘是大号的u盘,那在硬盘上启动是不是也这样呢?答案是肯定的。 我的解决方案非常简单,它的MBR是影藏分区采用的引导方式,小样,我把它改成windows的引导方式就不就ok了吗?主要工具BOOTICE,默认会识别u盘和移动硬盘,点下拉列表的时候可以看到本地硬盘,谨慎处理。在winPE下,运行bootice,然后把本地硬盘的主引导(MBR)设为windows默认启动的。由于我之前c盘ghost还原过,所以很顺利的就从window启动了,问题解决了,而且Administrator用户的问题也随之而解。更重要的是以后不会被东芝的隐藏分区限制了,我的nb200更加自由。二、 引导分析 以前学操作系统的时候没太明白,查阅了一些资料,大体如下:2.1、BIOS的概念 BIOS(Basic Input/Output System,基本输入输出系统)全称是ROMBIOS,是只读存储器基本输入输出系统的简写,它实际是一组被固化到电脑中,为电脑提供最低级最直接的硬件控制的程序,它是连通软件程序和硬件设备之间的枢纽,通俗地说,BIOS是硬件与软件程序之间的一个“转换器”或者说是接口(虽然它本身也只是一个程序),负责解决硬件的即时要求,并按软件对硬件的操作要求具体执行。 BIOS,它在计算机系统中起着非常重要的作用。一块主板性能优越与否,很大程度上取决于主板上的BIOS管理功能是否先进。 BIOS芯片,在主板上表现为一块长方型或正方型芯片,BIOS中主要存放: 1、自诊断程序:通过读取CMOS RAM中的内容识别硬件配置,并对其进行自检和初始化; 2、CMOS设置程序:引导过程中,用特殊热键启动,进行设置后,存入CMOS RAM中; 3、系统自举装载程序:在自检成功后将磁盘相对0道0扇区上的引导程序装入内存,让其运行以装入DOS系统; 主要IO设备的驱动程序和中断服务; 由于BIOS直接和系统硬件资源打交道,因此总是针对某一类型的硬件系统,而各种硬件系统又各有不同,所以存在各种不同种类的BIOS,随着硬件技术的发展,同一种BIOS也先后出现了不同的版本,新版本的BIOS比起老版本来说,功能更强。2.2、MBR的概念 主引导扇区位于硬盘的0磁道0柱面1扇区,共512bytes,由三大部分组成: 硬盘主引导记录MBR(Master Boot Record)占446bytes 分区表DPT(Disk Partition Table)占64bytes 硬盘有效标志(Magic Number)占2bytes。AA和55被称为幻数(Magic Number),BOIS读取MBR的时候总是检查最后是不是有这两个幻数,如果没有就被认为是一个没有被分区的硬盘 主引导扇区包含的MBR、DPT、MN,这3个区域是操作系统无关的,在每块硬盘上都存在;MBR是一段可执行程序,由各个操作系统写入不同的代码。MBR的存储空间限制为446字节,MBR所做的唯一的事情就是装载第二引导装载程序。Windows产生的MBR装载运行PBR;GRUB产生的MBR装载运行grldr,GRUB4DOS的原理即是此,通过编写menulist实现启动菜单定制。2.3、操作系统引导过程 主引导记录(MasterBootRecord,MBR):512字节,位于硬盘的第一个扇区;可存放一小段程序及主分区表。MBR的boot code占用其中的前446个字节,随后的64个字节为DPT(Disk Partition Table,硬盘分区表)。 XP系统引导过程是,BIOS自检后,DPT把系统控制权交给硬盘第一个分区的PBR(Partition Boot Record),XP的PBR会去找这个分区的ntldr,之后是boot.ini,选择启动的系统后load注册表,交控制权给ntoskrnl,然后加载驱动,系统配置等等。 Vista的PBR不再找ntldr,而是找bootmgr,这个文件也是保存在硬盘第一个分区的根目录下.之后,bootmgr去找同路径下的bootBCD. BCD这个文件实际是一个注册表文件,里面的数据保存了系统的引导信息,如果是多系统引导,会提供引导的界面内容. 如果是单Vista系统,控制权会交给winload.exe,之后再去找ntoskrnl.exe.扩展引导记录(ExtendedBootRecord,EBR):512字节,位于扩展分区的第一个扇区,存放逻辑分区信息。分区引导区(PartitionBootRecord,PBR):512字节,位于每个非扩展主分区及每个逻辑分区的第一个扇区;可存放小段程序。活动分区(ActivePartition):可将所有主分区和逻辑分区中的一个标识为Active,表示系统启动时即加载运行其PBR程序的分区。DBR : DOS引导记录(DOS Boot Record)应称为OBR(OS Boot Record),意思是活动分区的PBR,即操作系统引导记录。2.4、主分区、扩展分区、逻辑分区及限制一个硬盘的分区有Primary(主分区)、Extended(扩展分区)、Logical(逻辑分区)三种。 主分区如果你只有一个硬盘,那么这个硬盘肯定应该有一个主分区,以前DOS必须在主分区才能启动。建立主分区的最大用途便是安装操作系统,另外如果你有多个主分区,那么只有一个可以设置为活动分区(Active),操作系统就是从这个分区启动的,当然了,只允许有一个活动分区,所谓的“激活分区”就是将某个主分区设置为活动分区。 扩展分区因为主分区有先天的限制(最多只能有4个),扩展分区就是为了解决这种限制应运而生的,但是需要记住的是:它可是不能直接用来保存资料的,扩展分区的主要功能就是让你在其中建立逻辑分区,而且事实上只能建立20多个。 逻辑分区(逻辑驱动器) 从上面的介绍你可以了解到,逻辑分区并不是独立的分区,它是建立在扩展分区中的二级分区,而且在DOS/WINDOWS下,这样的一个逻辑分区对应于一个逻辑驱动器(Logical Driver),我们平时说的D: E:.一般指的就是这种逻辑驱动器。 分区的限制 一个硬盘最多只能划分为4个主分区,或者是3个主分区加上一个扩展分区,这是因为在硬盘的开头,也就是主引导扇区总共512字节存放着MBR占446bytes,DPT分区表占64bytes以及硬盘有效标志占2bytes,由于记录空间只有那么大,所以也只能记录这4个分区的信息。2.5、一般单操作系统启动过程1.BIOS加载并启动保存在硬盘MBR中的引导程序,该引导程序一般在操作系统安装时写入2.MBR引导程序扫描所有分区表,找出活动分区(WindowsMBR程序只会在MBR中的分区表中查找活动分区,即Windows只能安装在主分区;Linux无此限制)3.MBR引导程序加载并启动保存在活动分区PBR中的引导程序4.活动分区PBR中的引导程序加载并启动安装在其上的操作系统(例如对Win98,定位并执行io.sys;对WinXP,定位并执行ntoskrnl.exe;对于Linux,定位并执行vmlinuz-xxx内核映像)。显然PBR引导程序与操作系统密切相关,一般在操作系统安装时写入。总结为:BIOSMBR;PBROS files2.6、修改标准过程实现按需启动指定操作系统使用BootLoader等软件置换MBR中的引导程序或PBR中的引导程序,如Windows的NTBoot Loader,Linux下的Lilo、Grub等。Windows NTBoot Loader一般用于在一台机器上安装多个Windows系统;Lilo或Grub用于在一台机器上安装多个Linux系统或同时安装Linux和Windows系统。2.7、MBR损坏及修复 mbr的损坏不会危及数据,复也很简单,重写mbr就是,dos下面的fdisk/mbr即可修改DOS引导,像BOOTICE等工具修改MBR更是随手拈来。BOOTICE有备份和还原功能哦,所以在使用的时候可以先备份再操作。2.8、从U盘或移动硬盘启动操作系统的步骤 1、U盘按一定格式进行格式化后,先写入MBR,然后把U盘激活成活动分区(可使用BOOTICE软件) 2、写入U盘活动分区的PBR,以达到PBR读取引导文件的目的(可使用BOOTICE进行操作)。这里指的引导文件可以是多种,看你的PBR写入的是哪种方式引导,比如Grub4Dos等 3、复制相应启动文件到U盘根目录,如果第一步和第二步都做好了,直接把启动文件放里就可以使用。不过保险起见,还是把iso文件通过UltraISO等软件直接写入更好。4、修改bios启动顺序从U盘启动即可 移动硬盘:开机识别成 USB-HDD 在XP中格式化成FAT32、NTFS格式的U盘:开机出现在BIOS的Removable Device中,识别成USB-ZIP,默认为主分区非活动分区。可以用DiskGenius激活为活动分区,再开机识别为USB-HDD。 量产成HDD的U盘:开机出现在BIOS的Hard Disk中,识别成USB-HDD,默认自动设置为活动分区。三、 如何制作linux的usb版live启动盘做linux有2个选择:Ubuntu和Fedora,Ubuntu安装有wubi,可以直接把Ubuntu安装在windows里,在系统引导菜单里有Ubuntu选项,usb和光盘就不说了。Fedora据我目前了解只能usb和光盘的live版安装,usb版本有。3.1、格式化u盘主要工具BOOTICE,默认会识别u盘和移动硬盘,点

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论