无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: smine

GRUB全自动菜单引导ISO,IMG,IMA,本地系统,完善资源管理器,支持文本查看(2014-12-9)

    [复制链接]
发表于 2012-2-27 10:39:39 | 显示全部楼层
回复

使用道具 举报

发表于 2012-2-27 10:57:04 | 显示全部楼层
这个东西是否能支持打开CDlinux.ISO并且成功启动呢?
回复

使用道具 举报

发表于 2012-2-27 11:34:04 | 显示全部楼层
smine 您好!
能否写下 ISO直接安装原版系统,磁盘映射的步骤。

相对未更新前,磁盘映射功能 对于安装WIN7时有无帮助改善。

下面是网友的反馈:
试过了 smine.iso好用!! xp 2003都可以引导安装 但win7引导安装到检测硬盘时弹出要驱动 不知怎么解决
回复

使用道具 举报

发表于 2012-2-27 13:20:14 | 显示全部楼层
谢谢楼主!很不错的工具!辛苦了!

楼主在这里也想请教一些问题:
1、echo -e debug off\ndefault 1\ntimeout 60\ngfxmenu (bd)/GRUB/main.msg\nsplashimage (bd)/GRUB/back.lzma\nfont (bd)/GRUB/unifont.gz\n        > (md)0x23600+0x10
这部分我想改成VBE模式,自己设置背景色和字体,不过我改几次都不对!请教应该如何修改啊?

2、openfile 文件里《echo -e title        \x20\x20\xE8\xBF\x94\xE5\x9B\x9E        >> (md)0x23600+0x10 》 \x20\x20\xE8\xBF\x94\xE5\x9B\x9E这部分是什么意思啊?还有就是想请教如何能在这个文件里加入自己定义的菜单啊?要注意什么!

希望楼主可以赐教!!!
回复

使用道具 举报

 楼主| 发表于 2012-2-27 13:36:43 | 显示全部楼层
原帖由 2011lxmw 于 2012-2-27 11:34 发表
smine 您好!
能否写下 ISO直接安装原版系统,磁盘映射的步骤。

相对未更新前,磁盘映射功能 对于安装WIN7时有无帮助改善。

下面是网友的反馈:
试过了 smine.iso好用!! xp 2003都可以引导安装 但win ...


我系统的说下怎么ISO直接安装系统,这里分两种情况:

A:xp,2003系列

1.准备好U盘,写入Grub引导
2.把xp的ISO文件复制到U盘根目录,或者其他目录
3.用U盘启动电脑,出现主菜单后,按高级菜单,选择F6IMGX86,这一步必不可少,就算你的硬盘是IDE的,也必须这样操作
4.返回到主菜单,打开资源管理器,找到xp的ISO文件,记住xp的ISO文件所在的磁盘根,一般这里是(hd0,0),记下(hd0)
再根据资源管理器里的磁盘的内容,判断你要把系统安装到那个硬盘的根,这里一般可以找到(hd1,0) (hd1,1) (hd1,2)的磁盘,记住(hd1)
5.返回主菜单,进入高级菜单,选择磁盘映射,第一块磁盘选择第4步记下的(hd0),然后第二块磁盘选择第4步记下的(hd1),交换成功后返回
6.打开资源管理器,可以看到磁盘根已经交换过了,比如上例中你会发现原来的U盘的(hd0,0)变成了(hd1,0),原来的(hd1,0) (hd1,1) (hd1,2)变成了(hd0,0) (hd0,1) (hd0,2),
打开u盘,找到xp的ISO文件,打开后选择加载镜像到内存并引导(1G以上内存建议选这项,装机速度快)(小内存机器选择加载镜像并引导),出现“Press Any Key Boot from cd/dvd”时一定要记得按回车
7.出现其他F2,F6提示都不要再按任何键,直到装系统开始,按正常步骤装完,直到重启
8.重启后任然用U盘启动,出现主菜单后,按高级菜单,选择F6IMGX86
9.进入高级菜单,选择磁盘映射,参照前面的方法完成磁盘映射
10.返回主菜单,打开资源管理器,打开u盘,找到xp的ISO文件,打开后选择加载镜像到内存并引导(1G以上内存建议选这项,装机速度快)(小内存机器选择加载镜像并引导),出现“Press Any Key Boot from cd/dvd”时一定要记得不要按任何键
11.等着系统自己开始安装,以后的步骤大家都会,照提示做即可


B:win7系列

1.准备好U盘,写入Grub引导
2.把WIN7的ISO文件复制到U盘根目录,或者其他目录,到网上下载一个软件,叫做VDM虚拟光驱,复制到U盘根目录
3.由于WIN7的ISO文件很大,不能加载到内存启动,只能选择加载镜像并启动,所以这里必须保证WIN7的ISO连续存放,要保证连续存放,有两个办法(1,把U盘格了,把镜像复制进去就是连续的;2,用软件Contig.exe整理)
4.仿照XP的方法映射磁盘,交换系统硬盘为(hd0),U盘为(hd1),成功后返回【这个步骤不一定必要,我的机器可以不交换也能装】
5.打开资源管理器,打开u盘,找到WIN7的ISO文件,打开后选择加载镜像并引导
6.出现现在安装windows的界面时,按下shift+F10,出现cmd命令行窗口
7.输入notepad回车,打开记事本
8.在记事本里点文件,选择打开,在打开对话框里的文件类型选所有文件,然后找到U盘里的虚拟光驱软件:VDM.EXE,记得在VDM.EXE上点右键,选择打开,这样VDM.EXE就运行了
9.在VDM里点装载,找到WIN7的iso镜像,按默认装载为虚拟光驱
10.同样用记事本打开的方式,找到新虚拟的光驱里的setup .exe,右键选择打开,然后按提示安装完成即可,重启的时候不用插U盘了,直接重启安装即可。

语言能力有限,大家将就看吧,有描述不清楚的地方,尽管问

[ 本帖最后由 smine 于 2012-2-27 14:03 编辑 ]

VDM.part1.rar

292.97 KB, 下载次数: 48, 下载积分: 无忧币 -2

VDM.part2.rar

57.24 KB, 下载次数: 40, 下载积分: 无忧币 -2

回复

使用道具 举报

 楼主| 发表于 2012-2-27 13:55:01 | 显示全部楼层
原帖由 thttht 于 2012-2-27 13:20 发表
谢谢楼主!很不错的工具!辛苦了!

楼主在这里也想请教一些问题:
1、echo -e debug off\ndefault 1\ntimeout 60\ngfxmenu (bd)/GRUB/main.msg\nsplashimage (bd)/GRUB/back.lzma\nfont (bd)/GRUB/unifont. ...



对于第一个问题,其实已经支持VBE模式了,你只要把\ngfxmenu (bd)/GRUB/main.msg这句去掉,对应的 (bd)/GRUB/main.msg文件删掉,那就是正宗的VBE模式

对于第二个问题,“\x20\x20\xE8\xBF\x94\xE5\x9B\x9E” 是“空格空格”+“返回”的UTF8编码,是为了显示中文字符“  返回用的”

加自定义菜单可以加到返回的菜单之前:

echo -e title        \x20\x20\xE8\xBF\x94\xE5\x9B\x9E           >> (md)0x23600+0x10
echo configfile (md)0x23400+0x100                                    >> (md)0x23600+0x10
echo                                                                               >> (md)0x23600+0x10

照着这个格式写即可,第一行是TITLE,后面的一行可以多次复制,改成你想要的命令,可以使用的变量%fullpath%代表你打开的文件的全路径。

[ 本帖最后由 smine 于 2012-2-27 13:56 编辑 ]
回复

使用道具 举报

发表于 2012-2-27 14:43:06 | 显示全部楼层
原帖由 smine 于 2012-2-27 13:55 发表



对于第一个问题,其实已经支持VBE模式了,你只要把\ngfxmenu (bd)/GRUB/main.msg这句去掉,对应的 (bd)/GRUB/main.msg文件删掉,那就是正宗的VBE模式

对于第二个问题,“\x20\x20\xE8\xBF\x94\xE5\x9B ...



谢谢楼主解答!你的back文件是字体文件和背景图片的续尾文件?这个如何编辑修改啊?我解压后就不知道如何修改了!
我把《echo -e debug off\ndefault 1\ntimeout 60\ngfxmenu (bd)/GRUB/main.msg\nsplashimage (bd)/GRUB/back.lzma\nfont (bd)/GRUB/unifont.gz\n        > (md)0x23400+0x100》这部分改成《echo -e debug off\ndefault 1\ntimeout 60\ngraphicsmode -1 640:800\ncolor normal=0xFF193477FFFFFFFF\ncolor highlight=0xFF193477FFFFDC00\nfont (bd)/BOOT/GRUB/unifont.gz\n > (md)0x23400+0x100》不行!你说的直接删除\ngfxmenu (bd)/GRUB/main.msg这句去掉,对应的 (bd)/GRUB/main.msg文件删掉,其他不改是可以进入VBE模式并加载背景图片!我想请教我上面的那个为什么不行啊?想学习一下!


还有楼主我说的加自己的菜单是想给openfile文件里的::.img部分在原有的两种加载方式上再添加两种加载方式!我照葫芦画瓢加入到::.img部分里将结果不行啊?不知道楼主可以考虑加入这两种情况吗?


::加载 RAMOS 镜像到内存并启动
if /i '%ext%'=='.vhd' echo -e title        \x20\x20\xE5\x8A\xA0\xE8\xBD\xBD\xE9\x95\x9C\xE5\x83\x8F\xE5\xB9\xB6\xE5\x90\xAF\xE5\x8A\xA8        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e clear                                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' && echo configfile (md)0x23600+0x10 | echo -e \x20\x7C\x7C\x20 | echo map --mem --top %fullpath% (hd0)                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e map (hd0) (hd)                                                                                                >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e map --hook                                                                                                     >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e root (hd0,0)                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e chainloader /NTLDR || chainloader /BOOTMGR                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e                                                                                                                 >> (md)0x23600+0x10

::加载 RAMOS 镜像并启动
if /i '%ext%'=='.vhd' echo -e title        \x20\x20\xE5\x8A\xA0\xE8\xBD\xBD\xE9\x95\x9C\xE5\x83\x8F\xE5\x88\xB0\xE5\x86\x85\xE5\xAD\x98\xE5\xB9\xB6\xE5\x90\xAF\xE5\x8A\xA8        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e clear                                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' && echo configfile (md)0x23600+0x10 | echo -e \x20\x7C\x7C\x20 | echo map %fullpath% (hd0)                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e map (hd0) (hd)                                                                                                >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e map --hook                                                                                                >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e write (99) [FiraDisk]\nStartOptions=disk,vmem=find:%fullpath%;\n\0                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e root (hd0,0)                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e chainloader /NTLDR || chainloader /BOOTMGR                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e                                                                                                                 >> (md)0x23600+0x10
回复

使用道具 举报

 楼主| 发表于 2012-2-27 15:35:50 | 显示全部楼层
原帖由 thttht 于 2012-2-27 14:43 发表



谢谢楼主解答!你的back文件是字体文件和背景图片的续尾文件?这个如何编辑修改啊?我解压后就不知道如何修改了!
我把《echo -e debug off\ndefault 1\ntimeout 60\ngfxmenu (bd)/GRUB/main.msg\nsplas ...


VBE模式的COLOR怎么用我还真不会,这个我帮不了你,我只能说用我的那个方法是可以进入VBE的
back是一个VBE模式下用的背景图的压缩文件,后缀是lzma,字体文件是unifont.gz

map (hd0) (hd)  ?这个写法不对吧,(hd)不是一个具体设备,怎么MAP?。。

下面这段基本加的对的,只是有些问题:

if /i '%ext%'=='.vhd' echo -e title        \x20\x20\xE5\x8A\xA0\xE8\xBD\xBD\xE9\x95\x9C\xE5\x83\x8F\xE5\x88\xB0\xE5\x86\x85\xE5\xAD\x98\xE5\xB9\xB6\xE5\x90\xAF\xE5\x8A\xA8        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e clear                                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' && echo configfile (md)0x23600+0x10 | echo -e \x20\x7C\x7C\x20 | echo map %fullpath% (hd0)                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e map (hd0) (hd)                                                                                                >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e map --hook                                                                                                >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e write (99) [FiraDisk]\nStartOptions=disk,vmem=find:%fullpath%;\n\0                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e root (hd0,0)                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e chainloader /NTLDR || chainloader /BOOTMGR                                                                                        >> (md)0x23600+0x10
if /i '%ext%'=='.vhd' echo -e                                                                                                                 >> (md)0x23600+0x10

我标红的部分是值得注意的,
另外:echo -e 后面的内容是不允许出现敏感字符的,比如\一定要用转义。用他的UTF8编码代替,比如\x5c,例如echo -e debug off\ndefault 1\ntimeout 60这段里面的\n表示生成的菜单里是要回车的,所以不转义,但是你的echo -e write (99) [FiraDisk]\nStartOptions=disk,vmem=find:%fullpath%;\n\0 ,估计是要生成一行把,其中的\n等不做处理的话会生成多行的。还有 || 要用 \x20\x7C\x7C\x20 代替

[ 本帖最后由 smine 于 2012-2-27 15:43 编辑 ]
回复

使用道具 举报

发表于 2012-2-27 16:01:17 | 显示全部楼层
谢谢楼主!我先按你说的试试!遇到问题再来请教!十分感谢你的耐心解答!
回复

使用道具 举报

发表于 2012-2-27 22:58:00 | 显示全部楼层

磁盘映射功能不起作用的反馈

楼主新增添的磁盘映射功能选择后,没有任何反应。我是做成iso后引导启动。是不是受这影响呢。或者这功能有待完善。
回复

使用道具 举报

 楼主| 发表于 2012-2-28 10:20:37 | 显示全部楼层
27日晚有新的更新,详情看1楼说明
回复

使用道具 举报

 楼主| 发表于 2012-2-28 10:22:04 | 显示全部楼层
原帖由 赤子阿爽 于 2012-2-27 22:58 发表
楼主新增添的磁盘映射功能选择后,没有任何反应。我是做成iso后引导启动。是不是受这影响呢。或者这功能有待完善。


谢谢你的反馈,我先测试下再说
回复

使用道具 举报

 楼主| 发表于 2012-2-28 11:35:36 | 显示全部楼层
原帖由 赤子阿爽 于 2012-2-27 22:58 发表
楼主新增添的磁盘映射功能选择后,没有任何反应。我是做成iso后引导启动。是不是受这影响呢。或者这功能有待完善。


谢谢你的反馈,BUG已经修复,现在已经可以正常使用,详情见1楼
回复

使用道具 举报

发表于 2012-2-28 11:39:19 | 显示全部楼层
学习一下,学习一下!!!!!
回复

使用道具 举报

发表于 2012-2-28 12:01:17 | 显示全部楼层
不知道可以添加对ANSI编码文本的查看功能吗?
大部分系统记事本默认建立的文本都是ANSI编码!要是能ANSI编码和UTF-8编码同时提供支持就太好了!!!

==============================================================================
谢谢楼主,在你的帮助指导下我前面说的添加菜单已经成功!很感谢楼主!
不过改背景色还没有成功!我有时间在试试!

[ 本帖最后由 thttht 于 2012-2-28 12:04 编辑 ]
回复

使用道具 举报

发表于 2012-2-28 12:26:33 | 显示全部楼层
我把自动引导ISO制成了ISO,在虚拟机和真机里测试,IMGS目录下的文件,若出现中文字符,中文和其后的字符将都会被忽略。
难道是ISO的问题?

360截图20120228121735596.jpg 360截图20120228121838642.jpg
回复

使用道具 举报

 楼主| 发表于 2012-2-28 14:03:21 | 显示全部楼层
原帖由 2011jgjddzdn 于 2012-2-28 12:26 发表
我把自动引导ISO制成了ISO,在虚拟机和真机里测试,IMGS目录下的文件,若出现中文字符,中文和其后的字符将都会被忽略。
难道是ISO的问题?

137802137803


你说对了,这确实是ISO问题,因为ISO的光盘文件系统默认是不支持UTF8编码的,中文字符就不能显示了,这个问题帖子里也有人讨论过,似乎有什么工具可以制作UTF8编码文件名的ISO,详细情况去翻翻GRUB4DOS区的帖子吧。
回复

使用道具 举报

发表于 2012-2-28 16:50:55 | 显示全部楼层
看看这个更新的版本效果了,谢谢分享
回复

使用道具 举报

发表于 2012-2-29 02:18:05 | 显示全部楼层
若我想在 自己弄得菜单上 多一个 选项

引导 本地盘 系统 如图

洞洞~1.jpg

该如何 撷取呢

[ 本帖最后由 2011回忆爱情 于 2012-2-29 02:19 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2012-2-29 10:45:42 | 显示全部楼层
原帖由 2011回忆爱情 于 2012-2-29 02:18 发表
若我想在 自己弄得菜单上 多一个 选项

引导 本地盘 系统 如图

137852

该如何 撷取呢


其实这个问题很笼统:

1.引导本地盘系统,本地盘是什么系统?xp?03?win7?还是linux内核的系统?
2.本地盘系统是怎么部署的?是哪块硬盘,哪个分区,还是多系统?
3.如果要自动搜索本地系统并引导,如果搜到多个系统,怎么处理?
回复

使用道具 举报

发表于 2012-2-29 11:33:20 | 显示全部楼层
迟来的支持,感谢不断更新,以前看到连我心如水PE都启不动所以好长时间没再看过这帖,现在看来相当不错了,。。。。。。
回复

使用道具 举报

发表于 2012-2-29 12:16:00 | 显示全部楼层
提个小小的建议,主菜单加入“尝试从硬盘启动”,且设为默认,默认时间不要太长了,10--15即可。
回复

使用道具 举报

发表于 2012-2-29 12:23:54 | 显示全部楼层
建议资源管理器中加入复制文件到另一分区功能
回复

使用道具 举报

 楼主| 发表于 2012-2-29 12:26:04 | 显示全部楼层
原帖由 2011jgjddzdn 于 2012-2-29 12:16 发表
提个小小的建议,主菜单加入“尝试从硬盘启动”,且设为默认,默认时间不要太长了,10--15即可。


请看170楼的说明,这个菜单并不好加,高级菜单里的“搜索并启动。。。”可以勉强支持该功能
回复

使用道具 举报

 楼主| 发表于 2012-2-29 12:32:08 | 显示全部楼层
原帖由 yuan-0918 于 2012-2-29 12:23 发表
建议资源管理器中加入复制文件到另一分区功能


GRUB4DOS的dd命令仅支持FAT分区的文件复制,而且功能限制太死:

1.不能创建文件;
2.源文件和目标文件必须是存在的;
3. 既不扩大也不减小目标文件的大小,源文件尾部剩余的部分将被丢弃;
4.dd 具有危险性,使用风险由你自己的承担。作为一种安全方面的考虑,你应当只使用 dd 来写入一个内存中的文件;

综上,文件复制功能不值得加入,期待dd命令的完善
回复

使用道具 举报

发表于 2012-2-29 12:45:11 | 显示全部楼层
能否让菜单分两列显示??
我的启动文件太多了,一长列,不好看,不方便,
回复

使用道具 举报

 楼主| 发表于 2012-2-29 14:16:24 | 显示全部楼层
原帖由 2010yudy 于 2012-2-29 12:45 发表
能否让菜单分两列显示??
我的启动文件太多了,一长列,不好看,不方便,


这个不好实现。。。
回复

使用道具 举报

发表于 2012-2-29 18:16:14 | 显示全部楼层
能把这个全自动菜单做成iso之后量产吗? 怎么做?
谢谢
回复

使用道具 举报

 楼主| 发表于 2012-2-29 22:41:36 | 显示全部楼层
原帖由 hijk1 于 2012-2-29 18:16 发表
能把这个全自动菜单做成iso之后量产吗? 怎么做?
谢谢


用ULTRAISO新建一个光盘镜像,把grldr,grub文件夹复制到光盘根目录,然后右击grldr,选择设置为引导文件,然后保存即可生成一个可引导的光盘镜像。
回复

使用道具 举报

发表于 2012-2-29 22:51:00 | 显示全部楼层
新建光盘镜像选数据光盘映像还是启动光盘映像呢?要是新建启动光盘映像还需要个文件,选什么呢? 随便别的能启动的光盘里面的文件就行吗?
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-18 10:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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