disk=/dev/hda
bios=0x80
#由于IDE硬盘存在双硬盘问题,所以当启动DOS系统时,会提示“无系统盘或系统盘错!”,需修改程序如下。
disk=/dev/hdb
bios=0x81
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
linear
prompt
timeout=50
default=dos
image=/boot/vmlinuz-2.2.11-1
label=linux
root=/dev/hda1
read-only
other=/dev/hdb1
label=dos
map-drive = 0x80
to = 0x81
map-drive = 0x81
to = 0x80
#交换两硬盘主、从顺序
table=/dev/hdb
配置好lilo.conf文件后,在root账户下执行lilo命令,新的LILO就被载入系统。上面第一个例子执行结果如下:
#lilo
Added linux
Added dos*
Added sco
(注:带*号的表示其为缺省操作系统)
五、LILO提示信息
LILO在运行时会给出一些提示信息,了解它的含义对我们正确配置lilo.conf或查找硬件错误是有帮助的。
当LILO装入它自己的时候,显示单词 “LILO”:每完成一个特定的过程显示一个字母。如果LILO在某个地方失败了,屏幕上就停留几个字母,以指示错误发生的地方。
注意,如果磁盘发生瞬间故障,可能会在第一个字母“L”后插入一些十六进制数字(磁盘错误码)。除非LILO停在那里并不停地产生错误码流,否则并不说明有严重问题。
没有提示: LILO没有安装或者安装LILO的分区没有被激活。
L〈错误码〉 : LILO的第一部分已经被装入并运行了,但它不能装入第二部分的引导程序。两位数字的错误码指示问题的类型(参见“磁盘错误码”),这种情况通常是在介质访问失败或硬盘参数错误。
LI: LILO第一部分正确但是第二部分执行时出错。这一般是硬盘参数有误或/boot/boot.b被移动后没有重新运行map安装程序。
LIL: LILO第二部分开始执行,但是不能从“map”文件中读取描述符表( descriptor table)。 这通常是因介质错误或磁盘参数有误引起的。
LIL?: LILO在错误的地方加载。原因与“LI”大致相同。
LIL-:描述符表(descriptor table)错误。典型原因是硬盘几何参数微妙的不匹配或/boot/boot.b被移动而没有运行map安装程序。
LILO: LILO执行正确。
1010101010: 分区情况已经改变却没有重新安装LILO,另外,超频也可能会出这种情况。
六、磁盘错误码
0x00:“内部错误”。 由LILO扇区读取子程序产生。可能是因为被破坏的文件,重建map文件试试看。另一个原因也许是,当使用“linear”参数时去访问超出1024的柱面。
0x01:“非法命令”。这意味着LILO访问了BIOS不支持的硬盘。
0x02:“没找到地址标记”。通常是介质问题,多试几遍看看。
0x03:“写保护错”。 仅在写操作时出现。
0x04:“扇区未找到”。典型的原因是硬盘参数错误。
0x06:“激活顺序改变”。这应该是短暂的错误,再试一次。
0x07:“无效的初始化”。BIOS没有适当地初始化硬盘,热启动一次或许有帮助。
0x08:“DMA超出限度”。这不应当发生,重新启动。
0x09:“DMA试图越过64kB边界”。这不应当发生,建议忽略“compact”参数。
0x0C:“无效的介质”。这不应当发生,重新启动看看。
0x10:“CRC错误”。检测到介质错误。建议多启动几次,运行map安装程序,把map文件从坏块写到正常的介质上。
0x11:“ECC纠正成功”。读错误发生然后被纠正,但是LILO并不知道这个情况,终止了启动过程。
0x20:“控制器错误”。一般不应发生。
0x40:“定位失败”。这可能是介质问题,重新启动试试。
0x80:“磁盘超时”。磁盘或驱动器没有准备好。介质坏了或磁盘没有转,也有可能是从软盘启动而没有关上软驱门。
0xBB:“BIOS错误”。一般不应发生,如果反复发生,可考虑去掉“compact”参数或添加删除“linear”参数。
如果在写操作过程中发生错误,则在错误码前有个前缀“w”。尽管写错误并不影响启动过程,但它们暗示了系统中存在某种错误,建议重新配置LILO成只读格式(read-only)。
LILO的配置相当复杂,读者只有在实践中不断学习、摸索,勤于思考,才能用好LILO。