|
9#

楼主 |
发表于 2008-12-2 18:25:23
|
只看该作者
不过我觉得,解决问题是次要得,关键是弄懂原理
我之前之所以会问这个问题,是因为我用EZBooT用成了惯性思维
没有想到换个关键字搜索,Climbing 提醒了我
后来我就用 GRUB puppy之类关键词搜索了一下
发现有以下几个版本得menu.lst
版本1:
default 0
timeout 10
title Puppy Linux
kernel /vmlinuz
initrd /initrd.gz
title Windows PE
root (hd0,0)
savedefault
makeactive
chainloader +1
==============================
版本2:
U 盘安装,很简单,把 U 盘格式化成FAT32格式(其它格式没试过),然后用 syslinux 制作成可引导的 U 盘,并把那个下载下来的iso 文件解开放在 U 盘的根目录,把 isolinux.cfg 重命名为 syslinux.cfg,并把其中的 “pmedia=cd”去掉就行了。
硬盘非正式安装,把上述解开的 iso 文件下的东西同样复制到一个 FAT32 分区(估计ext2等也行,没试过)的根目录下,再在我已经有的 grub 菜单中加入 Puppy Linux 的启动项就行了。我在 grub 的menu.lst加的内容如下:
title Puppy Linux
root (hd0,8)
kernel /vmlinuz root=/dev/ram0
initrd /initrd.gz
boot
版本3:
title Puppy Linux
kernel (hd0,0)/vmlinuz root=/dev/ram0 PMEDIA=idehd
initrd (hd0,0)/initrd.gz
title Puppy Linux in RAM
kernel (hd0,0)/vmlinuz root=/dev/ram0 PMEDIA=idehd pfix=ram
initrd (hd0,0)/initrd.gz
版本4:(就是C版主给的)
title Puppy-Linux
find --set-root /PUP_411.SFS
kernel /vmlinuz root=/dev/ram0 PMEDIA=usbhd
initrd /initrd.gz
下面将分析。。。。。。。。。。。。。
比较这几个版本得menu.lst
区别主要在如下地方
1.介质指定
C版主给的是PMEDIA=usbhd,因为我的U盘是用深度得USB启动工具制作得
当然这个不是问题所在
关键得在下面
2.根文件系统得指定
这一点大同小异,版本3使用了完整得路径,因为在安装Grub时,本机硬盘为hd0,移动硬盘为hd1,所以要将Grub安装到hd1。而使用移动硬盘引导时,移动硬盘则成了hd0,故需要在menu.lst中注意修改
C版主给的是相对路径,就是版本4
实际上,版本1既没有介质指定,也没有根文件系统得指定,而是直接而简单得启动内核
这个方法不敢苟同(PS:puppy linux比较特殊,是运行在ram里面得,不把root设定到ram里面可否运行,我待会儿试试)
3.根文件系统得二次指定,也是我疑惑得地方放,望版主解答!
在版本4里面,C版主两次指定root,当然,对于对于puppy linux比较特殊得系统,其文件系统由PUP_411.SFS挂载生成在ram里面,有没有必要在GRUB里面指定这个root呢?
我想,puppy linux的INITRD应该会完成这个工作吧???(待会儿我在试试)
附上光盘里面的ISOLINUX.CFG
default puppy
display boot.msg
prompt 1
label puppy
kernel vmlinuz
append initrd=initrd.gz pmedia=cd
timeout 50
对syslinux得引导机理不清楚,但是觉得有些东西是相通得
实际上,这个里面也没有指定root
那么,上面,设定root得动机何在呢??????????
我新手,以上不对处纯胡诌,各位原谅~~~~~~~~~
[ 本帖最后由 showgo 于 2008-12-2 19:00 编辑 ] |
|