Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 操作系统 > Linux > [ZT][cu.net]安装多操作系统分区,grub的设置问题
【标  题】:[ZT][cu.net]安装多操作系统分区,grub的设置问题
【关键字】:ZT,cu.net,grub
【来  源】:http://www.cublog.cn/u/26036/showart.php?id=205863

[ZT][cu.net]安装多操作系统分区,grub的设置问题

Your Ad Here
从整理论坛的情况来看,还是有弟兄不能搞定GRUB引导多操作系统的问题。看来再次讨论还是有点必要。当然有经验的弟兄,根本就无需看这帖。如果初次安装多操作系统,总是出这样或者那样的问题。这也正常,其实最好的解决办法就是多安装几次,多format几次,这个问题一点也不难。

一。分区:

这也是大家常谈的事了,其实也没有什么难的,但这是最重要的。分区时,最好一次成功。不要给后面安装操作系统带来麻烦。比如空间的大小,分区的个数等。主、扩展以及逻辑分区的个数。这些都是最重要的。

1.硬盘划分为什么很重要?

您可以用dos下的PQ,可能这是最简单的分区工具了。主分区最好只有一个,扩展分区也是一个了。逻辑分区那就根据自己的需要来分。分区要规划好,以防为以后安装操作系统带来麻烦。要有个预期,也就是说,以防您以后安装操作系统,而没有空间。所以我们就要划分硬盘要好好的规划。以满足我们未来不可预期情况的需要。

2.我应该把硬盘划分为多少个区,每个区应该有多大?

对于这个问题,可能有的弟兄很是疑惑。其实对于我们玩家来说,无非是学习和实践。所以我们要为每个linux划分为一个区,空间大小为6G以上。现在的linux体积都很大,如果是初次玩linux,我还是建议完全安装,这样便于您的学习,否则少东少西的,自己都不知道为什么。等玩的技术差不多时,你再拫据自己的需求来选择安装组件。

举个例子,比如我想在一块硬盘上安装两个linux和一个windows,那我就可以这样来划分硬盘。把windows的分区放在硬盘的第一个分区。这个分区大家常用来安装windows系统。如果您还想为windows划分应用程序的分区以及备份文件的分区,那就把第二个和第三个等分区做为windows的分区。linux分区要放在windows的分区的后面,应该避免把windows和linux的分区交叉。我们可以用PQ把linux分区分好。为每个linux分一个大一点的分区6G以上,这里,我们将要在每个分区里,要安装一个linux,其实每个6G左右的分区,就是我们要安装linux的根分区。然后再划分一个小一点的分区,大小为内存的两倍就行。如果用PQ来划分。linux的分区格式,可以不用指定。因为安装系统时,也会有相关的步骤来格式化磁盘。

仔细看一下下面的例子:
在这里,我把安装了,两个linux和一个windows,分区情况如下。主分区是hda1,格式为ntfs,系统是XP,hda2是扩展分区,hda5是逻辑分区,格式为nfts,是windows的安装应用软件的磁盘,hda6,hda7是逻辑分区,格式为fat32的,也是windwows用的,我用来备份和存放常用程序和文档的磁盘。hda8和hda9是linux的磁盘。看一下应该能看得出来,大小为6-7G左右吧。在hda8和hda9,我每个区都安装了一个linux,也就是说,这两个分区是不同的linux的/根分区。hda10也是linux的磁盘,大小是内存的1.5倍,如果您的内存为512M或者以上的,交换分区和内存大小一样就行,格式为/swap。也就是linux的交换分区。

linux的分区,没有windows下面的C盘和D盘的概念。这一点大家应该明白。

一块磁盘最多只能分4个主分区。扩展分区也算一个主分区,所以为了简便 ,我们一块硬盘就分一个主分区,一个扩展分区,其它的都是逻辑分区。下面的例子就是。这样做的好处就是在安装linux的时候,分区表不会错,也不会出现这样或者那样危机windows分区的情况。

在linux中,逻辑分区是从hda5开始的,当然这是说一台机器中只有一个硬盘的情况来说的。如果有两个硬盘,可能就是从hdb5开始,以此类推。如果您不知道,是怎么回事,就要用fdisk -l来查看。要安装系统的时候,也会有相应的让您选择安装位置 ,也是hdaX或者 hdbX分区之类的,没有WIN的C和D盘的概念。

[root@linuxsir01 root]# fdisk -l

Disk /dev/hda: 255 heads, 63 sectors, 4865 cylinders
Units = cylinders of 16065 * 512 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 1147 9213246 7 HPFS/NTFS
/dev/hda2 1148 4864 29856802+ f Win95 Ext'd (LBA)
/dev/hda5 1148 2039 7164958+ 7 HPFS/NTFS
/dev/hda6 2040 2804 6144831 b Win95 FAT32
/dev/hda7 2805 3824 8193118+ b Win95 FAT32
/dev/hda8 3825 3830 7768163+ 83 Linux
/dev/hda9 3831 4799 7783461 83 Linux
/dev/hda10 4800 4864 522081 82 Linux swap

3.硬盘的分区划好后,我如何安装linux呢?

我们可以先安装windows,然后再安装linux,这样做的目的就是用grub能把windows引导起来。如果先安装linux,可能windows就把grub从MBR中删除。我们如果重装windwows经常会出现这样的情况,方法只是把GRUB恢复一下就行了。所以为了方便,我们还是先安装windows。这样就减少不少劳动。呵。。。。。

接着举例:

在这里,我是先安装Mandrake 9.0,到hda8,这样做的,在安装过程中,有个[自定义],在划分硬盘和安装软件时都有[自定义]。我们就选这一项,然后把光标移动到hda8,[编辑,指定分区格式和挂载点。格式为ext3,挂载点为/。OK一下,然后再移动hda10,我们编辑这个分区,格式为/swap。这样就简单了。分区都处理好了,就是选择组件来来装。下面就是点鼠标。应该简单。。。一直到最后。


然后我们安装redhat 8.0到hda9,也就是说,我们要把redhat 8.0的根分区设置为hda9。安装过程也一样的。。在划分磁盘是,要[自定义]用disk druid 来分区。光标移动到hda9,然后[编辑],格式为ext3,挂载点为/,可能会跳出一个对话框,那就anyway.吧。不用再编辑交换区了,因为系统能认得出hda10是交换区,不用我们再设置了。linux的交换区是能共用的。我们把hda9设置好后,确认一下,就进入软件安装的过程了。也是[自定久]。。。下面的就一路下去,不用我多说了。

到GRUB的设置的那一块。我们要把GRUB安装到MBR上。这样就把mandrake的GRUB覆盖。这也没有什么可怕的,我们可以把它加在Redhat 的GRUB中,系统安装好后,我们设置一下就行了。只是修改一个文件/etc/grub.conf

4.如何修改/etc/grub.conf
一般的发行版,GRUB的配置文件都在/etc/grub.conf中,如果我们安装了多个linux,就要修改这个文件。那我们如何修改呢?一般的情况下,windows是自动加载到了grub.conf中,打开grub.conf,就能看到windows的设置情况。可能有时系统会突然出现不能引志windwows的情况,我们就要下面的类似的改动一下。
title DOS
rootnoverify (hd0,0)
chainloader +1

改成
title WinXP在这里,title是必须的,WinXP,您可以用别的名,您喜欢怎么样就怎么样。
root (hd0,0)
chainloader +1

这样就能启动了。

2.如何把其它的linux的引导加入到GRUB来引导呢?我们可以用下面的方法。也是比较简单。GRUB引导linux系统,就是靠三行来定义。

title XXX
在这里,XXX是您要引导的操作系统的名字。可以自己来定。

root (hdX,Y)
在这里,X和Y都代表一个数值。X是linux的根分区在哪个硬盘上。如果您只有一个硬盘。那就是hd0。如果您的linux的一个发行版是安装在第二个硬盘,这个X,就是1。那Y代表什么?Y是代表您所安装的linux是在哪个区。这个数值有点不同。用原理没有办法说清楚。应该用实例来说。比如我把mandrake安装到hda8了。那他的root (hdX,Y),就应该写为root (hd0,7),也是说是linux所在的根分区hdaZ中的Z减去1就是这个Y的数值:在这之中,hdaZ或者 hdbZ中的Z也是一个数值。看一下上面的例子就明白了。
用fdisk -l 或者df -la来查看

kernel /boot/vmlinuz root=/dev/hdaZ
这里中的Z,也是一个数值,接着上面的例子,我们把Mandrake的引导加入到Redhat 的GRUB中。就可以写成如下的样子:


kernel /boot/vmlinuz root=/dev/hda8

通过上面的分析,我们要让Redhat的GRUB来引导Mandrake 9.0,我们要改动Redhat中的GRUB的配置文件,加入下面的一段:

title MD 8.0
root (hd0,7)
kernel /boot/vmlinuz root=/dev/hda8

如果您想加入其它的操作系统到Redhat 中的GRUB中,也不过是如此,如者用其它发行版中的GRUB来引导别的发行版,原理也是一样的。

GRUB是不是很简单???
内核clist链表数据结构初探:【上一篇】
通过自定义病毒来封杀网内QQ与MSN:【下一篇】
【相关文章】
  • 谈论Symbian 学习记录-搭建开发环境(ZT)
  • biztalk中架构验证、实例生成和验证
  • 页面树形控件dhtmlxTree、mztreeview及xtree比较分析
  • weblogic 探查内存不足/内存泄漏问题[zt]
  • CORBA 程序设计指南(ZT)
  • 用linux的安装盘恢复重装windows后破坏的grub的方法。- -
  • 深入biztalk消息以及消息订阅发布路由机制(四)-消息的轮询和执行
  • Grub on FreeBSD
  • 什么是BSP(ZT)
  • [zt]C语言嵌入式系统编程修炼之二:软件架构篇
  • 【随机文章】
  • JBuilder 2006 企业完整版
  • Visual C# 2005——超好用的DropDown与DropDownClosed事件
  • FedoraCore6で無線LANを認識させよう!
  • 网页编程结构
  • 野马table排序初探
  • Java2十大经典中文图书推荐
  • Certified to be MCTS: .NET Framework 2.0 Distributed Applications
  • FreeBSD中文IRC频道在irc.263.net
  • 走出ClassLoader迷局
  • C#的多线程机制初探
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.