我以前不知道,现在看了您的回帖才知道不能两次虚拟,谢谢!
现在好象没有什么软件能实现两次虚拟的,你的引导程序同时虚拟两个盘(例如A盘和B盘),那没有问题的,但是虚拟了A盘后再用A盘上的引导程序来虚拟B盘就不行了。虚拟机里,也不能正常运行自身的虚拟机软件 @mygamexxx
麻烦试试新版的NTBOOT。
奇怪我在我的电脑上经过了N次启动转换还是可以成功启动VBOOT的系统。
首先WEE->GRUB4DOS->NTBOOT.ISO->VBOOT.ISO->VBOOTLDR
能否在VHD文件中安装并启动多个操作系统
如我建一个vhd文件,将其分为4个主分区第1主分区:10G、NTFS,拟装WINXP或装grub4dos等启动管理器,激活分区;
第2主分区:15G、NTFS,拟装WIN7;
第3主分区:15G、NTFS,拟装WIN2008;
第4主分区:15G、NTFS,拟装Winvista。
现在的问题是:
1、能否在启动前,激活VHD文件中的某一主分区,再用vboot启动该激活分区中的系统。
2、或用vboot启动第1分区(已激活)中的grub4dos等启动管理器,再用该启动管理器选择启动其他3个分区中的系统。 4月05日更新:在vboot中添加VHD系统的快速还原菜单
回复 #31 mygamexxx 的帖子
我已将vboot打包成一个ima文件,启动vboot菜单进而启动vhd系统成功。 4月09日更新:把vboot菜单打包成一个ima文件启动vboot的方法;在VHD文件中安装并启动多个操作系统 如此强大的教程,加入精华一点也不过分!
回复 #45 2010ttt 的帖子
谢谢鼓励,如有新的使用体会,我将更新此贴。全是代码,让小菜汗颜
哎呀 让小菜汗颜的代码啊恢复VHD镜像(解决支持长文件名及隐藏分区问题)
发一个自己做的VHD恢复镜像,感觉还好用,请自行解开IMG修改里面的autoexec.bat就行,支持NTFS分区和中文菜单,支持隐藏分区及长文件名[ 本帖最后由 hbby 于 2011-7-27 12:54 编辑 ] 不太理解,有什么用途的 求解 干什么用? 下载来看下,多谢提供。 下来看看,先顶上去! 呵呵,我也共享下我的菜单。
command --set-path=(bd)/BOOT/GRUB/
timeout 10
default 0
gfxmenu (bd)/BOOT/GRUB/message
title 启动 WIN XP 一般模式
#一般模式,每次启动后自动还原差分VHD
dd if=(bd)/WINXP_VHD/WINXPS.BAK of=(bd)/WINXP_VHD/WINXPS.VHD
VHDLDR /WINXP_VHD/WINXPS.VHD
title 启动 WIN XP 超级模式
#DPSW超级模式动态密码验证
DPSW
#验证通过后启动超级模式
VHDLDR /WINXP_VHD/WINXP.VHD 原帖由 Plantsoot 于 2011-7-1 12:03 发表 http://bbs.wuyou.net/images/common/back.gif
呵呵,我也共享下我的菜单。
command --set-path=(bd)/BOOT/GRUB/
timeout 10
default 0
gfxmenu (bd)/BOOT/GRUB/message
title 启动 WIN XP 一般模式
#一般模式,每次启动后自动还原差分VHD
dd if= ...
采用dd命令模式会导致vhd文件越来越大,所以没有采用这种方式
回复 #6 Plantsoot 的帖子
百草大,请问dd命令支持长文件名吗?像Documents and Settings这样的文件名。 什么用途?????????????????回复 #7 hbby 的帖子
确实如你所说,我启动了几十次后,差分VHD已经5G了,dd的方案不好。呵呵,看看你的方案。
回复 #1 hbby 的帖子
我已下载看了,这不失为一个恢复VHD系统的好方法。但VHD系统的文件名一般取为长文件名,且一般将其置于EISA隐藏的NTFS分区中,若能支持EISA隐藏的NTFS分区,且支持长文件名就好了。
我已努力试着解决这一问题,但无果,本人已无法解决。还望高手现身解决这一问题。
我用grub4dos调用映像文件:
title 快速恢复VHD系统(软盘映像方式)
unhide (hd0,1)
#先试验普通隐藏方式,非EISA隐藏方式
map --mem /grub/restore_vhd.img (fd0)
map --hook
rootnoverify (fd0)
chainloader +1
autoexec.bat的内容为
@ECHO OFF
PATH A:\
LH DOSKEY.COM
SET COMSPEC=A:\COMMAND.COM
LH tw /ns /np>nul
ntfs4dos command /P /F /E:2000 /k autoexec.bat
rem LH DOSLFN /C- /Z:CP936UNI.TBL
doslfn >nul
mode 80
echo.
echo *** 快速还原VHD系统 ***
echo.
echo 1.快速还原-win2008r2
echo 2.快速还原-win7
echo 3.快速还原-win2008
echo 4.快速还原-winvista
echo 5.快速还原-win2003
echo 6.快速还原-winxp
echo 7.重新启动电脑
echo.
choice /c:1234567 请选择
if errorlevel 7 goto end
if errorlevel 6 goto winxp
if errorlevel 5 goto win2003
if errorlevel 4 goto winvista
if errorlevel 3 goto win2008
if errorlevel 2 goto win7
if errorlevel 1 goto win2008r2
:win2008r2
for %%b in (c 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 %%b:\vhd_sys\my_win2008r2_CHILD_BAK.vhd set drv=%%b:
copy %drv%\vhd_sys\my_win2008r2_CHILD_BAK.vhd %drv%\vhd_sys\my_win2008r2_CHILD.vhd /y >nul
echo Restore OK!
pause
goto end
:win7
for %%b in (c 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 %%b:\vhd_sys\my_win7_CHILD_BAK.vhd set drv=%%b:
copy %drv%\vhd_sys\my_win7_CHILD_BAK.vhd %drv%\vhd_sys\my_win7_CHILD.vhd /y >nul
echo Restore OK!
pause
goto end
:win2008
for %%b in (c 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 %%b:\vboot_vhd\win2008_child_bak.vhd set drv=%%b:
copy %drv%\vboot_vhd\win2008_child_bak.vhd %drv%\vboot_vhd\win2008_child.vhd /y >nul
echo Restore OK!
pause
goto end
:winvista
for %%b in (c 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 %%b:\vboot_vhd\winvista_child_bak.vhd set drv=%%b:
copy %drv%\vboot_vhd\winvista_child_bak.vhd %drv%\vboot_vhd\winvista_child.vhd /y >nul
echo Restore OK!
pause
goto end
:win2003
for %%b in (c 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 %%b:\vboot_vhd\win2003_child_bak.vhd set drv=%%b:
copy %drv%\vboot_vhd\win2003_child_bak.vhd %drv%\vboot_vhd\win2003_child.vhd /y >nul
echo Restore OK!
pause
goto end
:winxp
for %%b in (c 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 %%b:\vboot_vhd\winxp_child_bak.vhd set drv=%%b:
copy %drv%\vboot_vhd\winxp_child_bak.vhd %drv%\vboot_vhd\winxp_child.vhd /y >nul
echo Restore OK!
pause
goto end
:end
REBOOT http://bbs.wuyou.net/forum.php?mod=viewthread&tid=184518&extra=page%3D1 采用OMNIFSVHD镜像放在最后一个分区
@echo off
cls
tway /np >nul
::---------------------------------------------------
:sys_set
set VHD_DIR=VHD
set VHD_XP=VHD_XP-S1.VHD
set XP_BAK=VHD_XP-BAK.VHD
set VHD_W7=VHD_W7-S1.VHD
set W7_BAK=VHD_W7-BAK.VHD
set USE_PWD=1234
echo.
wbat text 3,6 (+green on black)"正在确定 VHDOS 镜像所在硬盘分区,请等待...... !!!"
echo.
omnifs info >hd_id.txt
awk -f lastdrv.awk hd_id.txt|nset VHD_PART=$1
::---------------------------------------------------
:use_pass
cls
call w.bat box :use_password # +1
if %password%==%USE_PWD% goto menu_vhd
wbat box "操作员密码错误!",重新输入,退出重启 #1
if errorlevel 100 goto use_pass
if errorlevel 2 goto end
if errorlevel 1 goto use_pass
::---------------------------------------------------
:menu_vhd
call w.bat box :vhdmenu # +3
if errorlevel 3 goto end
if errorlevel 2 goto w7_vhd
if errorlevel 1 goto xp_vhd
::---------------------------------------------------
:xp_vhd
cls
echo.
wbat text 3,6 (+green on black)"正删除%VHD_XP%并从%XP_BAK%恢复,稍后启动......!!!"
echo.
omnifs delete %VHD_PART%\%VHD_DIR%\%VHD_XP% >nul
omnifs copy %VHD_PART%\%VHD_DIR%\%XP_BAK% %VHD_PART%\%VHD_DIR%\%VHD_XP%
grub.exe --config-file="command (fd0)/boot/ntboot/ntboot vboot=/%VHD_DIR%/%VHD_XP%"
goto end
::---------------------------------------------------
:w7_vhd
cls
echo.
wbat text 3,6 (+green on black)"正删除%VHD_W7%并从%W7_BAK%恢复,稍后启动......!!!"
echo.
omnifs delete %VHD_PART%\%VHD_DIR%\%VHD_W7% >nul
omnifs copy %VHD_PART%\%VHD_DIR%\%W7_BAK% %VHD_PART%\%VHD_DIR%\%VHD_W7%
grub.exe --config-file="command (fd0)/boot/ntboot/ntboot nt6=/%VHD_DIR%/%VHD_W7%"
:end
quit.com r
[ 本帖最后由 O.Y.M.2010 于 2011-7-6 10:56 编辑 ]
回复 #13 O.Y.M.2010 的帖子
支持EISA隐藏分区? 原帖由 Plantsoot 于 2011-7-3 22:27 发表 http://bbs.wuyou.net/images/common/back.gif支持EISA隐藏分区?
OMNFIS 支持EISA隐藏分区的
回复 #15 O.Y.M.2010 的帖子
太好了,可以把这个IMG打包共享一下吗? 原帖由 Plantsoot 于 2011-7-3 23:01 发表 http://bbs.wuyou.net/images/common/back.gif太好了,可以把这个IMG打包共享一下吗?
http://u.115.com/file/e62r0ny6#
RE_XP_WIN7_VHD.img
[ 本帖最后由 O.Y.M.2010 于 2011-7-6 10:55 编辑 ] 原帖由 O.Y.M.2010 于 2011-7-3 23:16 发表 http://bbs.wuyou.net/images/common/back.gif
http://u.115.com/file/aqbzq9ku#
REVHD.img
下载后虚拟机测试,要求输入密码??
请O.Y.M.2010 朋友给出密码!谢谢了!!!
回复 #16 Plantsoot 的帖子
奇怪的事情发生了,按你的方法,VHD还是不断增大。经测试 omnifs copy %VHD_PART%\%VHD_DIR%\%VHD_BAK% %VHD_PART%\%VHD_DIR%\%VHD_NAME% 没起作用。
奇怪了。
[ 本帖最后由 Plantsoot 于 2011-7-4 09:49 编辑 ] 原帖由 qj_tzy 于 2011-7-3 17:37 发表 http://bbs.wuyou.net/images/common/back.gif
我已下载看了,这不失为一个恢复VHD系统的好方法。
但VHD系统的文件名一般取为长文件名,且一般将其置于EISA隐藏的NTFS分区中,若能支持EISA隐藏的NTFS分区,且支持长文件名就好了。
我已努力试着解决这一 ...
就楼上兄弟的autoexec.bat提出两点建议
1、考虑到ntfs4dos程序版本的兼容问题,必须要先使用deltree命令来删除老的VHD文件
2、由于加载了ntfs4dos,所以再加载支持长文件名DOSLFN程序是不起作用的,所以不能支持长文件名
以上两点是经过测试的,仅供参考 很好的教程,对我很有帮助