综合资讯 技术文章 原文阅读 在线商城 下载专区 DATASHEET 技术论坛 商务频道

电子技术 | 技术资料 | 嵌入式系统 | 单片机专题 | DSP专题
EDA/PLD专题 | 电源技术专题 | 电子制作专题 | 其他综合 | 芯片选型

所在的位置:首页在线阅读嵌入式系统linux 笔记(一)正文
 
系统管理—启动—多系统安装

多系统安装

首先确定

    如果你的计算机上没有安装任何操作系统,请首先安装 Windows,然后再安装 Red Hat Linux。可以为 Windows 创建一个指定大小的分区。在硬盘驱动器上保留足够的空闲空间(没有被分区或格式化的分区)来安装 Linux。

    如果你想要安装 Red Hat Linux 的计算机上目前运行的是 Windows (或某种其它操作系统),你需要做出一项重要决定。 你的选择是:

    ·已安装了 Windows,但是让Red Hat Linux代替它成为唯一操作系统吗?如果答案是肯定的,你没必要配置双引导系统。把想保留的信息全部备份,然后开始安装。在安装中,如果你在「磁盘分区设置」 屏幕中选定要安装程序自动为你的系统分区,请选择「删除系统上所有分区」。如果你选择要用 Disk Druid 或 fdisk 来手工分区,删除所有现存的 DOS (Windows) 分区,然后创建你的 Linux 分区。

    ·你想安装 Red Hat Linux ,然后既可以引导 Red Hat Linux 又可以引导你的另一个操作系统吗?执行此类 Red Hat Linux 安装可以在你的系统上安装 Red Hat Linux 却又不影响另一个操作系统。既然你已经装有 Windows,你需要:先为Linux分配磁盘空间,然后再在双引导环境中安装 Red Hat Linux。这就是后面两节的内容。

分配磁盘空间


    在重新配置硬盘驱动器之前,把所有重要的信息备份。如果你不是特别小心谨慎,重新配置硬盘会导致数据丢失。除此以外,请确定为两个操作系统各自创建一个引导盘,以防万一引导装载程序不能够识别任何一个操作系统。

    如果你在系统上已安装了 Windows,你必须有可用的空闲空间才能在其中安装 Red Hat Linux。可供选择的方法有:

    ·添加一个新硬盘。
    ·使用一个现存的硬盘或分区。
    ·创建一个新分区。

    添加新硬盘驱动器为 Red Hat Linux 腾出空间的最简单办法是给计算机添加一个新硬盘驱动器,然后在该驱动器上安装 Red Hat Linux。例如,如果你给计算机添加了第二个 IDE 硬盘驱动器,Red Hat Linux 安装程序将会把它识别为 hdb,而把现存的驱动器 (被 Windows 使用的)识别为 hda。(对于 SCSI 硬盘驱动器,新安装的 Red Hat Linux 硬盘驱动器将会被识别为 sdb,而现存的硬盘驱动器将会被识别为 sda。)

    如果你选择要为 Linux 安装新硬盘,你该做的只是启动 Red Hat Linux 安装程序。启动 Red Hat Linux 安装程序之后,请确定你选定的是在新安装的硬盘驱动器上安装 Linux (例如 hdb 或者 sdb)而不是在被 Windows 使用的硬盘驱动器上安装。

    使用现存硬盘驱动器或分区另一种为 Linux 腾出空间的办法是,使用目前被 Windows 使用的磁盘驱动器或分区。例如,假设 Windows 资源管理器 显示了两个硬盘驱动器, C: 和 D:。这可能表明计算机有两个硬盘驱动器,或一个带有两个分区的硬盘驱动器。在以上任何情况下,(假设硬盘驱动器上有足够的磁盘空间),你都可以在 Windows 识别为 D: 的硬盘驱动器或磁盘分区上安装 Red Hat Linux 。

    在你的计算机上有两个硬盘驱动器或磁盘分区时,可以利用一个你想在其中安装 Linux 的本地 Windows 分区,请执行下列步骤:

    将所有选定硬盘驱动器或分区上(在这个例子中是 D: )你想保留的数据都复制到另外一个地方。

    启动 Red Hat Linux 安装程序,然后令其在指定的分区或驱动器上安装 Linux - 在这个例子中,硬盘驱动器或分区被 Windows 标为 D:。请注意,Linux 区分硬盘驱动器和磁盘分区。因此:

    如果在这台计算机上的 C: 和 D: 是指两个分开的硬盘驱动器,安装程序将会把它们识别为 hda 和 hdb (IDE) 或 sda 和 sdb (SCSI)。请通知安装程序在 hdb 还是 sdb 上安装。

    如果 C: 和 D: 是指一个单个驱动器上的两个分区,安装程序将会把它们识别为 hda1 和 hda2 (或 sda1 和 sda2)。你可以在 Red Hat Linux 安装过程中的分区阶段删除第二个分区 (hda2 或 sda2),然后 为 Linux 拨发未分配的空闲空间。在开始安装 Red Hat Linux 之前,你不必删除第二个分区。

    创建新分区第三种为 Linux 腾出空间的办法是在被其它操作系统使用的硬盘驱动器中为 Red Hat Linux 创建一个新分区。如果 Windows 资源管理器 只显示了一个硬盘驱动器 (C:),而且你不想添加新硬盘驱动器,那么,你就必须为硬盘分区。分区后, Windows 资源管理器 将会看到一个较小的 C: 驱动器,然后,当你运行 Red Hat Linux 安装程序的时候,你可以用驱动器的剩余空间来为 Linux 分区。

    你可以使用一个破坏性的分区程序,例如 fdisk,来分隔硬盘驱动器,但是这么做之后, 你将需要重装 Windows。(这可能是你的最佳选择。)

安装Linux


    当 Windows 已被安装,而且你已为 Linux 准备了空闲磁盘空间之后,你就可以启动 Red Hat Linux 安装程序了。这时候,普通的 Red Hat Linux 安装与配置双引导系统的 Red Hat Linux 安装间的区别仅存在于硬盘驱动器分区和引导装载程序配置中。

    当你运行到了 「磁盘分区设置」 屏幕中时,磁盘分区安装程序中的 「磁盘分区设置」 屏幕中有几个选项。根据你的选择而定,配置双引导系统的方法也有所不同。

(如果不知道要创建多少个 Linux 分区,推荐:
    ·等于内存容量两倍的 /swap 分区, - /swap 分区用来支持虚拟内存。换句话说,当没有足够的内存来容纳你的系统正在处理的数据时,这些数据就被写入 /swap。你的交换分区的最小值应该相当于你的计算机内存的两倍和32MB中较大的一个值。
    ·75MB的 /boot 分区 - 这个挂载在 /boot 上的分区包含操作系统的内核(允许你的系统引导Red Hat Linux),以及其它几个在引导过程中使用的文件。对大多数用户来说,75MB引导分区应该是足够了。警告:不要把 /boot 分区创建为LVM类型。
    ·1.5到4.5 GB的 / 分区 - 这是“/”,即根目录,除了贮存在 /boot 分区上的以外所有文件都位于根分区上。个人桌面或工作站需要硬盘空间为1.5 GB,安装全部软件需要4.5 GB。)

如果你选择:

    ·自动分区 - 选择「保留所有分区,使用现有空闲空间」。这一选项将会在你的硬盘驱动器上保留你的 Windows 分区,而使用空闲空间或附加硬盘驱动器为 Red Hat Linux分区。

    ·使用 Disk Druid 来手工分区 - 不要删除现存 Windows 分区(它们是类型为 vfat 的分区)。在附加硬盘驱动器上,或你为 Red Hat Linux保留的空闲空间上创建 Linux 分区。

    ·使用 fdisk 来手工分区 - 与使用 Disk Druid 相似,只是你将看不到图形化界面。基本步骤是相同的。不要删除类型为 FAT16、 FAT32、或 NTFS 的现存分区。在附加硬盘驱动器上,或你为 Red Hat Linux 保留的空闲空间上创建 Linux 分区。

    配置引导装载程序当你在 Red Hat Linux 安装中运行到了 「安装引导装载程序」 这一屏幕时,选择要安装的引导装载程序。你可以使用不同的引导装载程序来引导 Red Hat Linux 和 Windows。 Red Hat 不支持其它引导装载程序,因此,本章节将只讨论如何配置 GRUB 或 LILO 来引导这两个操作系统。

    Red Hat Linux 安装程序通常会检测到 Windows 并自动配置引导装载程序(GRUB 或 LILO)来引导 Red Hat Linux 或 Windows。这可以在安装程序中的引导装载程序屏幕中看到。 一个名为「DOS」的项目会出现在要引导的操作系统列表中。

    安装后安装之后,无论你在什么时候启动计算机,你都能够在引导装载程序屏幕中指明你想启动的是Red Hat Linux还是另外的操作系统。 选择「Red Hat Linux」来引导 Red Hat Linux,选择「DOS」来引导 Windows。

    如果你没有把硬盘驱动器中全部空闲空间拨给Red Hat Linux,你可以在安装Red Hat Linux之后把它拨给Windows。最好使用fdisk来创建这些分区。其它分区软件会改变硬盘驱动器上的分区表,并移动Linux分区。

进一步:NTloader引导双系统


前面的文章就是NT和Linux共存的最简单的方法。也即在安装linux的lilo时,选择将lilo安装在LInux主分区的引导区中。然后使用win98的启动盘重新启动以后,运行fdisk将linux主分区设置为active,这样就可以实现在系统启动时首先进入lilo选择,若不选择linux,则进入NT loader。

但是有时候为了方便而需要使用NT loader 来引导linux,下面就是实现的方法。

你应该牢牢记住的最重要的一点是,许多软件产品会利用硬盘上面仅有的那个宝贵的主引导记录MBR。NT是这样,没有选择余地;Linux也可以这样,如果你喜欢。机器的BIOS会执行储存在当前激活分区的信息,来初始化你希望的操作系统。

NT安装后,MBR会被修改成去引导一个在激活分区的根目录下,叫NTLDR的程序。原来的MBR会被存到一个叫BOOTSECT.DOS的小文件中。NT安装完成后要记住绝不能覆盖这个MBR, 否则NT将无法启动。以防万一, NT的用户需要NT的应急修复磁盘(Emergency Repair Disk,ERD)。

记住了这些后,就要注意设定LILO时***不能***装到MBR中去,而是装到Linux的root分区中去。这样,对NT而言,不会带来问题;而Linux没有MBR也可以活下去。

NT的引导过程

当NTLDR启动, NT用户看到"OS Loader V4.xx" 后,它会切换处理器到386状态,并启动一个非常小的文件系统。接着,它会去读BOOT.INI文件,看是否有其它操作系统存在,并显示一个选择菜单。下面是一个典型的BOOT.INI:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)WINNT

[operating systems]
multi(0)disk(0)rdisk(0)partition(2)WINNT="NT V4 is here"
multi(0)disk(0)rdisk(0)partition(2)WINNT="NT V4 VGAMODE" /basevideo /sos
C:="DOS is here"
BOOT.INI有两部分构成。 "boot loader section"部分指定菜单在屏幕上的停留时间,和缺省菜单选项。"opearating systems section" 部分指定可选的操作系统种类。可以看到机器可以启动NT(以标准模式或VGA安全模式)和DOS。从这个例子我们可以推断,DOS从硬盘C:(第一个硬盘的第一个分区)启动,而NT从第二个分区启动。典型安装时,会以DOS的FAT文件系统格式化一个C:的分区,然后将NT装在另外一个NTFS(NT文件系统)的分区。

如果用户选择了启动NT, 另外一个程序NTDETECT.COM,就会开始进行硬件检查。如果一切正常,NT内核就会被装入,正如我们都知道的那样。

再来看如果启动的不是NT的情形。此时,NTLDR 需要知道非NT OS引导所必需的引导扇区是哪个。此时,相应的引导扇区映象必须要在一个小小的512字节的文件中。比如,要引导DOS,NTLDR 将会寻找一个叫BOOTSECT.DOS的引导扇区映象文件。 这个映象文件是NT的安装程序产生的。

那么, 引导Linux又是怎样呢?这很简单,需要的只是一个引导扇区映象文件,姑且称之为BOOTSECT.LIN (在本文稍后会看到如何得到这个文件)。 必须将BOOTSECT.LIN 放到C:, 并要修改 BOOT.INI。此时"operating systems ection"部分看起来应该是这样的:

[operating systems]
multi(0)disk(0)rdisk(0)partition(2)WINNT="NT V4 is here"
multi(0)disk(0)rdisk(0)partition(2)WINNT="NT V4 VGAMODE" /basevideo /sos
C:="DOS is here"
C:BOOTSECT.LIN="Now Linux is here"
修改BOOT.INI, 可以用任何普通ASCII文本编辑器(比如记事本)。这个文件的正常属性为系统-隐藏-只读,所以你必须用 'attrib' DOS 命令或在NT中,用文件属性对话框中来变更属性。

现在我们将注意力转到Linux。我们需要安装Linux,定制LILO,产生BOOTSECT.LIN文件。

第一步是装好Linux。我们都知道怎么做:为Linux选适当的系统,SWAP,和用户分区,运行安装程序,等等。一切顺利时,这一步在45分钟之内就可以完成。

接下去就要定制LILO。我们知道怎么做,但要注意*不能* 将LILO装到MBR中去(除非你想将NT吞了:-))。设定LILO时,要选择将它装到你Linux 的root分区。如果你还不知道如何设定LILO, 就花几分钟读读HOW-TO文献,或者就用一些好的安装程序,我是用S.u.S.E.的, 因此我的安装程序就是 'yast' (Yet Another Setup Tool)。

LILO定制好之后,(为行文方便, 此处假设Linux的root分区是/dev/hda3)我们必须用'dd'来产生引导记录映象文件。以root Login后,按以下做:

# dd if=/dev/hda3 bs=512 count=1 of=/dosc/bootsect.lin

如果没有能将FAT C: partition mount成为 /dosc,譬如说由于这个分区被以NTFS方式格式化,不能访问这个分区。此时可以将 BOOTSECT.LIN写到一个以DOS方式格式化的磁盘中,或者NT能读的其它什么分区也可以。如果BOOTSECT.LIN不是被放到C:,要记住此时应相应修改BOOT.INI文件。

现在可以从NT Loader菜单中选择Linux了。NTLDR将会装载BOOTSECT.INI,就可以看到LILO的提示。
    最后,你可以设定LILO在选择提示时能去引导Linux和C: 上的DOS。就可以再次回到C: 分区上的NT Loader。前文描述的方法可以反复进行,如果你希望能选择引导多个Linux,就必须为每一个Linux都产生一个相应的引导扇区映象文件。


返回 上一页 下一页   信息发布:工号01   转引自: 【 】 【打印】 【关闭

关于我们 ┋ 友情链接


深圳市福田区海滨广场恒福花园恒华阁11F
电话:0755-88305872 传真:0755-88305880
Copyright©2005-2007 无忧电子开发网版权所有

粤ICP备05064233号