当前位置:Linux教程 - Linux - 用LILO轻松实现多系统引导

用LILO轻松实现多系统引导



         用LILO引导多系统

      LILO是LInux LOader的简写。它是一个系统引导管理程序,支持 PC/MS-DOS, OS/2, Win95/98, Windows NT, 386BSD, SCO UNIX,Unixware等多种操作系统的引导。安装Linux时一般应选择在Master boot record(MBR)安装LILO。我的硬盘装了六个系统(Win98,Win2000, Redhat Linux 6.2,Happy Linux 1.0,Xteam Linux 3.0,Manderake Linux 7.0),如果不是硬盘太小(只有10G),再装几个(Turbo Linux 6.0,BluePoint 2.0)一点不成问题。我能让这么多系统和平共处,当然是依赖于LILO。
      我用Xteam Linux 3.0中的LILO做多系统引导的。以下是lilo.conf文件内容。

    boot = /dev/hda
    map=/boot/map
    install=/boot/boot.b
    prompt
    lba32
    timeout = 250
    default = win           缺省引导Win98/win2000
    vga = normal
    read-only
    image=/boot/vmlinuz-2.2.16-xtm15   Xteam的内核
    label=xteam                
    root=/dev/hda9        Xteam root分区的位置 
    read-only
    image = /boot/redhat         Redhat 6.2的内核     
    label = redhat
    root = /dev/hda7          Redhat root分区的位置
    image = /boot/mdk Manderake 7.0的内核
    label = mdk
    root = /dev/hda11          Manderake root分区的位置    
    image = /boot/Happy          Happy的内核              
    label = happy
    root = /dev/hda13          Happy root分区的位置   
    other = /dev/hda1 win98所在分区
    label = win
    PASSWORD =jimmy

      安装Linux过程中,硬盘分区是比较关键的一点。C盘或其它逻辑盘空间分大了,会出现LILO不能安装的问题。这是因为LILO要求/boot分区必须在1024柱面之前。这时用Partition Magic是最明智的。把C盘Resize,在最前面分出20M的空间,创建为Linux Ext2主分区,安装时,加载这20M的分区为/boot分区,再安装LILO就OK了!当然在DOS状态下用loadlin也能引导Linux,但这对于初学者来未免太复杂。小红帽是做得最体贴的,它是先配置硬件(键盘、鼠标、显卡、显示器等)、安装LILO后再复制文件的,这在我用过的Linux版本中是唯一的,它的硬件检测能力也是最强的。不过它也有1024柱面的限制。Xteam安装中虽没有1024柱面限制,但修改lilo.conf文件以图加入其它系统而执行lilo时,会出现错误信息,所以不能用它引导其它系统。你是不遇上这样的情况:当你等待所有的文件拷贝完但因不能正确安装LILO而功亏一篑,真是恼火!或在添加Linux根分区和交换分区时,出现“Boot partition too big"这样的提示信息,我就碰到过几次,只能选择退出。对于这种情况,最简单的解决办法就是用Partition Magic分区,分区类型选Linux Ext2,swap,安装时直接选指定加载点(Mount Point)即可。
      实现win9x、winnt、win2000和Linux的多引导是容易的。怎么用LILO引导其它Linux版本?如果你对你的系统很熟悉的话,你可以直接编辑/etc目录下的lilo.conf配置文件,加入其它Linux启动信息(内核、标签、根分区),再执行lilo即可。KDE中有一个Klilo程序以图形化界面轻松实现对lilo的配置,另一个比较好的工具是linuxconf,它包括了绝大多数的Linux配置。比如我用Xteam 3.0中的lilo管理六个系统的引导,lilo.conf内容如上。C盘2G是win98,D盘 2G是 win2000 professional,E盘1.5G是我的个人文件和下载软件,F盘300多兆存了一些图片。Xteam的根分区是/dev/hda9,Redhat,Manderake,Happy的根分区分别是/dev/hda7,/dev/hda11,/dev/hda13。分区之间的相互访问是容易的,你要做的是把其它Linux的内核拷贝到Xteam下的/boot目录,比如,cp /redhat/boot/vmlinuz-2.2.14-5.0 /boot/redhat,其中/redhat是redhat 6.2根分区在Xteam 3.0的加载点,即把redhat的内核拷贝到/boot,并更名为redhat。在Klilo或linuxconf中,指定内核时,直接输入/boot/redhat就行了。其它类同。
      你大概注意到了lilo.conf文件末的一句:PASSWORD =jimmy。这是什么意思?如上所述,缺省引导系统是Win98/win2000,当启动出现“boot:”时,回车,即告诉lilo引导标签为win的系统。你看见了什么?“password:”!怎么要密码呀?原来就是那一句“PASSWORD =jimmy”在起作用。这倒提供了一个给硬盘加密码的好办法!如果再给Bios设置加密码,启动顺序改为先C后A,这个密码就不好破了。如果能从软盘或光盘启动,去密码就是a piece of cake!就像我去超级保镖2000加的密码,用不了一分钟!但我听说有人为了去除保镖的“保护”,格式化硬盘、重新分区都不起作用!给Linux启动加密码,方法类同,在root=/dev/hdaxx下加一行PASSWORD =******(你的密码,记好了!),再执行lilo,一切OK!
    发布人:lingering 来自: