|
3#
楼主 |
发表于 2014-1-9 23:07:33
|
只看该作者
补充说明
以下是grub4dos启动菜单:
pxe detect
configfile
default 0
timeout 0
title find /menu.lst, /boot/grub/menu.lst, /grub/menu.lst
errorcheck off
configfile /boot/grub/menu.lst
configfile /grub/menu.lst
if "%@root%"=="(ud)" && calc *0x82A0=*0x82b9&0xff
if "%@root:~1,1%"=="f" && find --set-root --devices=f /menu.lst && configfile /menu.lst
find --set-root --ignore-floppies --ignore-cd /menu.lst && configfile /menu.lst
find --set-root --ignore-floppies --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst
find --set-root --ignore-floppies --ignore-cd /grub/menu.lst && configfile /grub/menu.lst
errorcheck on
commandline
title commandline
commandline
title reboot
reboot
title halt
halt
========================================
以下是menu.lst内容:
find --set-root --devices=h /BOOT/PRELOAD.BAT && /BOOT/PRELOAD.BAT
configfile %?_BOOT%/boot/grub/defsys.lst
========================================
以下是PRELOAD.bat内容:
!BAT
::if exist preload exit
::如果不想显示提示信息可以设置下面的参数,只要非空就不显示按键提示信息
::set QUIET=
terminal console
color blue/green yellow/red white/magenta white/magenta
clear
echo
echo -P:0205 $[1105]System Checking...
::do not display cursor
call Fn.70 0
set NTBOOT=%~dp0NTBOOT/NTBOOT
set AddonDir=%~dp0ADDONS
set BootDir=%~dp0
set BootDir=%BootDir:~0,-1%
set ModBoot=%~dp0MODBOOT/MODBOOT.BAT
setlocal
debug off
set QGHO.CHK=%~dp0MODBOOT/QGHO/QGHO.CHK
find --set-root --devices=h makeactive --status && %QGHO.CHK% || echo -n
find --set-root --devices=h /qgho.### && goto :QGHO_FAST
:start
debug off
%BootDir%/grub/vfont %BootDir%/preload.fnt
clear
echo
if exist QUIET goto :check_key
if exist QGHO.GHO && echo -P:0910 $[0105]Press $[1102]F9$[0105] To Restore System && echo -P:1210 $[0106]纮 $[1102]F9$[0106] 羴聜脙膭 $[0102] %QGHO.OS% on %QGHO.SRC%
if exist QGHO.GHO || echo -P:0910 $[0105]Press $[1102]F9$[0105] To Backup System && echo -P:1210 $[0106]纮 $[1102]F9$[0106] 艆茊脙膭 $[0102] %QGHO.OS% on %QGHO.SRC%
echo -n -P:-0215 $[0102]GRUB4DOS 菄葓蓧蕣藡, $[0106]by chenall http://chenall.net
echo -n -P:-0130 $[0105]<F5/F10> $[0107]CDROM $[0105]<F6/F11> $[0107]usb $[0105]<F7/F12> $[0107]NetBoot
echo -n -P:03-15 $[0101]F8 $[0107]SysMenu
echo -n -P:04-20 $[0103]Ctrl+F8 $[0107]ReChk
echo -n -P:06-20 $[0104]Ctrl+F9 $[0107]QGHO
echo -n -P:07-20 $[0105]Ctrl+C $[0107]SHELL
:check_key
echo -P:00-12 $[0107]%@DATE%
call Fn.70 0
call Fn.5 0 1
pause --test-key --wait=5
set /A key=*0x4CB00
if %key%==0x1970 && pause --test-key && set /A key=*0x4CB00
%BootDir%/grub/vfont
clear
debug off
root %?_BOOT%
goto %key% || echo -n
:0x3B00 F1
:0x3C00 F2
:0x3D00 F3
:0x3E00 F4
:1
:default
if exist %BootDir%/OEMSLIC.BIN && %BootDir%/GRUB/SLIC %BootDir%/OEMSLIC.BIN
if exist %BootDir%/SYS_MENU.LST && configfile %BootDir%/SYS_MENU.LST
if "%QGHO.OS%"=="Unknown" && goto :0x4200
echo Default Boot: $[0102]%QGHO.OS% on %QGHO.SRC%
if exist QGHO.SRC && chainloader %QGHO.SRC%+1 ! chainloader (hd0)1+1
boot
exit
:0x3F00 F5
:0x4400 F10
plpbt cdrom
exit
:0x4000 F6
:0x8500 F11
plpbt usb
exit
:0x4100 F7
:0x8600 F12
kernel %BootDir%/GRUB/IPXE.LKRN
boot
exit
:0x4200 F8
cat --length=1 %BootDir%/GRUB/DEFSYS.LST | set a=
if not exist a && goto :0x6500
configfile %BootDir%/GRUB/DEFSYS.LST
goto :default
:0x6500 Ctrl+F8
echo -P:0205 $[1105]System Checking...
%BootDir%/GRUB/DEFSYS.BAT || Pause Unknown Error.
configfile %BootDir%/GRUB/DEFSYS.LST
exit
:check_pwd
if not exist QGHO.PWD && exit
password --md5 %QGHO.PWD% && exit
call Fn.4
checkrange 0:0xff read 0x4cb00 || exit 1
goto :check_pwd
:0x2e03 Ctrl+C
commandline
goto :start
:0x6600 Ctrl+F9
call :check_pwd || goto :start
%BootDir%/grub/vfont
%ModBoot% boot=/LEVEL3/QGHO.ZIP || endlocal @
goto :start
:0x4300 F9
if exist QGHO.GHO || goto :QGHO_START
call :check_pwd || goto :start
:QGHO_START
clear
%BootDir%/grub/vfont
%ModBoot% boot=/LEVEL3/QGHO.ZIP QGHO=AUTO %QGHO.SRC% || endlocal @
goto :start
:QGHO_FAST
clear
echo
echo -P:1520 $[1102]QGHO Fast Restore Checking....
echo $[0106] QGHO Fast Restore configfile: $[0105]%@root%/QGHO.###
cat %@root%/QGHO.###
echo
%ModBoot% boot=/LEVEL3/QGHO.ZIP fast=%@root%/QGHO.### || endlocal @
goto :start
:0x5D00 Shift+F10
command --set-path=(bd)/BOOT/GRUB/
ls %AddonDir%/# > (md)0x300+4 || configfile %BootDir%/GRUB/tools.lst
cmp (md)0x300+4 %BootDir%/GRUB/ADDONS.LST && configfile %BootDir%/GRUB/tools.lst
clear
echo
echo $[1106]Loading addons......
map --rd-base=0x800
map --rd-size=0x1000
cat %BootDir%/GRUB/MENU.DEF > (rd)+1
cat (md)0x300+4 | call :ADDONS=
dd if=(rd)+1 of=%BootDir%/GRUB/tools.lst || Pause Write file error %BootDir%/GRUB/tools.lst
dd if=(md)0x300+4 of=%BootDir%/GRUB/ADDONS.LST || Pause Write file error %BootDir%/GRUB/ADDONS.LST
configfile (rd)+1
goto :start
:ADDONS
if "%1"=="" exit
echo -n title >> (rd)+1
cat %AddonDir%/%1 >> (rd)+1
echo >> (rd)+1
shift 1
goto :ADDONS
========================================
以下是本机磁盘:
========================================
以下是本地硬盘系统boot.ini内容:
[boot loader]
timeout=1
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
C:\WC2008\wangchong="Start Win7_2003_WinPE20120305"
一个Windows XP,一个网虫2008 PE
|
|