v2excoc 发表于 2019-10-31 15:57:12

关于差分VHD秒还原的一些尝试思路

关于差分VHD秒还原的一些尝试思路

1. 利用grub4dos菜单,引导到MSDOS下,挂载NTFS插件,修改名字. (这方法网友说有潜在破坏文件系统的危险,因为dos对NTFS系统支持很不好,也不开源)
2. 利用grub4dos里的dd命令,相当于copy命令,覆盖一下源文件。(这方法实测下来,dd并不能改变文件大小,被撑大的差分VHD,是没办法缩小文件体积的)
3. 引导到winpe下,利用天然支持NTFS的特性,来写批处理改名。(这方法每次要启动一个完整的PE系统,就算不加载桌面,对于秒速还原来说,还是太慢)
4. 引导到linux下,利用NTFS插件,写自动处理代码(和上面一样,再小内核的linux启动,也有个完整过程,对秒还原体验不佳)
5. 利用grub4dos->grub2, 使用grub2命令来还原差分VHD,因为有ntfs的模块支持。(结果发现还是只能用dd,也就是grub4dos的缺点,grub2也完美继承了)
6. 利用论坛批处理,修改bcdedit引导的方法,每次默认启动交替使用差分VHD,确保进入都是新的状态。(由于批处理能力有限,切换到新机器需要人工设置批处理,方法有待改进)
7. 自己写代码,直接分析/调用bcdedit命令, 设置bcdedit /set osdevice=空的差分.VHD,由于程序的自动化程度较高,终于解决的这个问题。

绕了一大圈发现,VHD秒还原实际用的过程中,也没想的那么好。因为每次启动后,差分VHD还是会不断写入磁盘,对磁盘有损耗。就对于磁盘保护而言,还不如多加内存上RamOS。

心零 发表于 2019-10-31 17:44:51

本帖最后由 心零 于 2019-10-31 17:53 编辑

现在SSD这么便宜,而且主控坏了,也用不完写入量。

879792799 发表于 2019-10-31 18:18:51

思路是好就是实践起来不完美

v2excoc 发表于 2019-10-31 18:23:55

879792799 发表于 2019-10-31 18:18
思路是好就是实践起来不完美

是啊,一开始空差分的VHD文件,启动后什么都不干,最少都会被撑大几百兆。
还不如对系统进行保护,有现成的工具。
又或者直接进行沙盒还原,VHD的秒还原地位,还挺尴尬的,远远没到能直接秒杀别的方案。

bfgxp 发表于 2019-10-31 18:37:01

dd命令是不会改变文件大小,但当vhd系统启动后,vhd文件大小会自动调整的。

liujun2000 发表于 2019-10-31 18:39:15

VHD秒还原是还原 不是不改变 怎么和ramos比起来了

心零 发表于 2019-10-31 18:48:43

各有优点,VHD秒还原对我来说很实用。

2012andyle113 发表于 2019-10-31 19:16:26

你这根本就是把两种还原混为一谈啊,启动还原和有选择的还原,根本就不是一回事啊

江南一根葱 发表于 2019-10-31 21:22:39

http://bbs.wuyou.net/uc_server/avatar.php?uid=504115&size=small差分文件放内存盘呢

ducs 发表于 2019-11-1 08:32:18

本帖最后由 ducs 于 2019-11-1 08:37 编辑

使用native的内核启动,仅一级内核,写批处理自动还原

v2excoc 发表于 2019-11-1 13:11:33

ducs 发表于 2019-11-1 08:32
使用native的内核启动,仅一级内核,写批处理自动还原

请问一下怎么处理啊?研究了半天,一头雾水。

v2excoc 发表于 2019-11-1 13:13:21

bfgxp 发表于 2019-10-31 18:37
dd命令是不会改变文件大小,但当vhd系统启动后,vhd文件大小会自动调整的。

换句话说,启动后VHD能自动缩小体积?
我没怎么实际尝试过,也许对于VHDX可行吧, 对于Raw VHD有点悬。

ducs 发表于 2019-11-1 18:47:54

v2excoc 发表于 2019-11-1 13:11
请问一下怎么处理啊?研究了半天,一头雾水。

如果会就,用微软原版pe来做启动还原,没有explorer那种,一启动就是个cmd窗口,速度也很快

lshw 发表于 2019-11-2 10:22:44

vhd最大的缺点是占用空间增大一倍。vhd 10G,所在磁盘还要有10G空闲空间才行。

v2excoc 发表于 2019-11-2 12:06:38

lshw 发表于 2019-11-2 10:22
vhd最大的缺点是占用空间增大一倍。vhd 10G,所在磁盘还要有10G空闲空间才行。

要设置一下注册表里的FsDepend,有差分子vhd,不膨胀开关的。

黑中见白 发表于 2019-11-2 12:24:02

不是有现成的吗?
vhd差分vhd2个,
删掉一个体积大的,然后第二个重命名就ing

joy7501 发表于 2019-11-5 08:46:04

总结得比较好,一般来说在2与3之间选择,还有一种是子差分中安装还原工具的方式也可以。

langyun 发表于 2019-11-6 09:34:14

心零 发表于 2019-10-31 17:44
现在SSD这么便宜,而且主控坏了,也用不完写入量。

意思是对于SSD来说,VHD和正常安装对硬盘损耗是一样的??

心零 发表于 2019-11-6 10:36:04

langyun 发表于 2019-11-6 09:34
意思是对于SSD来说,VHD和正常安装对硬盘损耗是一样的??

不是,VHD安装的写入大于正常安装,可也大不了多少。

实际使用也不差这么点损耗。

langyun 发表于 2019-11-6 10:50:07

心零 发表于 2019-11-6 10:36
不是,VHD安装的写入大于正常安装,可也大不了多少。

实际使用也不差这么点损耗。

收到,谢谢

aikeo 发表于 2019-11-7 23:42:44

我一向都是用第一个方案,msdos下挂载ntfs,写一个批处理删除旧的vhd文件,再复制子vhd,无论多大的文件都可以实现一秒还原,只是还原后第一次启动会往新的vhd写上200多m的文件,不是每次都写的

lsplsp 发表于 2020-1-10 20:11:41

支持一下。

fjzjk 发表于 2020-1-12 15:01:26

不是很有必要省这点写入就是了。现在tlc的ssd也能让你一天写入几十个g。
所以还是用dd吧

minmax 发表于 2020-1-13 10:53:42

>直接分析/调用bcdedit命令, 设置bcdedit /set osdevice=空的差分.VHD
可以分享一下這個方法嗎?
又是如何每次都是指到新的空的差分.VHD呢?

fsnhli2003 发表于 2020-3-31 14:06:51

对于VHD秒还原的方法,grub4dos里有dd命令,但新的电脑UEFI不好设置(UEFI不支持grub),楼主可以分享一下你的代码吗(直接分析/调用bcdedit命令, 设置bcdedit /set osdevice=空的差分.VHD)。

wojinz 发表于 2020-4-27 12:03:24

VHD秒还原的一些尝试思路{:1_194:}

q2811121939 发表于 2020-7-12 15:02:50

可以分享下第七点代码吗,谢谢大神
页: [1]
查看完整版本: 关于差分VHD秒还原的一些尝试思路