April8 发表于 2021-1-29 16:48:01

思路很不错,但是把过程写复杂了,其实还原的流程还能再简化和自动化,有时间搞搞看。

April8 发表于 2021-1-29 17:26:42

刚注意到grub4dos支持UEFI了,不知道会不会支持dd命令,如果可以用grub2直接调用g4d的命令覆盖就不需要批处理了,或者直接使用g4d主引导可能也是不错的选择。(当然dd方式和批处理方式各有优劣吧)

ls68057121 发表于 2021-1-31 00:02:59

April8 发表于 2021-1-29 17:26
刚注意到grub4dos支持UEFI了,不知道会不会支持dd命令,如果可以用grub2直接调用g4d的命令覆盖就不需要批处 ...

就等你这样的高手来写了

AndyChen 发表于 2021-2-10 10:23:32

我有个问题,就是选择菜单中文乱码?请问如何解决?

AndyChen 发表于 2021-2-11 10:42:19

grub.cfg 设置了开机密码,进不去,不知道什么问题

set superusers="root"
password root 88888888

mysxbg2000 发表于 2021-2-11 11:05:15

April8 发表于 2021-1-29 16:48
思路很不错,但是把过程写复杂了,其实还原的流程还能再简化和自动化,有时间搞搞看。

这个方法我以前就想过了...
确实是 复杂化了 ...其实没那么多步骤的...
可以简化一下的...

zyy 发表于 2021-2-12 10:56:34

谢谢分享--学习学习

18958925900 发表于 2021-2-16 22:25:10

厉害了,学习中。

lusir401 发表于 2021-2-22 16:44:31

这里的人们,学习能力不是一般的强。

2010speedloong 发表于 2021-2-23 16:40:17

April8 发表于 2021-1-29 17:26
刚注意到grub4dos支持UEFI了,不知道会不会支持dd命令,如果可以用grub2直接调用g4d的命令覆盖就不需要批处 ...

我后来觉得还是用CMD批处理来做挺好的 挺绿色的

iwangz 发表于 2021-3-1 19:16:12

UEFI启动模式下实现VHD秒还原

lzy157 发表于 2021-3-22 15:20:39

很详细的教程,谢谢楼主的分享!

zhrh88 发表于 2021-3-26 16:09:54

启动“3.win_CHILD_BAK”蓝屏怎么办?启动"1.Win.vhd"正常。

zhrh88 发表于 2021-3-26 16:23:55

zhrh88 发表于 2021-3-26 16:09
启动“3.win_CHILD_BAK”蓝屏怎么办?启动"1.Win.vhd"正常。

win_CHILD.vhd已经加载过一加载过文件了。弄vhdx老是出错

wangyong654664 发表于 2021-5-24 21:06:55

照葫芦画瓢成功了。很好的教材。有点不明为什么引导win_CHILD,启动的win_CHILD1或win_CHILD2-

hilsonma 发表于 2021-5-25 08:22:30

wangyong654664 发表于 2021-5-24 21:06
照葫芦画瓢成功了。很好的教材。有点不明为什么引导win_CHILD,启动的win_CHILD1或win_CHILD2-

win_child 是差分vhd,是原件,用作备份
win_child1和win_child2是复制win_child得来的副本,用作运行。
当执行一键还原时,就是重新从原件(备份)复制一份来覆盖副本。
由于运行中的副本无法覆盖,所以要使用两份副本,确保有一份副本覆盖成功。并使用标志文件记录覆盖成功的副本,重启时根据标志文件启动这个覆盖成功的版本,从而实现秒还原。

天使说请安静 发表于 2021-8-24 22:41:54

用BCDEDIT命令会不会方便点,不用显示ESP分区?

创新科技2015 发表于 2021-8-26 14:55:33


感谢分享

nsdbc 发表于 2021-9-1 09:31:38

思路非常棒,还要学习一下,这样的方式实现子菜单进入不同的系统,并且重启就还原的话,需要怎么吸怪呢?

mafa3 发表于 2021-10-29 22:48:19

按楼主思路,做了个自动还原,每次启动重差分一个子盘,解决修改父盘后,在子盘启动蓝屏问题。目前在用,还可以。
就是修改母盘后,需要在C盘系统,或者PE上,运行这个批处理一次。

@echo off
cd /d "%~dp0SETS\"

set fe=d:
set "pc0=%fe%\vhd\vhd.vhd"
set "pc1=%fe%\vhd\vhd1.vhd"
set "pc2=%fe%\vhd\vhd2.vhd"

cls
for %%i in (A B 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 "%%i:\vhd\child.1" (
goto ccc
)
)
goto yyy

:ccc
del /a /f /q "%fe%\vhd\vhd2.vhd"
cmd /c "echo create vdisk file="%PC2%" parent="%PC0%" "|diskpart.exe
echo ok>%fe%\vhd\child.2
del/f/q "%fe%\vhd\child.1
del /a /f /q "%fe%\vhd\vhd1.vhd"
exit

:yyy
del /a /f /q "%fe%\vhd\vhd1.vhd"
cmd /c "echo create vdisk file="%PC1%" parent="%PC0%" "|diskpart.exe
echo ok>%fe%\vhd\child.1
del/f/q "%fe%\vhd\child.2
del /a /f /q "%fe%\vhd\vhd2.vhd"
exit

q2811121939 发表于 2021-11-21 20:43:16

ls68057121 发表于 2021-1-19 22:42
可惜我不懂批处理,我原来的思路是vhd文件夹里面两个子vhd1vhd2,bak文件夹里面也是这两个子vhd,引导bcd ...

copy D:\System\BAK.vhdx D:\System\B1.vhdx /y
copy D:\System\BAK.vhdx D:\System\B2.vhdx /y
bcdedit /default {current}
bcdedit /set {b6de56c0-d268-11ea-b9b6-d0509993fc4a} description "Huan Yuan"
bcdedit /set {3349dfe9-d265-11ea-b389-d0509993fc4a} description "Huan Yuan"
bcdedit /set {current} description "Qi Dong"
和你思路一样,用了十多年了。只把括号里面的id改成你自己的即可
以下为解释,一条一行
覆盖vhd
覆盖vhd
当前的系统为下次的默认选项
把启动项a,修改为还原
把启动项b,修改为还原
把当前启动项修改为启动

langyun 发表于 2021-11-24 18:03:12

hilsonma 发表于 2021-1-14 09:34
原有三个分区,原本是C/D/E三个盘符的,C盘是Windows系统

当你进入父VHD系统后,C盘是父VHD系统,原有 ...

看了有点复杂

大大有空搞个简单的。呵呵

看到win10系统每次重启即使不操作C盘也会越变越大,真实头疼

hlowld 发表于 2021-12-28 11:40:21

本帖最后由 hlowld 于 2021-12-28 14:39 编辑

q2811121939 发表于 2021-11-21 20:43
copy D:\System\BAK.vhdx D:\System\B1.vhdx /y
copy D:\System\BAK.vhdx D:\System\B2.vhdx /y
bcdedi ...想了一下,明白了
如果当前系统用的是B1.vhdx,开机执行批处理后,BCD文件如下:
Qi Dong(default)   ------启动B1.vhdx,即不还原
Huan Yuan             ------启动B2.vhdx,即还原

如果当前系统用的B2.vhdx,则BCD文件如下:
Huan Yuan             ------启动B1.vhdx,即还原
Qi Dong(default)   ------启动B2.vhdx,即不还原

的确非常妙

l10x 发表于 2022-1-11 23:08:07

学习一下

oym2016 发表于 2022-2-12 13:33:16

q2811121939 发表于 2021-11-21 20:43
copy D:\System\BAK.vhdx D:\System\B1.vhdx /y
copy D:\System\BAK.vhdx D:\System\B2.vhdx /y
bcdedi ...

楼主构思秒,想还原用"Huan Yuan"项,不想还原就继续用"Qi Dong"项.
想每次默认自动启动还原系统也可用:
copy D:\System\BAK.vhdx D:\System\B1.vhdx /y
if errorlevel 1 bcdedit /default {3349dfe9-d265-11ea-b389-d0509993fc4a}
copy D:\System\BAK.vhdx D:\System\B2.vhdx /y
if errorlevel 1 bcdedit /default {b6de56c0-d268-11ea-b9b6-d0509993fc4a}

chendaf 发表于 2022-5-7 23:34:09

非常可以!!!

xiangyuebj 发表于 2022-8-2 00:45:15

非常可以!!!

luy-wong 发表于 2022-8-19 23:55:47

还要进系统 这不叫秒还原吧

dos时代菜鸟 发表于 2022-8-22 16:44:27

本帖最后由 dos时代菜鸟 于 2022-8-22 16:46 编辑

ls68057121 发表于 2021-1-19 22:44
要实现我这样的思路,批处理要怎么样写呢,bcd应该有下移菜单的指令吧
我做过类似批处理,可以参考
不用多设置 bcd 菜单,bcd菜单 保持 一个就可以,不用多设置出一个 还原用菜单项。

ice147bing 发表于 2022-8-29 23:34:49

可以可以
页: 1 [2] 3
查看完整版本: UEFI启动模式下实现VHD秒还原