中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: [下载] GRUB4DOS 增强版 上一主题 | 下一主题
bean123
中级用户




积分 214
发帖 34
注册 2004-3-10
状态 离线
『楼 主』:  [下载] GRUB4DOS 增强版

下载:http://grub4dos.sourceforge.net/tools/grub4dos_sp.tar.gz
这是在不点 GRUB4DOS 的基础上,加上一些补丁后的版本,功能包括:
1、grub4dos pre13
此版本基于最新的 grub4dos pre13
2、Etherboot 5.3.8
更新了一些网卡驱动模块。此增强版本编译了的网卡有3c50x, eepro100, rtl8159 和 ns8390。前面三个大家应该比较熟悉,最后一个是NE2000的驱动,这意味着你可以在qemu下测试网络的功能。
3、env 补丁
这是我加上的设置环境变量的补丁。用法有:
set value=name  or set -o
设置变量或开关
show [value]
显示变量值
这补丁使得用户可以在grub中设置变量或开关。目前仅有FreeBSD补丁使用了这部分功能。
3、FreeBSD module 补丁
这补丁是我根据FreeBSD的loader(8)的代码而增加的,它使得在grub下可以直接装载FreeBSD模块。FreeBSD的模块不止可以是核心代码,也可以是数据,比如是用户的配置文件(user_config),开机画面(spash_image),虚拟盘(mfs_root),等。另外,我也修改了initrd函数,使得FreeBSD可以像Linux那样装载初始化的ramdisk。
FreeBSD补丁使用了以上提到的env功能。在变量方面,所有以 “FreeBSD.“ 开始的变量均会被复制到内核空间。在开关方面,用到了 -a ,当打开时,模块在装载时按页面边界对齐。
例子:
kernel (hd0,0)/kernel - 装载内核
module (hd0,0)/msdos.ko - 装载模块
module (hd0,0)/cfg --type=user_config - 装载数据模块(类型是user_config)
initrd (hd0,0)/memdisk.gz - 装载初始化ramdisk。着其实等价于 module (hd0,0)/memdisk.gz --type=mfs_root
initrd (hd0,0)/disk2.gz - 不同于linux,FreeBSD允许装载多个初始化ramdisk。
lsmod - 显示当前装载的模块
set FreeBSD.vfs.root.mountfrom=ufs:/dev/md0c - 这显示了如何设置FreeBSD的核心变量。这句的意思是告诉核心从第一只初始化ramdisk中启动。如果要选择从第二只初始化ramdisk启动,使用md1c,从硬盘启动,使用ad0s1a,从软盘启动,使用fd0a,等等。
4、TAGIMAGE 补丁 (NBI补丁)
这使得grub可以装载由mknbi所创建的 NBI 文件。一种有趣的用法是 mknbi-dos 所创建的映像文件。当装载时,它会生成内存中的虚拟软盘。这与memdisk.gz生成的软盘有点相似。但它还有一个附加的功能,那就是可以用工具rmrd删除生成的软盘,这在memdisk.gz中暂时还不可以。
生成nbi文件:
mknbi-dos flop.img > flop.nb
装载nbi文件:
kernel (hd0,0)/flop.nb
装载网络中nbi文件:(这其实就是etherboot/netboot所实现功能)
ifconfig --address=my_ip --server=server_ip
kernel (nd)/flop.nb
另一个更有趣的用法是用它来装载另一个grub。nbgrub其实就是一个以NBI格式所包装的grub。现在有了这补丁,用kernel 就直接可以装载另一个版本的nbgrub文件。
5、GRUB IMAGE 补丁
这是以上的nbgrub观念的扩展。加了该补丁,grub 可以直接装载grldr或grldr,而无需间接通过nbgrub了。那说明,以下的三种方式都可以用来装载另一个版本的grub:
kernel (hd0,0)/nbgrub
kernel (hd0,0)/stage2
kernel (hd0,0)/grldr
注意一下,该补丁暂时还不支持其它形式的grub映像,如 pxegrub, grub4lin 和 grub.exe。
6、128 字节的presetmenu空间
这版本没有设定presetmenu,这意味着它不会自动搜索menu.lst的位置。但它里面预留了128字节的presetmenu空间,你可以自己设定所需的presetmenu。例如:
硬盘中寻找menu.lst:
find --set-root /boot/grub/menu.lst
configfile /boot/grub/menu.lst
使用bootp的网络启动
bootp
configfile (nd)/menu.lst
手动设置参数的网络启动
ifconfig --address=192.168.2.100 --server=192.168.2.1
kernel (nd)/flop.nb
修改presetmenu可用 WinGrub 或 GRUB4DOS Unix Tools (http://grub4dos.sourceforge.net/tools/grub_utools.tar.gz).

[此贴子已经被作者于2004-11-2 16:07:27编辑过]




2004-11-2 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
chenall
银牌会员




积分 1276
发帖 469
注册 2002-12-23
来自 福建泉州
状态 离线
『第 2 楼』:  

看不太懂,不过看起来好像挺不错,下来试试看



QQ:366840202
http://chenall.net
2004-11-2 00:00
查看资料  发送邮件  访问主页  发短消息 网志  OICQ (366840202)  编辑帖子  回复  引用回复
不点
银牌会员

不甘寂寞的人


积分 2491
发帖 1115
注册 2003-9-24
状态 离线
『第 3 楼』:  

我也没看懂, 主要是因为我对网络太外行.

很好, 支持啊.

----------------------------

补充: grub4lin 已经可以直接由 GRUB 的 kernel 命令来启动了, 无须再用别的补丁.







因为我们亲手创建,这个世界更加美丽。
2004-11-3 00:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: