linux和windows双系统安装.doc
如今Linux不仅在服务器领域的应用取得较大进展,而且在桌面应用领域也有越来越多的人选择使用。下面就以Red Hat Linux 9.0为例,介绍如何与Windows XP组成双系统。 给Linux划分领地 由于Linux无法安装在Windows的分区上,所以必须在硬盘中分割出一块领地专供Linux使用,这里推荐用分区魔术师进行无损分区。为了方便讲述,这里先举一个实例来说明:装有Windows XP计算机有一个30GB的硬盘,共分三个区(C盘、D盘、和E盘),其中E盘有16.6GB(有约7GB可用空间)。我们的目标是将7GB的可用空间剥离出来专供Red Hat使用。 1.首先在Windows XP里启动分区魔术师,从主窗口可以看到磁盘分区的详细信息。单击右侧详细窗格里的分区E以选中它。 2.单击左侧任务列表里的“调整一个分区的容量”命令,即可弹出一个“调整容量/移动分区”对话框。 3.在该对话框的顶部有一个条状图表示分区E的使用情况,其中左侧的黑色条部分表示已用空间,右侧的绿色条部分表示可用空间。可以用鼠标直接拖曳绿色条部分对E盘容量进行调整。很显然,E盘的最小容量就是已用空间的容量(在小就要破坏原有数据了),减小的容量就成了自有空间。 4.单击“确定”按钮,回到主界面,此时我们可以看到新划分出的7GB自由空间。接下来的步骤非常重要。尽管这7GB的磁盘空间已经是“自由身”,但是它还是属于Windows的扩展分区,所以要将这7GB的自由空间从Windows扩展分区里划分出去。 天极软件专题专区精选Windows Vista专区 POPO专区QQ专区QQ挂机注册表专区 Windows优化Flash MX 视频教程Photoshop视频教程网页设计视频教程照片处理数字暗房PPT动画演示教程Excel动画教程集Word动画演示教程Google专区特洛伊木马专区黑客知识教程专区防火墙应用专区了解Web2.0Windows API开发专区网络编程专区VB数据库编程专区图像处理与多媒体编程5.单击扩展分区以选中它,如图1所示。用类似的方法将这7GB自由空间从Windows扩展DOS分区里划分出去。现在我们已经从Windows XP的领地里割出一块7GB的自由空间供Linux专用。 图1 将自由空间从扩展分区里划分出去注意,一定要将自由空间从Windows扩展分区里划分出去,这是因为Linux的分区格式和Windows并不完全兼容。如果Red Hat所使用的磁盘空间属于Windows扩展分区,就会导致“水土不服”。很多朋友反映装上了Red Hat以后,发现Windows速度变得奇慢,就会归咎于Red Hat,其实根本原因在于分区的时候没有将自由空间从扩展分区里剥离出去。 实现Windows与Linux双重引导有多种方法: 对于具有双硬盘的用户,可以将Linux安装在第二个硬盘上(Windows自然是安装在第一个硬盘上),并且确保将GRUB(LILO)安装在第二个硬盘的主引导扇区,然后每次开机时在BIOS里指定从哪个硬盘引导即可。 最常用的方法是借助Linux的引导装载管理器GRUB(LILO),自动接管双重系统的启动选单。 可以借助Windows XP的NT引导程序ntldr、boot.ini来实现双重启动。这种方法的优点是今后删除Linux比较方便,而且符合我们的使用习惯;缺点是实现起来相对比较复杂,需要获取Linux系统的引导映像文件。 可以选择不安装Linux的引导装载管理器(或者不要安装在主引导扇区),但是要记住在安装过程中一定要创建Linux启动盘。今后需要时,用这张启动盘引导系统进入Linux。 这里介绍了四种双重系统的实现方案,本文将分别介绍比较常见的第二和第三种方法。使用Linux引导管理器 Linux有GRUB和LILO两种引导管理器。从Red Hat 7.2版本开始,GRUB取代LILO成为了默认的启动装载程序,可见GRUB有其过人之处。相对来说,GRUB的使用和配置更加简单,功能更加强大,而且是今后的发展方向。所以此处推荐大家使用GRUB作为双重系统的引导管理器。 假设使用Red Hat Linux 9.0的安装光盘进行安装。首先是修改系统BIOS设置,以启用光盘开机,然后用第一张Linux安装光盘引导系统,等出现欢迎屏幕时按回车,即可进入图形化安装界面。 1.选择定制安装 安装过程非常简单,一开始会提示选择安装语言(自然要选择熟悉的简体中文),然后系统会提示进行鼠标、键盘配置。一般Linux会自动检测出相关设备,无需更改。 接下来将进入安装类型选择页面,一共有五个选项,分别是个人桌面、工作站、服务器、定制和升级现存系统。这里我们选择自由度最高的“定制”安装类型,如图2所示。 图2 选择安装类型2.创建Linux分区 创建Linux分区是难点。此处选择“用Disk Druid手工分区”,在接下来的页面上选中刚刚划分出来的7GB自由空间,然后单击“新建”按钮,即可创建Linux分区。对于初学者,可以只分三个分区: (1)引导分区 在弹出的“添加分区”对话框上,在剩余空间创建引导分区,挂载点为/boot,容量可以是100MB,文件系统是ext3,如图3所示。 图3 创建引导分区(2)交换分区 必须要创建交换分区。交换分区是一个特殊的分区,类似于Windows XP里的页面文件,它没有挂载点的概念。此处只需选择文件类型为swap,假设内存容量是128MB,则交换分区容量可以设为256MB。 (3)根分区 在弹出的“添加分区”对话框上,选择挂载点为“/”,选择文件系统为ext3,可以将剩余的容量全部分配给根分区(注意应该适当留一点空间,否则系统会报错),容量大小不低于1.5GB。 Linux环境下没有Windows的C、D盘符概念,每一个Linux分区必须挂载到Linux目录树上才可以使用。这里有一个特殊的分区,就是根目录/,这个目录是必须的,它是Linux目录树的根。 3.Linux引导管理器的配置 创建好Linux分区,接下来就是重头戏Linux引导管理器的配置。图4就是引导装载程序配置界面。由图4可以看到,图中的引导系统列表里已经出现了两个选项,一个Windows XP(此处认作DOS),另一个自然就是Red Hat了。在这个安装向导页面,可以做以下设置: 图4 引导装载器的配置(1)改变默认启动系统 Linux引导管理器默认引导Linux,可以在这里加以修改,例如可以勾选Windows XP(此处是DOS)前面的“默认”复选框,也可以在安装完成后,修改/boot/grub/menu.ist文件达到同样目的。 (2)添加别的操作系统 有时候,GRUB不一定能够检测出系统里的所有操作系统,这时候就需要进行人工添加。单击如图4所示页面上的“添加”按钮,即可打开一个“映像”对话框,可以在“标签”文本框输入该操作系统的名称,例如“Windows 98”,在“设备”下拉列表指定该操作系统的系统分区所在的位置,并确定是否选择该操作系统为默认引导系统。 (3)编辑默认项目标签 可能大家早就看不惯Red Hat居然还把Windows XP看成是DOS。不过单击图4页面上的“编辑”按钮可以指定其标签,如图5所示。 图5 指定启动选单的名称完成了这一步,Windows与Linux双重系统安装就大局已定。接下来的操作比较简单,按照屏幕提示即可轻松完成。不过,千万别忘记创建一张Linux启动盘,以备不时之需。使用ntldr实现双重引导 使用ntldr引导Windows和Linux双系统,要比GRUB麻烦得多。这是因为Windows无法识别Linux分区,所以不能检测出Red Hat Linux的存在。为了能够让ntldr乖乖“听话”,需要对其进行“手术”。 为了方便大家理解,先对Windows引导管理器的原理做一简单介绍。ntldr是由配置文件boot.ini提供工作参数的,该文件位于Windows XP系统分区的根目录下,具有隐藏、系统、只读属性。我们只需要将Red Hat Linux的引导记录作为一个文件备份到C盘的根目录下,并相应地在boot.ini文件里添加一个项目来指向它们,就可以实现双重系统了。 假设要进行Windows XP和Red Hat Linux双重启动,最好先安装Red Hat Linux,再安装Windows XP。道理很简单,如果先安装Windows XP,那么后安装的Red Hat会自作主张用它的引导管理器强占ntldr的地盘,导致无法用ntldr来引导多重系统。下面介绍如何保存Red Hat Linux 9.0引导扇区。 1在Red Hat环境下备份引导扇区 安装完小红帽以后(假设安装在/dev/hda6分区)别忙着安装Windows XP,先进入小红帽,打开终端窗口,在里面键入以下命令: dd bs=512 count=1 if=/dev/hda6 of=bootsect.rh该命令的作用就是把Red Hat Linux引导扇区保存为一个bootsect.rh文件,可以将其备份到软盘上。 然后安装Windows XP(假设安装在C盘上)。安装完成以后,再把这个bootsect.rh文件拷贝到C盘根目录下。编辑C盘根目录下的boot.ini文件(注意事先去除其系统、只读属性),在里面添加下面命令: C:bootsect.rh="Red Hat Linux 9.0"保存该文件,请别忘了将boot.ini、bootsect.rh件设置回系统、隐藏和只读属性,以免今后误操作。 需要指出的是,如果先安装Windows XP也可以,不过要记住两点: (1)在安装Linux引导管理器时,切记不要把引导管理器安装在主引导记录上(以免覆盖Windows的引导管理器); (2)千万记住要制作一张Linux引导盘。 后面的任务就简单了,安装完Red Hat Linux,用Linux启动盘引导系统进入Red Hat Linux,然后用同样的dd命令制作bootsect.rh文件。 2在Windows XP环境下备份Linux引导扇区 尽管在Red Hat环境下备份Linux引导扇区比较简单,但是对于大多只熟悉Windows的朋友来说,还是显得有些麻烦。所以本文将介绍如何在Windows环境下备份Linux引导扇区。这里可以分两步走,首先是找出Linux引导扇区的扇区数,然后再将该扇区保存为一个备份文件。 (1)用分区魔术师查找Linux的起始扇区 要在Windows环境下保存Linux分区的引导扇区,就必须知道该引导扇区的扇区号。借助分区魔术师,在分区魔术师8.0的主窗口里定位Linux的/boot分区,用鼠标右键单击该/boot分区,选择“Properties”选单项。然后在打开的“Partition Properties”对话框切换到“Partition Info”标签页,找到“First physical sector”(第一物理扇区)的扇区数,如图6所示,本例是53014500。 图6 查看引导扇区的扇区号(2)用Dskprobe备份引导扇区 知道了Linux引导扇区号,就可以借助磁盘工具来备份。这里推荐大家使用Dskprobe,它位于Windows 2000/XP安装光盘里的SUPPORTTOOLS目录下的SUPPORT.cab压缩包下。 先关闭分区魔术师,然后双击Dskprobe.exe图标启动Dskprobe。由于启动后并未读入任何数据,所以显示的是全零的扇区信息。接下来单击程序界面上的“Drives”选单“Pysical Drive”选单项,弹出如图7所示的“Open Pysical Drive”对话框。 图7 选择合适的硬盘可以看到该对话框里“Available Physical Drives”列表框里列出了两块磁盘,如果是单硬盘系统,将只列出PhysicalDrive0(第一块物理硬盘)。双击所需的物理硬盘,可以看到“Close Handle”和“Set Active”这两个按钮被激活,先单击“Set Active”按钮,然后再单击“OK”按钮,即可返回到主界面。 单击主界面上的“Sectors”选单“Read”选单项,打开“Read Sectors”对话框。在“Starting Sector”文本框里输入刚才通过分区魔术师的扇区数(本例是53014500),在“Number of”文本框里输入1,然后单击“Read”按钮,则显示如图8所示的界面,这就是Linux的/boot分区的引导扇区的内容。 图8 Linux分区引导扇区内容单击“File”选单“Save as”选单项,指定保存位置(C盘根目录)、文件名(假设是bootsect.rh)即可,然后在boot.ini文件里添加合适的项C:bootsect.rh="Red Hat Linux 9.0"即可。一切就绪以后,再重启系统。此时出现了Windows XP启动选单,可以根据需要选定进入哪个系统。 160G硬盘安装Windows和Linux双系统过程及错误总结 1、先把硬盘分区,安装Windows系统。之后把Linux系统装在倒数第二个分区上(30G),最后一个分区(10G)用来做LFS。安装完成后重新启动,启动停在grub无法进入原因分析:可能因为grub无法识别160G硬盘1024柱面以后的内容。2、又想把Linux系统安装在第二个分区上,现在第二个分区为30G,我想把他分成20G+10G,(20G装Linux系统,10G做LFS)于是,在磁盘管理里,把第二块扩展分区删掉,重新创建了20G+10G的扩展分区;此时XP系统将20G分区的盘符设为D,10G盘符设为最后一个盘符。(怀疑有问题了)3、重启,硬盘安装Linux,装完重新引导,又停在grub,此时在输入root (hd0,_)时,用Tab键补齐时,无法识别出Linux的ext3及swap格式分区,此时试过又Linux的kernel硬盘引导起来,修复grub,但无效,认为是grub太低无法正常识别160G硬盘的问题,在网上重新下载新版本的grub在DOS下运行,均出现和以前相同症状。4、产生新的想法,把Linux系统安装在主分区,再在扩展分区留10G做LFS,5、在进入Diskgen进行修改分区时,发现提示1分区和7分区参数错误。发现错误:在把第二个分区30G,划分成20G+10G时,Windows划分的分区自己可以识别。但在DOS和Diskgen和grub中都会发现分区错误,不识别有误分区。6、发现真正的错误原因后,进入Windows磁盘管理器,把资料都倒入C盘,然后将扩展分区中的逻辑分区全部删掉,再重新分逻辑分区,这样可以保证逻辑分区中的各分区会紧密相连,不会产生分区参数错误。7、经重新分配逻辑分区后,再在第二块分区(第一块逻辑分区)上安装Linux,他自带的grub中写入要修改的选项,重新引导系统,grub运行正常。双系统运行正常总结:对分区的操作尽量小心,保证在底层软件不会产生歧义。在安装Linux时,报告Dbug的问题:在Windows中为Linux准备好分区后,进入Linux手动分区后。相应的硬盘编号会根据规则变化,将导致错误(在开始筹备后提示错误)。此时只需“确认”,重新进入安装,在此次进入后,手动分区时,分区内容已存在,只需再次分别选择格式化 /boot , swap, / ;分区,继续安装,则不会再出错!以下以安装 Win2000WindowsXPMagic LinuxRedhat9.0 为例 (1)先将硬盘分区分好, 一般 Linux 用 EXT3 ,每个 Linux用一个Boot分区,一个Root 分区,两个Linux共享一个Swap分区,最好再留一个Fat32以便于 Windows于Linux交换数据。关于 Linux下硬盘的命名方法请参考其他文章 (2)假设分区情况如下: Hda1:Windows2000, Hda5:WindowsXP, Hda6:Fat32, Hda7:NTFS Hda8:Redhat 的Boot分区(EXT3),Hda9 :Redhat的 Root(/)分区, Hda10:Magic Linux 的Boot分区(EXT3),Hda11 :Magic Linux的 Root(/)分区, Hda12: Swap分区(公用) 然后安装Windows 2000 ,windwosXP,Redhat,Magic ,顺序随意,但一定要将 Redhat 与 Magic Linux的引导程序(Lilo 或 Grub)安装在自己的引导分区的第一个扇区上(Hda8Redhat,Hda10Magic),不要安装再MBR上(理由稍后叙述) 安装完后会发觉Windows启动菜单里只有 Windows2000 与 WindowsXP 没有 Linux,无法进入 Linux! 接下来我们要做的是将 Linux 的启动选项加入到 启动菜单中 (3)将Linux安装光盘中的 dosutils 中的 loadlin.exe 与 vmlinuz 拷贝到一个FAT32 分区中(例如 Hda6),然后启动到DOS,转到该分区,执行 loadlin vmlinuz root=/dev/hda(x) (x) 指的是Linux安装的Root分区(本例中为 Hda9 或是Hda11,分别对应 Redhat 与 Magic),这样就能进入 Linux(magic 或 Redhat)了 (4)进入 Linux后,执行 dd if=/dev/hda(X) of=路径与文件名 bs=512 count=1 说明:a. 这条命令是将 Linux 的 启动扇区存为一个文件 b. (X) 指的是 Linux 安装的 Boot 分区(Hda8 与 Hda10 ,分别对应 Redhat 与 Magic) c. 路径与文件名是存放文件的位置与文件名 对两个Linux的Boot分区执行命令得到两个文件 例如:dd if=/dev/hda8 of=/redhat.lnx bs=512 count=1 dd if=/dev/hda10 of=/magic.lnx bs=512 count=1 (5) 将刚刚做好的两个文件拷贝到Windows 的 C 盘(Hda1) 修改 C盘下的 boot.ini 文件添加最后两行例如: boot loader timeout=15 default=multi(0)disk(0)rdisk(0)partition(1)WINDOWS operating systems multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows 2000 Professional" /fastdetect multi(0)disk(0)rdisk(0)partition(2)WINDOWS="Windows XP Professional" /fastdetect c:magic.lnx="Magic Linux1.1 beta" c:Redhat.lnx="Redhat 9.0“ (6) 重启动,菜单就会出现了。 (7) 这样安装的好处在于 Linux与 Windows 互不干扰,即使要重装 Windows,也不会影响 Linux,只要备份那两个文件 (redhat.lnx 与 Magic.lnx), 重装完后放回 C盘,再按(5)中的方法修改 boot.ini 即可。2:开始安装建议:如果您是第一次安装,最好将您电脑上的数据进行备份。如果您没有备份数据,请仔细阅读文章以后再操作,以免造成数据的破坏。1:放入Red Hat 9 的第一张光盘,重启电脑,让CD先于光盘启动。如果您看到了Red Hat的商标,那恭喜您,光盘启动成功。如果您没有看到,而是又进入了Windows,那么请进入您的BIOS,将CD-Rom先于HDD启动。2:按下Enter键,进行图形化模式的安装。之后会出现一个对话框,要求检查光盘,您可以选择skip,以节约时间。3:之后的选项卡的内容无非就是选择语言,鼠标,键盘,时间等,我就不多说了,一般选择默认就可以了。当你看到了这个单词:partition(分区)的时候,你就要小心了,因为下面将进入至关重要的分区阶段。4:分区模式有两个,第一个是自动分区,第二个是手动分区,记住,一定要选择手动分区,否则您的windows将被自动分掉了。5:好,进入了手动分区你可以看到上部,有一个图,这就是我们的硬盘分区图,你应该可以看到4个分区,其中第二个分区,就是我们的D盘。我们将把Linux创建在这个分区上,而其他分区不去动它。点击这个分区,让这个分区突出显示。1:当你选择了D盘以后,点击新建(new),也就是在D盘中再创建Linux的分区。2:弹出一个对话框,挂载点(mount)选择swap,大小设置为你内存的2倍,并选择“将分区格式化成swap”,这样,就创建了一个swap分区了。注:Linux的分区至少有两个,一个是swap分区,大小一般为你内存的2倍,主要用于虚拟内存,也就是内存数据与硬盘的交换。还有一个就是数据分区。3:好,您已经创建了一个swap分区,现在看看分区图,是不是在D盘里面又有了一个新的块了?好了,剩下的那个块我们再创建一个数据分区。点击D盘中那个剩下的块,点击新建。4:弹出一个对话框,挂载点(mount)选择 / ,即根目录,并选择“将分区格式化成ext3”,这样,就创建了一个数据分区了。注意:Linux的数据都存在/目录下,即根目录下,所以,您将根目录作为一个独立的挂载点,那就包含了所有的数据了。当然,您还可以再为某个目录创建一个分区,当然,为了简单起见,这里我们就创建一个数据分区。5:至此,我们的分区已经完成,点击下一步进行安装。如果您点击下一步的时候,得到安装程序的错误,请仔细阅读上文,并确保您的分区中包含了swap分区和数据分区。1.把硬盘分区回复给Windows 用PQ把Linux分区,删除掉再新建个Windows分区就可以了 把那个分区格称FAT32或NTFS windows就可以用了呀! fdisk /mbr 重建主引导记录 我以前是这么做的,用dos启动盘启动,删除非dos分区,然后创建分区,把所有的自由空间都分给他就完了.现在多了一个选择,你可以用xp或2k或2003的系统盘启动,在安装过程中会有提示安装在哪个分区,这时你删掉非dos分区然后再重建分区也是一样的,而且速度很快,等分区分好了,你就不安装了 如果你把引导程序装在mbr中,可能无法引导windows系统,这里用启动盘启动,然后 fdisk /mbr 就行了 如果你把引导程序装在mbr中,也就是说现在是由grub图形界面引导进入系统了,那么删除Linux分区后会导致无法进入windows系统,所以首先应该用Windows安装盘启动,进入救援模式,输入 fdisk /mbr 即可。 这样以后才能进入Windows进行删除Linux分区的操作。右击我的电脑->管理->计算机管理(本地)->存储->磁盘管理,找到Linux分区(一般是除Windows分区以外的分区,慎行!)删除就好了。 如果你的WINDOWS进不去的话,可以在选择系统的界面输入e,然后分别输入三行命令,即可进入WINDOWS 命令如下:(每写完一行按enter) rootnoverify (hd0,0) makeactive chainloader +1 装个矮人DOS工具箱,然后启动进DOS,fdisk /mbr可以了! 2.保持linux的前提下,重装windows 先装linux,再重装Windos之前,强烈建议先做以下事情: 执行以下命令备份引导扇区: # dd if=/dev/hda of=/root/Debian.bs bs=512 count=1 这样会生成一个Debian.bs,保存这个文件不会丢失的地方(不要是系统盘)。 如果有了这个Debian.bs,就一切好办了 在XP下,(重装完系统后)将刚才生成的Debian.bs拷贝到C盘根目录下。 然后修改C盘根目录下的boot.ini,在boot.ini后面加上: c:Debian.bs="Debian Linux" 同时把boot.ini的"timeout=0"改成"timeout=5" PS:在VISTA下,比较麻烦: 用管理员权限运行cmd,然后 bcdedit /create /d "Debian" /application bootsector 注:建立一个名称为“Debian”,通过加载类型为“引导扇区文件”的启动项 执行后,会返回一个GUID,下面的命令用到这个GUID bcdedit /set GUID device partition=C: 注:设置引导扇区文件所在的分区(就是这个Debian.bs所在的分区) bcdedit /set GUID path Debian.bs 注:指定引导扇区文件的路径和文件名(必需用带反斜杠,表示根目录) bcdedit /displayorder GUID /addlast 注:增加这个Debian的菜单项到末尾 最后VISTA可以在msconfig里面配置timeout