+ -
当前位置:首页 → 问答吧 → lilo:如何实现类似GRUB的chainloader从一个引导备份文件引导系统?[已解决]

lilo:如何实现类似GRUB的chainloader从一个引导备份文件引导系统?[已解决]

时间:2007-10-12

来源:互联网

先后实现了 lilo 和 grub 从 reiser4 文件系统中引导系统。看上了lilo的 password 可以加密启动项的功能。但lilo不如grub灵活,我已经将grub的引导信息导出为文件了,如何让lilo切换到grub呢?这个引导备份文件在第一主分区的 boot 目录下,文件名为 MBR_sda1 。lilo.conf应该如何写呢?

/ 2007 10 14 /
问题解决了。是从 (hd0,2)+1 上引导的,不是以文件的方式。lilo可以实现我要的效果。
补充: (hd0,2)+1 ,第一硬盘第三主分区的第一扇区含有 GRUB 引导信息。

这样, Lilo 启动时,可以选择名为 GRUB 的启动菜单,按Enter键之后此时屏幕上出现 GRUB 引导菜单并提示输入密码。由于已改 /etc/lilo.conf 为 600 权限,属主:组为root:root,也不必担心密码不安全了。

这是我的 /etc/lilo.conf 文件:
代码:
# Begin /etc/lilo.conf
# lilo.conf
#
# global options
boot=/dev/sda
keytable=/boot/uk.ktl
lba32
map=/boot/map
prompt
timeout=100

# set the name of the default image to boot
default=Pure64

# define an image
image=/boot/clfskernel-2.6.22.6-64bit
 label=Pure64
 root=/dev/sda1
 read-only
 password="xxxxxxxxxx"
 vga=792

# optionally add parameters to pass, e.g.
# append="video=radeonfb:1024x768-16@70"

# repeat for any other kernel images
image=/media/sda2/boot/clfskernel-2.6.22.6-64bit
 label=x86_64
 root=/dev/sda2
 read-only
 password="xxxxxxxxxx"
 vga=792

# optionally, add legacy operating systems
# see man lilo.conf for examples

# repeat for any other kernel images
# Loader GRUB form (hd0,0)+1
 other=/dev/sda3
 label=GRUB
 password="xxxxxxxxxxx"

作者: tfkdmwmqtr   发布时间: 2007-10-12

看不明白樓主意圖,能否先說明 Grub 下是如何引導?

另,Grub 也可以設置 password 的

作者: d00m3d   发布时间: 2007-10-12

是这样的:
GRUB安装到MBR或boot 或 / 分区的第一扇区。
dd 将此扇区导出为文件,比如 此文件名为sda1,将它 放到第一主分区某目录(比如 boot 目录)。
GRUB可以用 chainloader (hd0,0)/boot/sda1 的方法读此文件的引导信息,并尝试引导系统。
lilo 如何办到?
看过 man lilo.conf 后还是很模糊,尝试多次均未成功。

GRUB ,我不知道如何加密启动项。我想达到的效果是,选择某启动项在敲下 Enter 键尝试启动时提示输入密码。GRUB支持交互式引导,可以在开机时选择命令模式和编辑模式,但这太好用了。

作者: tfkdmwmqtr   发布时间: 2007-10-12

N 久没有用 lilo 了,但印像中 lilo 是没有这种引导方式的

一直以为 lilo 该被淘汰了,直到读过 CLFS Pure64 的手册才知道 Grub 竟然是不能取代它的呢!

作者: d00m3d   发布时间: 2007-10-13

9494啊
lilo 不可替代。 grub 未出 64bit 补丁。如果想用,可以拷贝 32 位的 /usr/lib/grub/i386/* 到 /boot/grub/ ,然后用LiveCD的 grub 写到引导扇区。但此法有时候会有一些问题,在reiser4文件系统中并非百发百中,可能今天好好的,明天就无法启动 GRUB 了。
Pure64 系统自身没有 grub 程序,无法在系统运行时写引导。所以 Pure64 选择了 lilo 。
lilo加密启动项,这样似乎更安全。 /etc/lilo.conf 改为 600 权限,普通用户就无从得知 密码了。
Non-Multilib比较简单。而 x86_64-Multilib 很复杂,往往因为一个软件包编译有问题或者软件包自身有问题导致以后的软件都有问题,查错较难改错更难。x86_64-Multilib 拿来练手还可以,真正要用难度还是比较大,或者说我还要继续提高。

作者: tfkdmwmqtr   发布时间: 2007-10-13

问题已解决,见第一帖,已经编辑过帖子了。
最新的 lfslivecd 也是有 grub 和 lilo 两个引导装载程序。

作者: tfkdmwmqtr   发布时间: 2007-10-14