无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 4771|回复: 6
打印 上一主题 下一主题

[讨论] grub4dos教程的瑕疵,抛砖引玉,欢迎大家跟帖

[复制链接]
跳转到指定楼层
1#
发表于 2011-9-1 18:55:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先感谢无忧论坛的各位前辈(我不太熟,只能仰视)及教程编写者sratlf(也是前辈)

初学grub4dos,按图索骥得些皮毛,不揣浅陋,将学习中走的弯路贴上来,供同行参考,也希望大家共同努力,让教程更完善!

1,教程中制作grub4dos启动ISO镜像树形图:
─grub4dos-----------------主文件夹,任意命名
      │
      ├bin----------------mkisofs所在文件夹(可以任意命名,但要注意脚本里别写错)
      ││
      │├mkisofs.exe------mkisofs主程序
      ││
      │└cygwin1.dll------mkisofs.exe必需
      │
      ├boot---------------镜像文件所在文件夹(即这个文件夹下面的所有文件将被打包成镜像)
      ││
      │├grldr------------仅用来说明
      ││
      │└MENU.LST---------仅用来说明
      │
      └mkiso.bat----------下面要学习编写的脚本文件,任意命名

我按照此树形图制作时没有得到ISO文件,后将BOOT文件夹移到BIN文件夹,mkiso.bat移到BIN文件夹批处理才运行
此图应更正为:
─grub4dos-----------------主文件夹,任意命名  (此文件夹可以不要)
        │
        └bin----------------mkisofs所在文件夹(可以任意命名,但要注意脚本里别写错)
               │
               ├mkisofs.exe------mkisofs主程序
               │
               └cygwin1.dll------mkisofs.exe必需
               │
               └mkiso.bat----------下面要学习编写的脚本文件,任意命名
               │
               └boot---------------镜像文件所在文件夹(即这个文件夹下面的所有文件将被打包成镜像)
                    │
                    ├grldr------------仅用来说明
                    │
                    └MENU.LST---------仅用来说明,
2,批处理参数瑕疵(可能是mkisofs版本不同吧)
@echo off
cd /d "%~dp0"
path "%~dp0bin";%path%
mkisofs.exe -o PE.ISO -v -V "grub4dos" -hide-joliet boot.catalog -J -joliet-long -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -no-emul-boot -boot-load-size 4 -b grldr BOOT

boot.catalog 后少了一个 -r  我加上后ISO文件才得以制作
更正为:
@echo off
cd /d "%~dp0"

path "%~dp0bin";%path%
mkisofs.exe -o PE.ISO -v -V "grub4dos" -hide-joliet boot.catalog -r -J -joliet-long -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -no-emul-boot -boot-load-size 4 -b grldr BOOT


3,我更改天风的MINNI98.ISO显示为可启动光盘镜像,但是不能在虚拟机中运行,只有光标闪烁。盼高手指点!
@echo off
cd /d "%~dp0"
path "%~dp0mkisofs";%path%
mkisofs.exe -o mini98.iso -v -V "mini98" -hide-joliet boot.catalog -r -J -joliet-long -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -no-emul-boot -boot-load-size 4 -b IO.SYS mini98



指定IO.SYS为启动文件是否错误,应该指定什么?(与大小写无关,均测试)

2#
发表于 2011-9-2 21:14:37 | 只看该作者
谢谢楼主的提醒啊,对新手很大帮助
回复

使用道具 举报

3#
发表于 2011-9-2 23:14:10 | 只看该作者
oscdimg
win7的ETFSBOOT.COM —— 修改以启动grldr
grldr
是最佳的
回复

使用道具 举报

4#
发表于 2011-9-6 15:55:54 | 只看该作者
嗯,mkisofs我也困惑了很久,感谢楼主
回复

使用道具 举报

5#
 楼主| 发表于 2011-9-29 14:16:05 | 只看该作者
近期复习了一下DOS,参考网友的作品,重新制作了一个批处理,适用性更广,欢迎网友测试。

@echo off&COLOR %RANDOM:~-1%f&cls&
PATH=%~DP0;%PATH%
if not exist "%~dp0\mkisofs.exe" echo. mkisofs.exe 不存在请重新拷贝 >NUL

Set L1=               ╭═════════╮
Set L2=               ║      启动光盘      ║                  
Set L3=          ╭══┤                    ├══╮            
Set L4=         ║    ║   iso文件制作    ║   ║
Set L5=         ║    ╰══════════╯   ║
Set L6=         ║                     ║
Set L7=          ╟═════════════════╢
Set L8=         ║ 供GRUB爱好者交流 翻版不究     ║      
Set L9=          ╰─────────────────╯
Set LA=         ║          bbs.wuyou.net           ║        
Set LB=           ╰─────────────────╯

Echo %L1%
Echo %L2%
Echo %L3%
Echo %L4%
Echo %L5%
Echo %L6%
Echo %L7%
Echo %L8%
Echo %L9%
Echo %LA%
Echo %LB%
   
setlocal enabledelayedexpansion
echo.新建一个文件夹 (可任意分区任意名,文件夹及子文件夹不能含"空格" "[]"等特殊符号) 把您要制作启动光盘的文件全部放到这个文件夹,用鼠标选中准备好的文件夹拖放到本窗口本行文字下方,然后按enter键--^>
set/p wj=
set/p yd=输入启动光盘中的引导文件(不含路径例如grldr)!
xcopy /h/r/y "%yd%"  %wj%\  
mkisofs.exe -o %wj%.iso -v -V "%wj%" -hide-joliet boot.catalog -r -J -joliet-long -relaxed-filenames -gbk4dos-filenames -gbk4win-filenames -no-emul-boot -boot-load-size 4 -b %yd% %wj%
echo.&echo.&echo.如无错误提示,%wj%.iso制作完成! %wj%.iso文件在原“%wj%”的所在目录
Echo ★请按任意键退出............
PAUSE >nul
exit




ISO制作的单文件版(7Z打包)下载地址(重新上传):
http://dl.dbank.com/c04rqyamq8

ISO制作的源文件下载地址:
http://dl.dbank.com/c0atjqjzpv

grub内置菜单批处理:
http://dl.dbank.com/c01v7m91gs

[ 本帖最后由 2011-YLMF 于 2011-10-3 17:10 编辑 ]
回复

使用道具 举报

6#
 楼主| 发表于 2011-9-29 14:21:04 | 只看该作者
网友原作:

@echo off&title GRUB4DOS启动光盘制作 BY x9tian&setlocal enabledelayedexpansion
path %~dp0;%path%
echo.&echo.本批处理目标是:生成一个符合GRUB4DOS 启动的光盘印像文件(*.iso)
echo.&echo.请按如下步骤进行操作:
echo.新建一个文件夹 (可任意分区任意名,但不能含空格) 把您要制作启动光盘的文件全部放到这个目录&echo.&echo.完成以上步骤后按任意键继续;&pause>nul&echo.&color a&set/p wj=把您新建的目录拖放到本窗口===^>
echo.&echo.把引导文件grldr(可任意分区任意名,但不能含空格)拖放到本窗口==^>
set/p yd=如果引导在%wj%目录,只需输入文件名!
xcopy /h/r/y "%yd%"  %wj%\  &set v=%date:-=%&set v=!v:~0,-4!&set v=!v!_%time%
for %%a in (set b=%yd:\= %) do set b=%%a
for  %%a in (set k=%wj:\= %) do set n=%%a
for %%a in (%wj%) do set lj=%%~dpa
mkisofs  -v -V "%v%"  -R -b %b% -hide boot.catalog -hide-joliet boot.catalog -no-emul-boot -boot-load-size 4 -o %lj%%n%.iso %wj%
echo.&echo.&echo.如无错误提示, %lj%%n%.iso制作完成!稍后退出并打开ISO文件所在目录&&ping 127.1 -w 80000>nul 2>nul&&start "" "%lj%"&del %0
回复

使用道具 举报

7#
发表于 2011-9-29 21:18:48 | 只看该作者
俺是来学习  的   自己不懂  但一定挺你们   

你们是最强的!!!!!!!!!!!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-5 11:27

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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