![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-06 11:18 |
共 47,812 主题排行 / 349,914 发帖 / 今日 0 篇 / 48,268 会员排行 |
| DOS启动盘 & LOGO技术 (启动盘室) » [征求修改]系统安装备份恢复启动盘(中文) |
| 可打印版本 2,322 / 21 |
| 第1楼 QEYU | 发表于 2003-07-25 00:00 |
| 中级用户 发帖 42 积分 229 | |
|
[征求修改]系统安装备份恢复启动盘(中文) 练习制作了一个含GHOST7.5的系统安装备份恢复启动盘,恳求版主和各位来指点、修改、提高。谢谢!
由于不懂DOS,肯定会有很多让大家见笑的地方,望请谅解和帮助。 【主要问题】能否智能实现将镜像备份到硬盘的最后一个分区。 【其它问题】应当加入哪些常用工具。 【AUTOEXEC.BAT:】 @echo off set EXPAND=YES SET DIRCMD=/O:N set comspec=a:\command.com path=a:\;c:\ lh a:\TW /np lh a:\mouse.exe lh a:\mscdex.exe /d:mscd001 lh a:\doskey lh a:\smartdrv lh a:\ntfsdos cls echo. echo. echo. echo. cls echo. echo ==================== echo ★ “魔幻”系统安装备份还原启动盘 ★ echo ======= 制作:QEYU ======= echo. echo 本安装启动盘是在Windows Millennium (MS-DOS 8.0) Bootdisk基础上制作的、 echo 适于在DOS下系统安装、GHOST操作等。 echo 本启动盘制作过程中,得到了中国DOS联盟和CCF精品技术论坛的技术支持,在 echo 此表示感谢。 echo. echo ○ 本启动盘已自动加载HIMEM和SMARTDRV,可对操作系统直接进行安装。 echo ○ 可执行FDISK程序,对硬盘进行分区。 echo ○ 可用FORMAT命令格式化分区。 echo ○ 可自动或手动进行系统备份、系统恢复等GHOST操作。 echo. echo. echo ■ 操作菜单: echo. echo 1 ─ 自动备份系统 echo 2 ─ 自动恢复系统 echo 3 ─ 手动操作GHOST echo 4 ─ 进入DOS提示符 echo. choice /c:1234 ▲ 请按上面所列项目输入序号作出选择 if errorlevel 4 goto tishifu if errorlevel 3 goto shoudong if errorlevel 2 goto huifu if errorlevel 1 goto beifen :beifen echo. echo 你已经选择自动备份系统。请等待…… a:\ghost.exe -clone,mode=pdump,src=1:1,dst=d:\system.gho -sure echo. echo. echo ◇ 系统自动备份已完成,请取出软盘按Ctrl+Alt+Del键重新启动系统。 goto end :huifu echo. echo 你已经选择自动恢复系统,请等待…… a:\ghost.exe -clone,mode=pload,src=d:\system.gho:1,dst=1:1 -sure echo. echo. echo ◇ 系统自动恢复已完成,请取出软盘按Ctrl+Alt+Del键重新启动系统。 goto end :shoudong echo. echo 你已经选择手动操作GHOST,请等待进入GHOST操作界面…… a:\ghost.exe echo. echo. echo ◇ 请进行其它操作,或按Ctrl+Alt+Del键重新启动系统。 goto end :tishifu cls echo. :end echo. 【CONFIG.SYS:】 device=a:\himem.sys /testmem ffdevicehigh=a:\vide-cdd.sys /d:mscd001 dos=high,umb,auto files=30 buffers=30 stacks=9,256 lastdrive=Z |
|
| 第2楼 dsm75 | 发表于 2003-07-25 00:00 |
| 中级用户 发帖 44 积分 238 | |
|
用dready可以判断最后的盘符,
set lastdrv= for %%i in ( q p o n m l k j i h g f e d c) do call chkdrv.bat %%I your command chkdrv.bat 文件内容 if not %lastdrv%'==' goto _end dready %1 /w if errorlevel 2 goto _end set lastdrv=%1 _end 加入wbat 和locate可以选择和判断gho的文件 写好了,给大家享用,好吗 |
|
| 第3楼 walu | 发表于 2003-07-25 00:00 |
| 高级用户 发帖 201 积分 916 | |
|
作为附件方式放出来给大家享用吧,谢谢!
|
|
| 第4楼 QEYU | 发表于 2003-07-26 00:00 |
| 中级用户 发帖 42 积分 229 | |
以下是引用dsm75在2003-7-25 22:01:53的发言: 搞不明白,麻烦得很,和Ghost就是挂不上钩。 传上去的是默认备份到D盘上的,麻烦你给修改指正。 多谢! 打开附件 |
|
| 第5楼 QEYU | 发表于 2003-07-26 00:00 |
| 中级用户 发帖 42 积分 229 | |
以下是引用walu在2003-7-25 22:11:30的发言: 已传上去了。 也希望共同改进提高。谢谢! 为 LP 和 MM 做点实事,是本启动盘的制作宗旨。 |
|
| 第6楼 hzy | 发表于 2003-07-26 00:00 |
| 高级用户 发帖 135 积分 578 | |
|
搭车:
这是我自用的备份恢复盘,请帮忙改良一下! 问题: 1、想把默认备份到D盘改为默认备份到D盘以后的第一个剩余空间大于2G的分区,这个要怎样才能做到? 2、wbat的提示文本能否多行显示(有时想写详细一点的提示信息),怎样才能做到? @ECHO Off CLS SMARTDRV > NUL LH KILLER > NUL LH DOSKEY > NUL LH CTMOUSE > NUL LH MOUSCLIP /M > NUL LH SHSUCDX /d:MSCD000 > NUL LH DOSLFN /Z:CP936UNI.TBL > NUL XMSDSK 2048 /Y > NUL FINDCD > NUL FINDRAMD > NUL PKUNZIP -o %RAMDRIVE%\ DOSCAB.ZIP > NUL PATH=%RAMDRIVE%.;A:.;%CDROM%.;C:.;D:.;E:.;F:..G:.;H:.;I:.;J:.;K:.;L:.;M:.;N:.;O:.;P:.;Q:.;R:.;S:.;T:.;U:.;V:.;W:.;X:.;Y:.;Z: LH TW /NP > NUL CLS :Begin cls WBAT BOX "SYMANTEC GHOST 备份/还原程序! (请在15秒内作出选择)",自动备份,自动还原,手 动,退 出 #4,15 IF ERRORLEVEL 4 goto end IF ERRORLEVEL 3 goto _Manual IF ERRORLEVEL 2 goto _Restore IF ERRORLEVEL 1 goto _Backup :_Backup cls WBAT BOX "程序将自动在 D 盘上创建 C 盘的696MB分卷镜像备份!",确 定,返 回,退 出 #3 IF ERRORLEVEL 3 goto end IF ERRORLEVEL 2 goto Begin IF ERRORLEVEL 1 goto _Autobackup :_Autobackup ghost -clone,mode=pdump,src=1:1,dst=D:\backup.gho -split=696 -z9 -auto -sure goto _end :_Restore cls WBAT BOX "请选择您要还原的备份!",光盘备份,其他备份,返 回,退 出 #4 IF ERRORLEVEL 4 goto end IF ERRORLEVEL 3 goto Begin IF ERRORLEVEL 2 goto _Select IF ERRORLEVEL 1 goto _Cdrom :_Cdrom WBAT BOX "C 盘现有的数据将被彻底删除!您真的要还原光盘备份?",确 定,重新选择,退 出 #3 IF ERRORLEVEL 3 goto end IF ERRORLEVEL 2 goto _Restore IF ERRORLEVEL 1 goto _Restore1 :_Restore1 ghost -clone,mode=pload,src=%CDROM%\backup.gho:1,dst=1:1 -auto -sure goto _end :_Select cls set get= get s "请输入要还原的备份文件全名(含后缀):" copy /y backup.bat %ramdrive%\ > nul for %%a in (d: e: f: g: h: i: j: k: l: m: n: o: p: q: r: s: t: u: v: w: x: y: z do if exist %%a\%get% dir /b /s %%a\%get% >>%ramdrive%\backup.batcall %ramdrive%\backup.bat if not %backup%"==" goto _find WBAT BOX "对不起!没有找到您想要还原的备份文件",重新输入,备份列表,退 出 #3 IF ERRORLEVEL 3 goto end IF ERRORLEVEL 2 goto dir_gho IF ERRORLEVEL 1 goto _Select :_find cls WBAT BOX "备份文件已找到。若执行还原,C盘现有的数据将被彻底删除!",确 定,重新输入,退 出 #3 IF ERRORLEVEL 3 goto end IF ERRORLEVEL 2 goto _Select IF ERRORLEVEL 1 goto _Restore1 :_Restore1 ghost -clone,mode=pload,src=%backup%:1,dst=1:1 -auto -sure goto _end :dir_gho cls WRITEXT 1+ 1 -f10 您的计算机里的备份文件列表如下: echo. for %%a in (d: e: f: g: h: i: j: k: l: m: n: o: p: q: r: s: t: u: v: w: x: y: z do if exist %%a\*.gho dir /b /s %%a\*.ghoWBAT BOX "如果备份文件存在,程序会列表显示出来!",返回开始,重新输入,退 出 #3 IF ERRORLEVEL 3 goto end IF ERRORLEVEL 2 goto _Select IF ERRORLEVEL 1 goto Begin :_end %RAMDRIVE%\ reboot.bat :_Manual ghost.exe :end cls a:\ set backup= cls echo. echo. echo. echo. echo. echo. echo. echo. echo. echo. echo. echo. WRITEXT 0+ 23 -f10 请取出光盘,并按任意键重启您的计算机 ! echo. echo. echo. echo. echo. echo. echo. echo. echo. echo. echo. eject.com > NUL pause > nul reboot.com > nul |
|
| 第7楼 dsm75 | 发表于 2003-07-28 00:00 |
| 中级用户 发帖 44 积分 238 | |
|
以下是一个简单的wbat多行显示提示文本的应用。
findcd >nul FINDRAMD>NUL echo @echo off >%tmp%\_menu.bat echo %RAMDRIVE% >>%tmp%\_menu.bat echo call w.bat pal ! cls ! box @%%0:_txt #1,15>>%tmp%\_menu.bat echo if errorlevel 2 goto exit>>%tmp%\_menu.bat echo if errorlevel 1 call menu.bat>>%tmp%\_menu.bat echo goto exit>>%tmp%\_menu.bat echo :_txt "恭喜你已成功的引导系统">>%tmp%\_menu.bat echo.>>%tmp%\_menu.bat IF NOT %CDROM%#==# ECHO 你的光驱已加载到 %CDROM% 盘>>%tmp%\_menu.bat IF NOT %CDROM%#==# ECHO.>>%tmp%\_menu.bat IF NOT %RAMDRIVE%#==# ECHO 你的虚拟盘已加载到 %RAMDRIVE% 盘>>%tmp%\_menu.bat IF NOT %RAMDRIVE%#==# ECHO.>>%tmp%\_menu.bat ECHO 如果你想启动图形化菜单, 在命令行下键入 menu 启动菜单>>%tmp%\_menu.bat ECHO.>>%tmp%\_menu.bat ECHO 现在将在 #? 秒内启动图形化菜单>>%tmp%\_menu.bat echo.>>%tmp%\_menu.bat echo >>%tmp%\_menu.bat echo :exit>>%tmp%\_menu.bat echo set wbat=>>%tmp%\_menu.bat %RAMDRIVE% call %tmp%\_menu.bat goto exit |
|
| 第8楼 沈洁 | 发表于 2003-07-28 00:00 |
| 金牌会员 发帖 1,812 积分 4,590 来自 上海市 | |
|
最好能双重加载smartdrv
同时smartdrv 也要加上适当的参数啊! 比如最重要的缓存数量, 多加点16MB够狠吧! 如果不加参数等于只加载了256KB啊! 实在是太少了! |
|
| 第9楼 wglwx | 发表于 2003-07-29 00:00 |
| 高级用户 发帖 187 积分 616 | |
smartdrv在加载时是自动决定缓存大小的。以下是引用沈洁在2003-7-28 22:28:45的发言: 如果不加参数,smartdrv在加载时是根据电脑的扩充内存的大小自动决定缓存大小的。 在DOS下: 扩充内存:2M 缓存大小:1M 扩充内存:6M 缓存大小:2M 256K是扩充内存只有2M,而使用WINDOWS时的缓存大小。 |
|
| 第10楼 QEYU | 发表于 2003-07-29 00:00 |
| 中级用户 发帖 42 积分 229 | |
|
@echo off
if not %lastdrv%'==' goto _end if %1'==' goto _end if %1==%cdrom% goto _end if %1==%RAMDRIVE% goto _end dready %1 /w if errorlevel 2 goto _end set lastdrv=%1 :_end 【求助】 为什么找到的 lastdrv 是光驱,是和 %CDROM%、%RAMDRIVE% 有关吗?具体怎样做? |
|
| 第11楼 yuanxin | 发表于 2003-07-29 00:00 |
| 中级用户 发帖 53 积分 230 | |
|
放出来看看
|
|
| 第12楼 QEYU | 发表于 2003-07-29 00:00 |
| 中级用户 发帖 42 积分 229 | |
以下是引用QEYU在2003-7-29 8:03:28的发言: 问题解决了,用了一个投机取巧的办法: 在“自动备份系统”、“自动恢复系统”等项前,不加载光驱;只有在“进入DOS提示符”项前再加载光驱。 非常感谢谢大家的帮助! |
|
| 第13楼 dsm75 | 发表于 2003-07-29 00:00 |
| 中级用户 发帖 44 积分 238 | |
|
if %1==%cdrom% goto _end是判断是否为光驱
if %1==%RAMDRIVE% goto _end是判断是否虚拟盘, 是者goto _end 跳过 否者用工具 dready %1 /w 判断是否存在有该盘 |
|
| 第14楼 QEYU | 发表于 2003-07-30 00:00 |
| 中级用户 发帖 42 积分 229 | |
以下是引用dsm75在2003-7-29 21:14:34的发言: 开始时我是这样做的,但lastdrv还是cdrom,可能没加载到%cdrom%中吧? 超级菜鸟再问一个问题:怎样加载虚拟盘?Ghost总往A盘里写ghosterr.txt文件,具体怎样做? |
|
| 第15楼 dsm75 | 发表于 2003-07-31 00:00 |
| 中级用户 发帖 44 积分 238 | |
|
%cdrom% 是用Wengier的dos启动盘的fincd文件自动指定的变量。%RAMDRIVE%也是Wengier的findramd文件自动指定的
你可以在autoexec.bat中最后加上 findcd >nul findramd >nul 在将这两个文件拷到A盘 xmsdsk 4096 /y /t 可以加载虚拟盘 具体可以看看Wengier的启动盘里面还是有行多有用的 |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |