4.1. 配置 LILO 启动加载器

LILO 是用于 Intel 机器上的 Linux 启动加载器。Intel 机器上还存在其他启动加载器,常见的替代方案是 GRUBSYSLINUX。对于其他处理器架构,存在与 LILO 等效的启动加载器,它们的名称通常是基于 "LILO" 的变体。

关于 LILO 的文档位于 lilo(8)lilo.conf(5) 手册页中;LILO Linux 通用启动加载器 … 用户指南 位于文件/usr/share/doc/lilo…/doc/User_Guide.ps;以及 LILO mini-HOWTO

LILO 的配置文件保存在文件/etc/lilo.conf。文件的第一部分适用于所有镜像。以下部分是image每个内核的描述。

设置 LILO 以使用串行端口。串行线路参数的语法遵循内核使用的语法。

图 4-1. LILO serial 命令的语法,以 EBNF 表示

serial=<serial_port>[,<speed>[<parity>[<data>]]]

其中变量与内核使用的变量相同(如图 2-7 所示),以及

图 4-2. LILO serial EBNF 变量

<serial_port> ::= 0 | 1| … | 3

我们的示例使用/dev/ttyS0LILO 将其识别为端口0.

图 4-3. LILO 启动加载器示例配置

serial=0,9600n8
timeout=100
restricted
password=PASSWORD

参数restrictedpassword用于避免有人拨入、启动机器并通过输入以下内容绕过 Linux 访问权限

示例 4-1. 使用内核参数避免访问权限

LILO: linux init=/sbin/sash

密码应该足够强度,因为它可用于获取 root 访问权限。LILO 密码以明文形式存储在配置文件中,因此它不应与任何其他密码相同。应设置配置文件的权限,以便只有 root 可以读取/etc/lilo.conf.

bash# chmod u=rw,go= /etc/lilo.conf

LILO 有一个选项可以显示启动消息。但这不适用于串行控制台。删除任何如下行

message=/boot/message

LILO 现在配置为使用串行控制台。从 LILO 启动的内核尚待配置为使用串行控制台。