无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 20947|回复: 21
打印 上一主题 下一主题

[分享] 已换成CDlinux!GRUB仿真Beini正确加载“奶瓶”,自适应ATA主从盘、SATA!

[复制链接]
跳转到指定楼层
1#
发表于 2010-9-17 00:24:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近重新制作了,主要改了两方面:

一、放弃Beini了,无线“研究方面”换成CDlinux!
CDlinux全中文界面,对各类硬件的支持相当好,内置浏览器等各类工具,可以直接上网和播放视频,无敌强悍!
最重要的是,用于无线研究后出“结果”,能通过内置的无线网络管理界面很快进行实际“测试”,连配置都不用配置,优Beini和BT4,在这也BS BT4要上网那一大堆麻烦配置!!

二、由GRUB4DOS来引导,再转向Bootmgr!
受CDlinux的启发,把启动盘的第一引导程序改为GRUB4DOS,再转向Bootmgr专门去启动Windows!GRUB4DOS作为开源……最主要是直接支持FAT、NTFS、EXT和ISO9660,安装到U盘后兼容性比Bootmgr好,光盘用grub来引导也特别简单(只要把grldr增加扩展名,改名为grldr.bin或grldr.img等,再用UltraISO把它当启动镜像写入的光盘镜像即可实现用grldr来引导!!!!),用grldr作为主引导,可以把bootmgr放到想要的目录中去,不用再放在根目录,且可省略grldr.mbr文件,使启动文件更加简洁,整体思路更清晰!

(MBR)  ................................(由分区管理软件生成,保持默认,兼容优秀)
(PBR)  ................................(由bootice.exe生成,指向根目录grldr文件,良好兼容性)
  grldr  ................................(GRUB4DOS的启动管理器)
  boot  ................................(启动相关目录)
    CDlinux  ................................(CDlinux系统目录)
    fonts  ................................(Bootmgr的字体目录)
    grub  ................................(grub的配置文件,只要menu.lst即可,如要中文则增加 fonts.gz)
    img  ................................(各种镜像文件)
    support  ................................(各类支持或帮助说明文件)
    zh-cn  ................................(Bootmgr的界面简体中文字体目录)
    bcd  ................................(Bootmgr的配置文件)
    boot.sdi  ................................(启动WIM文件必要的虚拟盘模板,精简过)
    bootmgr  ................................(微软的Windows启动管理器)
    memtest.exe  ................................(微软的内存测试程序)


_____________________________________________________________________________________

我的启动盘,可在GRUB仿真Beini的ISO正确加载“奶瓶”,自适应ATA主从盘、SATA!

注:我已经在XXXX发表了相关的帖子,但重点是在引导beini的ISO,所以我在这里主要想共享我的启动盘制作理念……

----------------------\...分割线.../----------------------

硬件配置:
SSK多功能USB总线读卡器/HP本本内置PCI-E总线读卡器+杂牌8GB TF卡,Virtual Box 3.2.8虚拟机磁盘控制器ATA、SATA等。

----------------------\...分割线.../----------------------

分区格式:
Diskgenius格式化TF卡为USB-HDD模式,文件系统为FAT32。

----------------------\...分割线.../----------------------

文件来源:
/bootmgr文件 可从安装光盘获得
/grldr文件 从GRUB4DOS 0.4.4获得,可先编辑内置菜单指向menu.1st以加快启动或省下menu.lst文件
/boot目录 可从Windows 7安装盘根目录boot整个复制,可删除fonts目录里的无用字体,保留chs_boot.ttf和wgl4_boot.ttf
/boot/grub目录 可从GRUB4DOS 0.4.4获得(如果你不要在GRUB中显示中文、背景,那其实只要grldr.mbr一个文件即可)
/boot/image/wpe2x86.wim文件 来自“[090821]71.2MB精简版PE2.1,256M内存20秒硬盘启动,硬盘驱动、安装系统通吃”一帖的Windows PE 2.1 内核
/boot/image/wpe3x64.wim文件 来自Windows 7 x64 64bit安装光盘resource目录中的boot.wim
/boot/image/dos.img文件 来自深山红叶DOS工具2010版,70多MB软盘模式
/boot/image/beini.iso文件 来自beini 1.2.1的ISO光盘镜像,删除tce中,只保留boot文件夹,16MB
/boot/bsd 用bcdedit命令编辑
/boot/menu.lst 用记事本等文本编辑器编辑
/boot/bootect.exe 从Windows 7安装目录windows\system32目录中获得
/tce 来自beini 1.2.1的ISO光盘镜像里的tce目录
(这是看到奶瓶的关键)

注:boot目录和GRUB目录中其它文件不详述……


----------------------\...分割线.../----------------------

启动架构:
MBR——由Windows 7内置的Bootsect命令带/nt60 /MBR参数生成的标准格式

PBR——由Windows 7内置的Bootsect命令带/nt60 参数生成的标准格式,指向根目录bootmgr文件

Bootmgr——Windows nt60 自带的启动管理器,采用Windows 7版本,指向/boot/bcd文件
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bcd文件主要启动项如下:
1.Windows PE 2.1 32bit——指向/boot/image/wpe2x86.wim文件
2.Windows PE 3.0 64bit setup——指向/boot/image/wpe3x64.wim文件
3.GRUB for DOS——指向/boot/grub/grldr.mbr文件
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


grldr.mbr——这是bootmgr引导grub所必要的

grldr——根目录中GRUB4DOS 0.4.4启动管理程序,指向/boot/grub/menu.lst
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
menu.lst文件主要启动项如下:
1.beini 系统——指向/boot/image/beini.iso文件
2.dos 系统——指向/boot/image/dos.img文件
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


----------------------\...分割线.../----------------------

我这么布置启动盘文件的原因是:

1.这种启动方式因使用Windows 7的bootmgr启动管理器,包括MBR、PBR都是由Windows 7生成,格式标准且兼容性好

2.bootmgr支持EFI,可从PCI-E或USB总线闪存卡、U盘、ATA主从盘、SATA各端口、SCSI各端口和最新的SAS各端口磁盘控制器引导,可直接挂载WIM和VHD镜像,加快启动速度。

3.串联GRUB启动管理器,利用GRUB灵活性,可挂载IMG和ISO镜像,通用性强,可加载LINUX、BSD、MAC OS X、DOS。

4.综合了先进的Windows 7版的Bootmgr启动管理器和著名开源启动管理器的GRUB的优点,可正常引导U盘中的Window 7差分磁盘VHD镜像、Win PE 1.x 2.x 3.x ISO或WIM镜像,LINUX LIVE CD等ISO,以及各种DOS工具的IMG镜像,灵活性强,扩展方便,文件结构简单!





[ 本帖最后由 zyphio 于 2011-1-4 20:33 编辑 ]
2#
 楼主| 发表于 2010-9-17 00:40:04 | 只看该作者
自己顶,占楼备用……
回复

使用道具 举报

3#
发表于 2010-9-17 09:07:31 | 只看该作者
学习了啊,这个蛮复杂的啊。
回复

使用道具 举报

4#
发表于 2010-9-17 09:33:10 | 只看该作者
学习了,帮顶顶!楼主有没有办法把Beini1.1和Beini1.2.1都集成在一个光盘里?
就是一个ISO光盘集成两个Beini的ISO光盘。
回复

使用道具 举报

5#
发表于 2010-9-17 10:04:21 | 只看该作者
好象没有什么实质内容,以前测试过
map --mem /boot/image/beini.iso (hd32)
map --hook
chainloader (hd32)
boot
这样加载不成功
回复

使用道具 举报

6#
 楼主| 发表于 2010-9-17 13:55:41 | 只看该作者

回复 #5 lee88889999 的帖子

哈……实质内容确实没有……

如何设计启动盘,有千万种做法千万种选择……

这次主要是分享制作的思路而已……
回复

使用道具 举报

7#
 楼主| 发表于 2010-9-17 14:02:47 | 只看该作者
原帖由 lee88889999 于 2010-9-17 10:04 发表
好象没有什么实质内容,以前测试过
map --mem /boot/image/beini.iso (hd32)
map --hook
chainloader (hd32)
boot
这样加载不成功



map --mem /boot/image/beini.iso (hd32)
map --hook
chainloader (hd32)
boot

无法加载成功?!其中/boot/image/beini.iso可以改为ISO文件所在的位置……如果你放的位置不是上面路径,这个可是要改一下的哦……不是直接COPY……

还有,这是标准的GRUB4DOS加载ISO的指令,只要是可启动的ISO,都是可以如此加载并启动,当然,有些人为了严谨,会在最前加上find语句确认ISO文件……但这不影响加载……即找不到ISO文件出错了……还是会反回GRUB界面……

另外,我的GRLDR的版本是GRUB 4 DOS 0.4.4和0.4.5(beta),都试过,一切正常……

或者,你所谓的加载不成功是指看不到奶瓶……我在1楼有说明了……要把ISO中tce文件夹外置到启动盘的根目录才可以看到奶瓶……
回复

使用道具 举报

8#
 楼主| 发表于 2010-9-17 14:08:52 | 只看该作者
原帖由 renchmin 于 2010-9-17 09:07 发表
学习了啊,这个蛮复杂的啊。


哎……复杂吗?我是自认为比很多启动盘简单得多了……只要编辑两个文件,即BCD和Menu.lst(其实只要用到Bootmgr和GRUB,就一定会修改到这两个文件),其它的都可以直接COPY得到……
回复

使用道具 举报

9#
 楼主| 发表于 2010-9-17 14:15:04 | 只看该作者
原帖由 2010dgnanhua 于 2010-9-17 09:33 发表
学习了,帮顶顶!楼主有没有办法把Beini1.1和Beini1.2.1都集成在一个光盘里?
就是一个ISO光盘集成两个Beini的ISO光盘。



内核方面可以很容易搞定,就是分别加载beini不同版本的ISO即可,至于tce文件夹扩展,这个就不太方便了……有两个思路:要么要用哪个版本就手动改名……要么得修改tinycore集成文件中对tce文件夹路径的定义……虽说这不太难……但不想折腾了……

[ 本帖最后由 zyphio 于 2010-9-17 14:24 编辑 ]
回复

使用道具 举报

10#
发表于 2010-9-17 20:40:28 | 只看该作者
原帖由 zyphio 于 2010-9-17 14:15 发表



内核方面可以很容易搞定,就是分别加载beini不同版本的ISO即可,至于tce文件夹扩展,这个就不太方便了……有两个思路:要么要用哪个版本就手动改名……要么得修改tinycore集成文件中对tce文件夹路径的定义 ...


U盘跟硬盘集成两个版本的Beini容易搞定,就是一个ISO文件下集成两个版本的Beini的ISO搞了好久没成功。除非用Easyboot来搞,主要是不想用这个软件。
回复

使用道具 举报

11#
 楼主| 发表于 2010-9-17 23:04:53 | 只看该作者
原帖由 2010dgnanhua 于 2010-9-17 20:40 发表


U盘跟硬盘集成两个版本的Beini容易搞定,就是一个ISO文件下集成两个版本的Beini的ISO搞了好久没成功。除非用Easyboot来搞,主要是不想用这个软件。


tce文件夹的位置严格上是说是记录在bzImage里的,而bzImage是Linux内核,要用特殊的方法去解包修改重编译……太折腾了……

我的想法是在同时把两个ISO合成一个,boot与tce目录分别重命名,在ISO加入第二层GRUB引导,指令如下,但XXXX那个地方太难表示了……

    title Start beini 1.1
    kernel /boot_1/bzImage quiet max_loop=255 tce=XXXX/tce_1 waitusb=30
    initrd /boot_1/tinycore.gz

    title Start beini 1.2
    kernel /boot_2/bzImage quiet max_loop=255 tce=XXXX/tce_2 waitusb=30
    initrd /boot_2/tinycore.gz

只是思路,不知能不能通过直接修改isolinux的配置实现……待高手解答了……
回复

使用道具 举报

12#
发表于 2010-9-18 09:42:51 | 只看该作者
主要是不想用这个软件。
回复

使用道具 举报

13#
发表于 2010-9-18 10:00:38 | 只看该作者
原帖由 zyphio 于 2010-9-17 23:04 发表


tce文件夹的位置严格上是说是记录在bzImage里的,而bzImage是Linux内核,要用特殊的方法去解包修改重编译……太折腾了……

我的想法是在同时把两个ISO合成一个,boot与tce目录分别重命名,在ISO加入第二 ...


重新编译是很麻烦。

楼主的“我的想法是在同时把两个ISO合成一个,boot与tce目录分别重命名,”中,
boot可以改名的,但要想把tce也分别重命名就又要用重新编译了。。。
因为tce文件夹不能改名呀,可以的话就不用那么麻烦了。

我也有一种想法就是把其中一个Beini的ISO文件转换成IMA格式的,不知这样行不行得通?

[ 本帖最后由 2010dgnanhua 于 2010-9-18 10:02 编辑 ]
回复

使用道具 举报

14#
发表于 2010-9-18 10:31:58 | 只看该作者
广告?你能不装B吗,装C吧!
回复

使用道具 举报

15#
发表于 2010-9-18 10:34:14 | 只看该作者
“我已经在wlanbbs发表了相关的帖子”????

既然你不想再本坛发,你就不要来装B!
回复

使用道具 举报

16#
 楼主| 发表于 2010-9-18 14:43:04 | 只看该作者
原帖由 ericdk 于 2010-9-18 10:34 发表
“我已经在wlanbbs发表了相关的帖子”????

既然你不想再本坛发,你就不要来装B!



或许你只看了前半句,没看后半句……所以误会我的意思……我是出尊重对方才这么做……也强调了角度的不同……

但是我承认我错了……所以改了……

至于从广告的角度来说嘛……你都顶了两次了……且每次都出现这XXXXBBS……看来这是“软广告”新招啊……哈……

还真辛苦你帮忙顶我这个某BBS“广告帖”,增加人气啊……谢谢哦……哈……
回复

使用道具 举报

17#
 楼主| 发表于 2010-9-19 01:21:10 | 只看该作者
原帖由 2010dgnanhua 于 2010-9-18 10:00 发表


重新编译是很麻烦。

楼主的“我的想法是在同时把两个ISO合成一个,boot与tce目录分别重命名,”中,
boot可以改名的,但要想把tce也分别重命名就又要用重新编译了。。。
因为tce文件夹不能改名呀,可以 ...



是哦,你这个也是个不错的创意……在我的理解是可以……
因为GRUB中……
ISO一般映射为(hd32),即是一个硬盘,而不是分区,启动扇区在第17扇区……要chainloader (hd32)……
IMG一般是指磁盘镜像,映射为一个分区(fd0)或(hd32,0),而不是硬盘,启动扇区一般从第一扇区开始,要chainloader +N……

期待你能实现……
回复

使用道具 举报

18#
发表于 2010-10-21 16:09:34 | 只看该作者
ericdk 估计看了16L回复会很纠结 - -!
回复

使用道具 举报

19#
发表于 2010-11-14 23:11:42 | 只看该作者
我的1.2.1版本就是看不到奶瓶,哎。。。接着潜水学习
回复

使用道具 举报

20#
发表于 2010-12-7 23:29:32 | 只看该作者
也来学习下这个了。想有下奶瓶了。
回复

使用道具 举报

21#
发表于 2010-12-15 16:37:51 | 只看该作者

回复 #5 lee88889999 的帖子

少了个  root(hd32)吧??
回复

使用道具 举报

22#
 楼主| 发表于 2011-1-4 20:34:23 | 只看该作者
最近重新制作了,主要改了两方面:

一、放弃Beini了,无线“研究方面”换成CDlinux!
CDlinux全中文界面,对各类硬件的支持相当好,内置浏览器等各类工具,可以直接上网和播放视频,无敌强悍!
最重要的是,用于无线研究后出“结果”,能通过内置的无线网络管理界面很快进行实际“测试”,连配置都不用配置,优Beini和BT4,在这也BS BT4要上网那一大堆麻烦配置!!

二、由GRUB4DOS来引导,再转向Bootmgr!
受CDlinux的启发,把启动盘的第一引导程序改为GRUB4DOS,再转向Bootmgr专门去启动Windows!GRUB4DOS作为开源……最主要是直接支持FAT、NTFS、EXT和ISO9660,安装到U盘后兼容性比Bootmgr好,光盘用grub来引导也特别简单(只要把grldr增加扩展名,改名为grldr.bin或grldr.img等,再用UltraISO把它当启动镜像写入的光盘镜像即可实现用grldr来引导!!!!),用grldr作为主引导,可以把bootmgr放到想要的目录中去,不用再放在根目录,且可省略grldr.mbr文件,使启动文件更加简洁,整体思路更清晰!

(MBR)  ................................(由分区管理软件生成,保持默认,兼容优秀)
(PBR)  ................................(由bootice.exe生成,指向根目录grldr文件,良好兼容性)
  grldr  ................................(GRUB4DOS的启动管理器)
  boot  ................................(启动相关目录)
    CDlinux  ................................(CDlinux系统目录)
    fonts  ................................(Bootmgr的字体目录)
    grub  ................................(grub的配置文件,只要menu.lst即可,如要中文则增加 fonts.gz)
    img  ................................(各种镜像文件)
    support  ................................(各类支持或帮助说明文件)
    zh-cn  ................................(Bootmgr的界面简体中文字体目录)
    bcd  ................................(Bootmgr的配置文件)
    boot.sdi  ................................(启动WIM文件必要的虚拟盘模板,精简过)
    bootmgr  ................................(微软的Windows启动管理器)
    memtest.exe  ................................(微软的内存测试程序)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-1 11:48

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表