精华内容
下载资源
问答
  • LILO引导程序

    2021-05-16 12:54:13
    与其他常用的引导加载程序相比,LILO引导方式显得更具有艺术性,对其深入的理解,将有助于我们方便地处理多操作系统、网络引导、大硬盘内存等诸多棘手的问题。 通常我们谈到...

    http://www.bitscn.com/plus/view.php?aid=8248

    LILO(Linux Loader)是Linux自带的一个优秀的引导管理器,使用它可以很方便地引导一台机器上的多个

    操作系统。与其他常用的引导加载程序相比,LILO引导方式显得更具有艺术性,对其深入的理解,将有助于我们方便地处理多

    操作系统、网络引导、大硬盘及大内存等诸多棘手的问题。        通常我们谈到LILO,会涉及到两个方面——LILO引导程序和LILO安装命令/sbin/lilo。为了不至于混淆这两个概念,本文将用LILO表示LILO引导程序,而lilo表示/sbin/lilo。        一般地,LILO使用一个文本文件/etc/lilo.conf作为其配置文件。lilo读取lilo.conf,按照其中的参数将特定的LILO写入系统引导区。任何时候,修改了/etc/lilo.conf,都必须重新运行lilo命令,以保证LILO正常运行。lilo.conf使用的配置参数很多,配置起来也相当复杂。下面以RedHat Linux为例作一些初步探讨,RedHat的lilo程序包版本为0.20,别的Linux发行版本可能会有所出入,但不会太大。        lilo.conf文件中的配置参数分为两部分,一部分是全局参数,另一部分是引导映像参数。与Linux系统其他的配置文件一样,“#”号后的一行文字表示注释。        一、LILO的全局参数        全局参数是全程有效的,它可以出现在文件lilo.conf中的任何地方。以下是具体的参数项:        1.backup=backup-file        在装入LILO之前将原先的引导区备份到backup-file,而不是RedHat 缺省的/boot/boot.NNNN。也可以备份到一个设备上,如: /dev/null。注意:如果原先已有一个同名文件,该参数将被忽略。我们可通过这个备份恢复原先的引导扇区:        dd if=/boot/boot.NNNN of=/dev/hda bs=446 count=1        恢复原先的MBR。(注:虽然boot.NNNN有512字节,但只能恢复前446字节到MBR。)        2.boot=boot-device        指定一个用于安装LILO的设备。通常LILO可安装在如下几个地方:        MBR:第一个硬盘的主引导区, 对应于/dev/hda、/dev/sda等。        Root:Linux根分区的超级块(Super block), 对应于/dev/hda1、/dev/hda2、/dev/hda5、/dev/sda1、/dev/sda5等。        Floppy:LILO安装在软盘上,对应于/dev/fd0。        不指定时,lilo缺省安装在根分区超级块上。        3.compact        该参数用于优化LILO,产生一个更小的“map”文件。如果在软盘上安装LILO,强烈推荐使用此参数。        4.default=name        指定缺省引导的操作系统。如default=dos 表示将label为DOS的系统作为缺省引导的操作系统。如不指定该参数,排在lilo.conf中的第一个操作系统将作为缺省操作系统。        5.delay=tsecs        在没有指定“prompt” 参数时,LILO将立即引导缺省的操作系统,“delay”参数在这之间插入一段延时,单位是1/10秒。        6.disk=device-name        为某些非标准硬盘定义参数。其内部还包括有几个可选的子参数。        bios=〈bios_device_code〉:  设备号。十六进制数0x80表示第一硬盘;0x81表示第二硬盘,依此类推。        sectors=〈sectors〉:硬盘扇区数。        heads=〈heads〉:硬盘磁头数。        cylinders=〈cylinders〉:硬盘柱面数。受系统BIOS限制,柱面数必须在1024以内。        partition=〈partition_device〉:用于物理定位特殊硬盘上的分区,有一个子参数start。        start=〈partition_offset〉:每一分区的起始扇区。        例如:        disk = /dev/sda        bios=0x80        #指定SCSI硬盘为第一硬盘         sectors = 32         heads = 64         cylinders=632        #硬盘参数为632/64/32        partition=/dev/sda1        start=2048        #第一分区起始扇区为2048        partition = /dev/sda2        start=204800        #第二分区起始扇区为204800         partition = /dev/sda3          start = 500000         partition = /dev/sda4          start = 900000        当机器上有两块硬盘,一块为SCSI硬盘,另一块为IDE硬盘时,LILO很有可能无法自动识别它们的主、从顺序,这时可进行如下设置:        disk = /dev/sda         bios = 0x80        disk = /dev/hda         bios = 0x81        #SCSI硬盘为主硬盘,IDE硬盘为从硬盘        该参数是为Linux无法识别的硬盘准备的,一般Linux可以正确识别和使用大多数硬盘,除非最坏的情况,否则不用设置它。        7.force-backup=backup-file        类似“backup”参数,但是将覆盖原有的同名文件。        8.ignore-table        通知lilo忽略无效的硬盘分区表。        9.install=boot-sector        LILO实际上包含有几个部分,而这几部分都存放在/boot/boot.b文件中。如果忽略“install”参数,则lilo认为install=/boot/boot.b。        10.linear        产生用于替换硬盘sector/head/cylinder地址(硬盘几何参数)的linear扇区地址。linear地址在运行时产生并且不依赖于硬盘几何参数。某些SCSI硬盘和一些以LBA方式使用的IDE硬盘可能会需要使用这个参数。注意,在将LILO安装到软盘上时不能使用“linear”参数。        11.lock        出现LILO提示后立即按最近一次的引导映像启动计算机。也就是说,当我们在lilo.conf中加入了该参数,然后运行lilo安装LILO,再重新启动计算机,这时LILO会提示我们选择引导哪一种操作系统,这一选择将被LILO记录下来,即“锁定”,下次启动计算机时,LILO将忽略“delay”、“prompt”等参数及键盘输入而直接跳转到其“锁定”的操作系统。        12.map=map-file        指定map文件。 没有本项时缺省使用/boot/map,每次执行lilo命令都会产生一个新的map文件。        13.message=message-file        该命令用于指定一个包含注释信息的文件,该文件将在系统打印出字符串“LILO”之前显示。如果在LILO启动时想获取较多的信息,可以编辑一个文件,再使用该命令就可以了。文件中如果包含有ASCII码为0xFF的字符(Ctrl+L)则表示清屏。注意,文件的大小不能超过65535个字节。每次文件改变之后,都必须重新运行lilo命令重建map文件,以保证其正常显示。        14.optional        当用于启动的引导映像不存在时,该参数使lilo忽略它。这对用于测试一个不长期存在的Linux核心是有用的。        15.password=password        为LILO设置口令保护,每次重新启动计算机提示用户输入口令。设置了口令后,建议将lilo.conf的文件属性改为600,以免让非root用户看到口令。        16.prompt        给出“boot:”提示,强制LILO等待用户的键盘输入,按下回车键则立即引导默认的操作系统,而按下Tab键则打印可供选择的操作系统。当“prompt”被设置而“timeout”没有被设置时,系统会一直处于等待状态而不引导任何操作系统。不设置该参数时,LILO不给出“boot:”提示而直接引导默认操作系统,除非用户按下了Shift、Ctrl、Alt三键中的任何一个。大多数情况下,如果你的硬盘上有多个操作系统,建议使用参数,它留给用户一个选择的余地。        17.restricted        与“password”联用,使“password”仅作用于在LILO提示后有命令行输入的时候。        18.serial=parameters        使用串行口控制。这将初始化指定的串口,并将使引导管理器能接受来自串口的输入。从串口发送一个中断信号相当于从控制台键盘上按下Shift键,它同样会被LILO捕捉到。如果不能保证来自串口的访问和控制台一样安全,比方说有一个modem连在串口上,建议为每个引导映像加上口令保护(password)。参数串有如下语法:        〈port〉[,〈bps〉[〈parity〉[〈bits〉]]]        〈port〉:数字表示的串口号,0表示COM1,其余类推。所有四个串口都可被使用。        〈bps〉:串口速率,支持110、 150、300、600、1200、2400、4800和 9600 bps,缺省值为2400bps。        〈parity〉:设置串口校验。一般情况下,LILO忽略奇偶校验。n表示无校验,e 表示偶校验,o 表示奇校验。        〈bits〉:字符位数,只能取7或8,缺省值是8。当有奇偶校验时只能取7。        如果设置了“serial”,即使没有设置“delay”,系统也会将“delay”项的值自动增加20。        19.timeout=tsecs        设置等待键盘输入的时长,单位是0.1秒。超过这段时间没有输入则为超时,系统将自动引导缺省的操作系统。如果不设置本参数,缺省的超时时间长度为无穷大。        二、引导映像参数        引导映像参数作用于每一个引导映像区。如果某一引导映像参数(例如:password)与全局参数的定义相

    展开全文
  • LILO引导装载器详解

    2021-05-16 12:53:15
    LILO可以被安装进可引导硬盘驱动器的 MBR或者分区的分区引导记录。它还可以安装在可移除设备上,比如软盘、CD 或USB 钥匙。如果您还不熟悉 LILO,那么在软盘或 USB钥匙上进行实践是好办法,所以我们在例子中就是这么...

    LILO(即 LInux

    LOader)是最常用的两种 Linux 引导装载程序之一。LILO

    可以被安装进可引导硬盘驱动器的 MBR

    或者分区的分区引导记录。它还可以安装在可移除设备上,比如软盘、CD 或

    USB 钥匙。如果您还不熟悉 LILO,那么在软盘或 USB

    钥匙上进行实践是好办法,所以我们在例子中就是这么做的。

    在安装 Linux

    期间,常常指定 LILO 或 GRUB 之一作为引导管理程序。如果选择

    GRUB,那么可能还没有安装

    LILO。如果是这样,那么需要安装它的软件包。我们假设您已经安装了 LILO

    包。如果您在安装软件包方面需要帮助,那么请参阅本教程后面的包管理部分。

    lilo

    命令(在 /sbin/lilo

    中)的主要功能是,写第一阶段引导记录,并且使用配置信息(一般在

    /etc/lilo.conf

    中)来创建一个映射文件(/boot/map)。这个程序还有一些辅助用法,我们稍后会提到。我们先看一个典型的

    LILO 配置文件,这个文件可能用于一个 Windows 和 Linux

    双重引导的系统。

    prompt

    timeout=50

    compact

    default=linux

    boot=/dev/fd0

    map=/boot/map

    install=/boot/boot.b

    message=/boot/message

    lba32

    password=mypassword

    restricted

    image=/boot/vmlinuz-2.4.21-32.0.1.EL

    label=linux

    initrd=/boot/initrd-2.4.21-32.0.1.EL.img

    read-only

    append="hdd=ide-scsi root=LABEL=RHEL3"

    other=/dev/hda1

    loader=/boot/chain.b

    label=WIN-XP

    上面的第一组选项是全局选项,控制 LILO

    如何操作。第二组和第三组选项是映像专用选项,分别针对要用 LILO

    引导的两种操作系统,在这个例子中是 Red Hat Enterprise Linux 3 和

    Windows XP。

    例子中的全局选项是:

    prompt

    要求显示引导提示。

    timeout

    以十分之一秒为单位指定超时时间,超过这个时间之后自动装载默认系统。例子中的

    timeout=50 表示超时时间为 5 秒。

    compact

    尝试合并对相邻扇区的读请求。这可以加快装载速度并且使映射文件更小。

    default

    指定默认情况下应该装载的操作系统。如果没有指定,就使用第一个操作系统。在我们的例子中,如果用户在

    5 秒的超时时间内没有选择其他操作系统,就将装载 Linux 系统。

    boot

    指 定在哪里安装 LILO。在我们的例子中,这是软盘

    /dev/fd0。要想在第一个硬盘的 MBR 中安装,应该指定

    boot=/dev/hda。我们的 RHEL 3 系统实际上位于

    /dev/hda11,所以如果要在这个分区中安装 LILO,就应该指定

    boot=/dev/hda11。如果忽略这个参数,LILO

    将尝试使用当前挂装为根(/)的设备的引导扇区。

    map

    指定映射文件的位置,LILO 使用这个文件向用户提供提示并且装载在

    lilo.conf 的映像部分中指定的操作系统。默认情况下,这是

    /boot/map。

    install

    指定要作为引导扇区安装的新文件。默认是 /boot/boot.b,这是 LILO

    包提供的。

    message

    指 定在引导提示之前显示的消息。这个消息的长度必须小于 65535

    字节。如果系统对 LILO 菜单显示图形化背景,那么 /boot/message

    可能包含一个图像文件。在某些 Red Hat 系统上,这是一个 PCX 格式的

    300x200 像素文件。在 SUSE 系统上,可能是 16 色 640x480 像素的 VGA

    位图。在这种情况下,还有某些其他参数。请参阅系统附带的文档。例如,在我的

    SUSE SLES9 系统上这是

    /usr/share/doc/packages/lilo/README.bitmaps。

    lba32

    指定 LILO 应该为硬盘使用 LBA32 模式而不是 CHS

    或线性扇区寻址。

    password

    指 定在引导映像之前必须输入的口令。注意,这个选项是明文的,所以

    /etc/lilo.conf

    的文件属性应该只允许根用户查看这个文件。这个口令不应该与根口令相同。password

    和下一个选项 restricted

    实际上是映像选项,但是为了方便可以在全局部分中指定。如果这样指定,相同的值应用于所有映像,除非在映像部分中被覆盖了。

    restricted

    放宽口令要求,这样只有当用户试图在引导期间提供额外参数时才要求输入口令。使用这个选项,在正常引导时用户不必输入口令,但是要想引导进单用户模式就必须提供口令。

    下一部分是 RHEL3

    Linux 系统的映像选项:

    image

    指定这个部分针对一个 Linux

    系统,应该从一个文件装载这个系统。参数是 Linux

    内核映像的文件名。

    label

    一个可选的标签,可以输入它来选择这个映像,而不必输入完整的映像名。

    initrd

    初始 RAM 磁盘

    的名称,其中包含挂装文件系统之前内核需要的模块。

    read-only

    指定根文件系统最初应该以只读模式挂装。在对根文件系统进行检查之后,后面的引导阶段常常将它重新以读写模式挂装。

    append

    指定要传递给内核的选项。我们的例子指定应该为 /dev/hdd 使用 SCSI

    仿真(2.4 以及更早的内核以这种方式处理光学设备,比如

    CD-ROM)。它还指定具有标签 RHEL3 的分区应该挂装为根(/)。

    最后一部分是非

    Linux 系统的映像选项。

    other

    指定包含待装载系统的引导扇区的设备(或文件)的设备名。

    loader

    指定要使用的装载程序。LILO 支持

    chain.b,它只是从可引导分区装载分区引导记录;LILO 还支持 chain.b

    的变体 /boot/os2_d.b,它可以用来从第二个硬盘驱动器引导 OS/2。

    label

    一个可选的标签,可以输入它来选择这个映像,而不必输入完整的映像名。

    现在,如果插入一张空软盘,可以运行 lilo

    命令(/sbin/lilo)来创建一张可引导软盘,如清单 4 所示。注意,lilo

    命令有 5 个详尽等级。多指定一个 -v 就加一级。

    现在,如果插入一张空软盘,可以运行 lilo

    命令(/sbin/lilo)来创建一张可引导软盘,如清单 4 所示。注意,lilo

    命令有 5 个详尽等级。多指定一个 -v 就加一级。

    root@lyrebird root]# lilo -v -v

    LILO version 21.4-4, Copyright (C) 1992-1998 Werner Almesberger

    'lba32' extensions Copyright (C) 1999,2000 John Coffman

    Reading boot sector from /dev/fd0

    Merging with /boot/boot.b

    Secondary loader: 11 sectors.

    Mapping message file /boot/message

    Compaction removed 43 BIOS calls.

    Message: 74 sectors.

    Boot image: /boot/vmlinuz-2.4.21-32.0.1.EL

    Setup length is 10 sectors.

    Compaction removed 2381 BIOS calls.

    Mapped 2645 sectors.

    Mapping RAM disk /boot/initrd-2.4.21-32.0.1.EL.img

    Compaction removed 318 BIOS calls.

    RAM disk: 354 sectors.

    Added linux *

    Boot other: /dev/hda1, on /dev/hda, loader /boot/chain.b

    Compaction removed 0 BIOS calls.

    Mapped 6 (4+1+1) sectors.

    Added WIN-XP

    /boot/boot.0200 exists - no backup copy made.

    Map file size: 8192 bytes.

    Writing boot sector.

    我们现在有了可引导 LILO 磁盘。如果

    LILO 遇到错误,就可能会看到错误消息而且不写引导扇区。例如,如果在

    /etc/lilo.conf 文件中忽略了 lba32 选项,就可能看到清单 5

    那样的输出。这提示尝试 linear 或 lba32

    选项。在这个例子中,使用命令行指定 -l 选项,这相当于在 lilo.conf

    中指定 linear 选项。如果使用 -L 选项再试一次,lilo

    应该会成功,输出应该与前面的清单一样。

    清单 5:

    [root@lyrebird root]# lilo

    Warning: device 0x030b exceeds 1024 cylinder limit

    Fatal: geo_comp_addr: Cylinder number is too big (16284 > 1023)

    [root@lyrebird root]# lilo -l

    Warning: device 0x030b exceeds 1024 cylinder limit

    Fatal: sector 261613688 too large for linear mode (try 'lba32' instead)

    在测试了引导磁盘之后,修改 lilo.conf 文件中的 boot=/dev/fd0 项,将

    LILO 安装在 MBR 或分区引导记录上。例如, boot=/dev/hda 将 LILO

    安装在第一个 IDE 硬盘的主引导记录上。

    您现在大致了解了

    LILO 及其配置文件,包括如何从 lilo

    命令行覆盖某些配置选项。可以使用命令 man lilo 在 lilo

    的手册页中找到更多信息。在 lilo 包安装的 postscript

    用户指南中甚至有更丰富的信息。这应该安装在文档目录中,但是对于不同系统,准确的位置不一样。寻找文件的一种方法是通过

    grep 过滤包清单。清单 6 显示了这个例子中使用的基于 rpm 的 RHEL3

    系统的 LILO 用户指南位置。

    清单 6:

    [ian@lyrebird ian]$ rpm -ql lilo | grep ".ps$"

    /usr/share/doc/lilo-21.4.4/doc/Technical_Guide.ps

    /usr/share/doc/lilo-21.4.4/doc/User_Guide.ps

    LILO

    有几个辅助命令。

    lilo -q

    将显示映射文件中的信息。

    lilo -R

    将 lilo

    设置为只在下次重新引导时自动引导指定的系统。对于自动重新引导远程系统,这非常方便。

    lilo -I

    将显示关于内核路径的信息。

    lilo -u

    将反安装 lilo 并且恢复原来的引导记录。

    当 LILO 引导 Linux

    系统时,您可能希望在引导时提供额外的参数。例如,如果图形化启动不起作用了,您可能希望引导进模式

    3(即单用户模式)以便进行恢复。在标签名后面输入的任何文本将被传递给内核。例如,在我们的例子中,通过简单地输入“linux”来选择

    RHEL 系统。要想引导进模式

    3(即单用户模式),可以输入以下字符串之一:

    linux

    3

    linux single

    还要记住,对于

    LILO,每当更新了配置文件(/etc/lilo.conf)的时候,必须 运行

    lilo

    命令。如果添加、移动或删除了分区,或者做了可能使产生的引导装载程序无效的其他修改,那么也应该运行

    lilo 命令。

    (本文摘自IBM中国网站Linux专区“LPI 101 考试准备:

    Linux 安装与包管理”课程。作者:Ian

    Shields , 高级程序员, IBM)

    展开全文
  • Linux和Windows多系统共存时,引导过程相对来说比较复杂...”其实常见的Linux引导途径,只有引导软盘,Lilo,Grub,和在MS-DOS环境下用Loadin.exe引导。而NT OS Loader是不能够引导Linux的。大家“所谓的”用NT OS...

    Linux和Windows多系统共存时,引导过程相对来说比较复杂。而且容易引起一些错误概念。比如经常看到有的网友这样问:“我要引导XXX Linux,应该用Lilo,Grub,还是NT OS Loader?”

    其实常见的Linux引导途径,只有引导软盘,Lilo,Grub,和在MS-DOS环境下用Loadin.exe引导。而NT OS Loader是不能够引导Linux的。大家“所谓的”用NT OS Loader引导Linux时,中间都要通过Lilo或者Grub这一步。In another word,如果你的Linux安装时候就没有安装引导程序,而是打算一直用软盘引导的话,你也就无法用NT OS Loader去引导这个Linux。

    用NT OS Loader引导Linux的过程应该是这样:NT OS Loader->grub (or lilo) ->Linux。

    这个过程是通过如下几个步骤实现的:

    1、在MBR或某个分区的引导扇区上安装Grub或者Lilo,使其成功引导Linux。

    2、在Linux下用dd命令把被安装的Grub或者Lilo读出来并写在一个文件上,这个步骤相当于给Grub或者Lilo做了个备份,随后即使原来装Grub或者Lilo的地方被清除掉,也可以用留下来的这个文件借助NT OS Loader实现跟以前一模一样的引导过程。

    3、修改Boot.ini让NT OS Loader引导刚才读出来的Grub或者Lilo。

    至于这个被NT OS Loader 引导起来的Grub能干些什么,完全看你自己的配置,可以通过修改Menu.lst文件让他引导任何受支持的系统或者另外的引导程序。你可以让他引导仅仅一个Linux,并把默认时间设置为0,从而造成NT OS Loader直接引导Linux的假象。也可以让他引导从Linux到Unix,BSD的N个系统,排出长长的一个系统列表。我甚至曾经让NT OS Loader 和 Grub两者之间互相循环引导。

    如此看来,NT OS Loader和Grub是平起平坐的,他们之间互相可以引导,但对于系统的支持却是各有自家的本事。NT OS Loader离开了Grub就别想引导Linux/Unix/BSD;而Grub虽说很强,也不可能绕过NT OS Loader对MS的NT4/2000/XP/Server2003直接进行引导。

    但是像MS-DOS,Windows9X/Me这样的系统概念就模糊了。说得通俗一点,这类微软的早期系统既可以被NT OS Loader直接引导,也可以被Grub直接引导。如果你机器上只有一个MS-DOS/9X/Me,而没有NT OS Loader时就装了Grub的话,Grub就会直接引导这个系统。而如果你装Grub时已经有NT OS Loader,那么Grub就会通过NT OS Loader来引导这个系统。甚至可以这样:硬盘1上的NT OS Loader -> 硬盘1上的Grub -> 硬盘2上的 Windows9X/Me/MS-DOS。(符号->表示直接引导)

    另外还有几点需要注意:

    1、Grub理论上可以引导任何相同或不同硬盘上的NT OS Loader,但反之,想用NT OS Loader引导不同硬盘上的Grub却不行。这里不同硬盘上的Grub是指这个Grub在被dd成文件之前安装在跟NT OS Loader不同的硬盘上。

    2、Grub和Grub之间可以直接互相引导(不过互相循环引导次数过多会内存溢出而死机,即使中间通过NT OS Loader来间接引导也不能避免,Grub对内存的要求似乎比NT OS Loader高),但NT OS Loader和NT OS Loader之间却不可以。只能通过Grub把两个NT OS Loader连起来。使之可以间接互相引导。而这样连起来的两个NT OS Loader即使互相循环引导次数再多也不会出现错误。

    3、同一台机器上的一个Linux可以被不同的N个Grub引导。但一个NT系统却不能被两个NT OS Loader引导。M$可能在后面做了什么,让NT核心的系统安装时候就被绑在了默认的NT OS Loader上(可以是跨硬盘的绑定)。安装一结束,你就只能用这个NT OS Loader来引导他。任何想从别的NT OS Loader引导这个NT系统的尝试,都会被一个找不到文件的错误拒之门外。

    4、硬盘1上的NT OS Loader -> 硬盘1上的Grub -> 硬盘2上的 MS-DOS。在用这种引导方式时,假如最后被引导的MS-DOS上装有Windows3.x,那么MS-DOS虽然会正常启动,但Windows3.x却会因提示无法找到文件而无法正常进入。解决办法是在硬盘2中装一个NT OS Loader。就会按如下过程顺利启动:

    硬盘1上的NT OS Loader -> 硬盘1上的Grub -> 硬盘2上的 NT OS Loader -> 硬盘2上的 MS-DOS -> 进入Windows3.x。

    最后,对于想让Windows和Linux在两块硬盘上并存的网友,给出下列引导建议:

    首先,建议把所有的Windows放在一个硬盘,所有Linux放在另一个硬盘。如果不然,下列的某些建议可能无法实现。

    一、用Linux多余用Windows的类型

    这类可用Grub作主引导程序,这样就不必在意每个引导程序安装的位置了。因为Grub是通吃所有硬盘的。

    (1) 先把所有Windows装好。

    (2) 再一个个的装Linux,把带有你想用的Grub版本的Linux放在最后安装。

    (3) 安装最后一个Linux时就把Grub安装在Linux盘的MBR上。

    这样开机后Grub菜单出来,你可以选择:

    1、 选择Grub菜单中的任何一个Linux系统。

    2、 进入NT OS Loader 菜单选择任何一个Windows系统。

    二、用Windows多余用Linux的类型

    这类可用NT OS Loader作主引导程序。然而由于NT OS Loader不支持跨硬盘引导其他引导程序,Grub就必须装在Windows盘里。

    (1) 分区时要在Windows盘里的最后多划出一个分区,分区大小在理论上有512字节就够了,实际上一般习惯分出几M(太小了也不支持)。格式化成FAT和ext均可。

    (2) 之后就按照“1,”里的顺序安装所有系统。

    (3) 在完成“1,”之后,进入Linux,进入Grub提示符,用setup (hdx,x) 把Grub安装在Windows盘后面新划出来的那个小分区里。

    (4) 用dd命令把那个小分区的前512字节读出来存成文件。

    (5) 把文件添加到NT OS Loader的启动选项中。

    (6) 把Windows盘设置成主启动硬盘。

    这样开机后NT OS Loader菜单出来,你可以选择:

    1、选择NT OS Loader菜单中的任何一个Windows系统。

    2、进入Grub 菜单选择任何一个Linux系统。

    Grub是很灵活的软件,NT OS Loader也不笨。两者虽然互有不足,但如果配合起来使用,不管你有几个硬盘,几个系统,都可以设计出一个快洁完善的引导方案。

    展开全文
  • 目录:1、启动引导程序概要2、lilo 的安装与配置3、grub的安装与配置4、两种引导程序的切换5、附:编译内核时的lilo 设置1、启动引导程序概要2、lilo 的安装与配置3、grub的安装与配置4、两种引导程序的切换5、附:...

    目录:1、启动引导程序概要

    2、lilo 的安装与配置

    3、grub的安装与配置

    4、两种引导程序的切换

    5、附:编译内核时的lilo 设置

    1、启动引导程序概要

    2、lilo 的安装与配置

    3、grub的安装与配置

    4、两种引导程序的切换

    5、附:编译内核时的lilo 设置

    与lilo相关的一个文件是:/etc/lilo.conf(这个文件由 liloconfig 这个指令生成) 。

    双系统的情况下,执行lilo.conf 好像没有 检测到我的win7系统,编译内核后,它只识别到了两个内核。下面是添加原来 window启动项的步骤。

    5.1 查看自己的设备名

    sudo fdisk -l

    我的部分结果如下:

    设备 启动 Start 末尾 扇区 Size Id 类型/dev/sda1 * 4096 94380031 94375936 45G 7 HPFS/NTFS/exFAT/dev/sda2 94384126 488396799 394012674 187.9G f W95 扩展 (LBA)/dev/sda5 94384128 241180671 146796544 70G 7 HPFS/NTFS/exFAT/dev/sda6 241184768 304099327 62914560 30G 7 HPFS/NTFS/exFAT/dev/sda7 304099392 346042431 41943040 20G 7 HPFS/NTFS/exFAT/dev/sda8 346044416 366061567 20017152 9.6G 83Linux/dev/sda9 366063616 378073087 12009472 5.7G 82 Linux 交换 /Solaris/dev/sda10 378075136 381071359 2996224 1.4G 83Linux/dev/sda11 381073408 429117439 48044032 22.9G 83Linux/dev/sda12 429119488 433121279 4001792 1.9G 83Linux/dev/sda13 433123328 464371711 31248384 14.9G 83Linux/dev/sda14 464373760 480387071 16013312 7.7G 83Linux/dev/sda15 480389120 484390911 4001792 1.9G 83Linux/dev/sda16 484392960 488396799 4003840 1.9G 83 Linux

    我装双系统时,是在240G的固态硬盘的win7下,使用分区工具diskgenius 划出71G为空闲,然后使用u盘启动的方式安装ubuntu16.04,以自定义分区的方式,在空闲空间自己给不同的目录分区。

    上面 /dev/sda8 时linux 的根目录挂载的区, /dev/sda1 是我的 window 的C盘区。

    5.2 往 /etc/lilo.conf 添加 window启动项

    在文件最后添加:

    ### win7 operation system ###########

    other= /dev/sda1

    label= "Win7-64bit"table= /dev/sda

    注: other: linux 系统引导项使用的是image,而其他系统使用other ,后面填写启动的系统所在的区

    label:这里是显示在启动面板的名称,长度不能超过16个字符

    table:分区表所在的外部设备 ,我的硬盘是固态硬盘,说以分区是以 sdaX 名,table要填的,就是去掉数字后的设备名,我这里相应的就是 /dev/sda

    如果是普通硬盘的话,我不确定是hdaX或者是 hdX,放在填上去掉数字的那个名称就是了:/dev/hda 或 /dev/hd

    添加之后保存,进入下一步。

    5.3 重新执行

    sudo /sbin/lilo

    让结果更改生效。如果出错的话继续会去修改吧。 (语法参考:man lilo.conf)

    看到结果列出的列表里包含了你的window那就证明成功了,重启即可看到window选项了。

    展开全文
  • 引导加载程序之争: LILO 和 GRUB

    千次阅读 2015-11-21 09:30:12
    通过本文了解引导加载程序的工作原理,认识两个流行的引导加载程序 LILO(LInux LOader)和 GNU GRUB(GRand Unified Boot loader), 并研究两者各自的优点和缺点。什么是引导加载程序?最简单地讲,引导加载程序...
  • Linux引导管理器GRUB、GRUB 2和LILO简介来源:互联网作者:佚名时间:2013-04-10 13:32了解如何为您的 Linux 系统选择和配置一个引导程序。您可以使用本文中的资料来学习,为参加 Linux 系统管理员认证的 LPI 101 ...
  • 当然,不排除有优良的发行版本和更新的内核源码和工具可以不再用自己DIY,以下只是讲讲我自己动手的经历:首先,要有一个可分区安装Linux的USB移动硬盘,理论上Flash U盘也可以,SD/XD等闪存卡+读卡器也可以,不过...
  • 从普通的桌面用户到 Linux® 系统管理员,部分 Linux 用户都使用过一种名为引导加载程序的工具。此类工具的不同变种会提供不同层次的支持和功能。在很多情况下,Linux 发行版默认安装的引导加载程序并不总是适合...
  • 当机器引导它的操作系统时,BIOS会读取引导介质上最前面的512字节(即人们所知的主引导记录(Master Boot Record,MBR))。在单一的MBR中只能存储一个操作系统的引导记录,所以当需要多个操作系统时就会出现问题,...
  • 在Linux和WINDOWS两系统并存时就需要安装GRUB(Grand Unified Bootloader),GRUB被广泛地用于替代lilo,GRUB支持在启动时使用命令行模式,支持md5加密保护 还可以从ext2/ext3、ReiseFS、JFS、FAT、minix及FFS文件系统上...
  • 打开计算机时,计算机执行存储在ROM中的引导代码,这些代码接下来尝试确定如何加载并启动内核。内核检测系统的硬件,然后产生系统的init进程,这个进程总是PID 1。...引导加载程序:LILO和GRUB现在GRUB...
  • 01 grub rescue修复–sata接口的硬盘(适用...06 grub和lilo都可以用于linux的系统加载程序,在传统mbr模式下,它们是在执行mbr引导程序后加载到内存执行的,其作用是加载操作系统内核。现在linux用grub引导的居多。
  • 在安装Linux系统时,Linux会将硬盘分区,而这种分区...因此,要解决的问题是删除现有的Linux分区并修改硬盘的主引导记录(MBR),使其适宜安装Windows。 为达到这个目的,你先要从Linux所在硬盘或CD启动——最初拿
  • 而某些系统自带的多系统引导程序(如 LILO,NT Loader等)则可以将自己的引导程序放在系统所处分区的第一个扇区中,在Linux中即为两个扇区的SuperBlock. 注:以上步骤中使用的是标准的MBR,多系统引导程序的引导过程与此...
  • LILO是一个在Linux环境编写的Boot Loader程序(所以安装和配置它都要在...下面让我们看看几种典型情况下硬盘的主引导扇区和各个分区的引导扇区内程序的内容。(1)计算机上只装了DOS一个操作系统这种情况和刚才介绍的DOS
  • 也可以选择将 LILO 安装到 /dev/hdb3(示例中的 Linux 分区),这样需要向 /dev/hda 安装另一个引导加载程序,并令其指向 LILO 引导加载程序;然后只需要让 LILO 作为二级引导加载程序。通常,引导加载程序应该位于 ...
  • lilo命令用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理...作为一个 较老的/最老的 Linux 引导加载程序,它那不断壮大的 Linux 社区支持使它能够随时间的推移而发展,并始终能够充...
  • 目录:1、启动引导程序概要 2、lilo 的安装与配置 3、grub的安装与配置 4、两种引导程序的切换  5、附:编译内核时的lilo 设置 1、启动引导程序概要 2、lilo 的安装与配置 3、grub的安装与配置 ...
  • Linux和Windows多系统共存时,引导过程相对来说比较复杂...”其实常见的Linux引导途径,只有引导软盘,Lilo,Grub,和在MS-DOS环境下用Loadin.exe引导。而NT OS Loader是不能够引导Linux的。大家“所谓的”用NT OS...
  • 硬盘基础知识及如何从硬盘引导启动系统 转载请注明出处:http://blog.csdn.net/rosetta 硬盘基础知识  硬盘的基本存储单位为扇区(Sector),每个扇区一般为512bytes。  一个硬盘有多个盘片,每个盘片有两面,...
  • 环境:移动硬盘分四个区,第一个区diskone为ext3...思路:把Debian的GRUB装到移动硬盘MBR上(原来有LILO,不过我更喜欢GRUB),用来引导puppy。最终得到的结果是:移动硬盘下面有两个关键目录,grub里面是引导程序(D...
  • LILO详细介绍

    千次阅读 2017-11-28 20:41:49
    Download包含了几个种类,与通常所说的bootloader与uboot 完全不一样。 ...LILO是一个在系统启动时运行的程序,它允许...可以用LILO引导几个不同的操作系统,如Linux和MS-DOS。用LILO可以定义一个默认的要引导的
  • lilo命令用于安装核心载入,开机管理程序。lilo是个Linux系统核心载入程序,同时具备管理...作为一个 较老的/最老的 Linux 引导加载程序,它那不断壮大的 Linux 社区支持使它能够随时间的推移而发展,并始终能够充...
  • LILO不依赖于一个特定的文件系统,可以启动一个操作系统(例如,从软盘和硬盘启动Linux内核 镜像)。在启动时有十六种不同的镜像可供选择。各种参数,如根设备参数,可以为每种内核单独设置。LILO可以放在主引导记录...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,597
精华内容 4,638
关键字:

lilo引导大硬盘