免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1205 | 回复: 0
打印 上一主题 下一主题

可爱的小芭比……Debian下为移动硬盘装上puppy(使用GRUB引导) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-07-07 17:05 |只看该作者 |倒序浏览

               
环境:
移动硬盘分四个区,第一个区diskone为ext3格式,原来装的slax,不想用了,删掉;
主机装的Debian单系统,lenny,没有Windows,所以国内网上流传的方法不适用了,只好边爬英文论坛边自己研究。
思路:
把Debian的GRUB装到移动硬盘MBR上(原来有LILO,不过我更喜欢GRUB),用来引导puppy。
最终得到的结果是:
移动硬盘下面有两个关键目录,grub里面是引导程序(Debian里面拷贝过来的),puppy是操作系统(光盘镜像里面拷贝过来的);
移动硬盘的MBR里面是GRUB的stage1。
过程(曲折的探索过程就不细说了,直接说可以正确完成的结果;照顾新手,还算比较详细):
下面的活都是在root权限下干的
1、准备文件:
下载puppy-4.2.1-k2.6.25.16-seamonkey.iso,我直接下载的英文版,中文以后慢慢再配置。
将这个镜像挂在到一个目录中,例如我在我家干活的实录:
debian:/home/yuliang# pwd
/home/yuliang
debian:/home/yuliang# mkdir puppy
debian:/home/yuliang# mount -o loop puppy-4.2.1-k2.6.25.16-seamonkey.iso puppy
然后直接把puppy这个目录拷贝到移动硬盘中(移动硬盘的分区我自己设了卷标,所以是diskone,如果没设卷标应该是sda几之类的,SATA硬盘):
debian:/home/yuliang# cp -r puppy /media/diskone
debian:/home/yuliang# umount puppy
2、准备引导:
Debian本身就有GRUB,我直接将Debian的GRUB转移到了移动硬盘上了:
拷贝了Debian里面/boot/grub下的所有文件到移动硬盘第一个区:
debian:/boot# pwd
/boot
debian:/boot# cp -r grub /media/diskone
所以/media/diskone/grub这里便也有了全套的stage文件
3、编写menu.lst:
debian:/media/diskone/grub# vi /media/diskone/grub/menu.lst
完整的无注释版内容如下(引导的重要步骤,比较关键):
default         0
timeout         3
title Puppy Linux
kernel /puppy/vmlinuz ramdisk_size=256000 root=/dev/ram0 pmedia=usbflash psubdir=puppy
initrd /puppy/initrd.gz
注意:title下一行没有root(hd*,*)之类的选项,因为会造成无法启动。
4、安装引导(引导的关键步骤,比较重要):
本机硬盘和移动硬盘都是SATA的,所以本机的叫(hd0),移动硬盘叫(hd1),第一个分区叫(hd1,0)
debian:/media/diskone/grub# grub
grub> find /grub/stage1
(hd0,0)
(hd1,0)
find这一步就是查找一下stage文件,(hd0,0)这个也被find到了,因为(hd0,0)恰好是我的boot分区。(hd0,0)是本机硬盘,(hd1,0)便是移动硬盘了,移动硬盘里面的stage1文件就是第二步从本机grub目录拷贝过来的。
grub> root (hd1,0)
Filesystem type is ext2fs, partition type 0x83
grub> setup (hd1)
Checking if "/boot/grub/stage1" exists... no
Checking if "/grub/stage1" exists... yes
Checking if "/grub/stage2" exists... yes
Checking if "/grub/e2fs_stage1_5" exists... yes
Running "embed /grub/e2fs_stage1_5 (hd1)"...  17 sectors are embedded.
succeeded
Running "install /grub/stage1 (hd1) (hd1)1+17 p (hd1,0)/grub/stage2 /grub/menu
.lst"... succeeded
Done.
完成。
重启从移动硬盘启动,便可以进入puppy了,具体的使用网上有的是,不再赘述。
后记:
将puppy安装在单独的目录里面,和grub目录里面的引导程序分开是有好处的,如果需要安装多个puppy,可以直接新建一个目录,拷贝新的文件,然后menu.lst里面添加一项新的启动记录,只需修改内核等文件的位置和kernel里面的psubdir这个参数即可。
               
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/68417/showart_1988598.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP