之前介绍过用vhd磁盘镜像安装系统,
这几年也一直用的是这种方式. 最近因为测试几个精简版系统, 无法从vhd虚拟磁盘启动, 于是又想到一种简单的方式安装, 也就是把系统复制到C盘的文件夹下. 但是windows不支持从文件夹启动, 所以只能用于安装, 启动时再复制到根目录. 经过测试发现这种方式简单方便兼容性好, 可以实现多系统并存, 并且不用格式化磁盘, 原有数据都可以保留.
前提还是首先要有系统安装镜像, 可以从网上搜索下载, 目前一般以esd格式居多. 然后是需要一个已经装好的系统. 空白硬盘全新安装就不需要用这种方式了, 直接分区格式化安装就行. 原系统无法启动的, 只要能进入PE环境也是一样的方式操作.
之后就是在C盘建立一个新文件夹, 解压镜像全部文件到该文件夹下. 工具的话可以用DISM++, 或者7zip都行, 其他解压软件我没测试, 不过只要支持esd格式的应该都是可以的, 就是一个普通的解压文件操作, 只不过文件大一些, 时间长一些.
解压完成之后, 重点开始了, 重启进入PE环境, 或者用Linux LiveCD也行, 因为我们只是复制粘贴, 只要支持文件操作的环境都可以. 因为直接在系统里复制的话系统会有文件保护无法成功, 所以需要一个独立的环境来操作. 复制粘贴就比较简单了, 在C盘所在的分区新建一个空白文件夹, 把Windows, Users, ProgramData, Program Files, Program Files (x86)这五个文件夹移动进去, 32位系统的话没有最后一个, 也就是只有四个. 然后进入刚刚解压好的文件夹, 把这五个同名文件夹移动出来到根目录, 就完成了. 由于在同一分区移动文件, 速度很快, 几乎是瞬间完成. 之后重启, 系统初始设置完成之后就可以使用了.
用这种方式可以完整的保留原有的系统和数据, 日后如果想要恢复, 进入PE将两边换个位置就行了. 由于只是基础的文件操作, 不会对系统的环境设置有任何影响, 只要空间够大, 可以同时安装多个系统, 为了方便切换, 可以使用脚本自动化操作, 如:
cd /c
to=./$1
mv ./ProgramData/ $to
mv ./Program\ Files $to
mv ./Program\ Files\ \(x86\)/ $to
mv ./Users/ $to
mv ./Windows/ $to
ot=./$2
cd $ot
mv ./* ../
运行时, 输入
脚本名称 原文件夹名 新文件夹名
这里使用的是shell脚本, 在PE下可以用git-shell运行. 用cmd运行bat也可以, 都是基本的文件操作. 经测试可以实现多个Windows10和Windows11系统共存, 自由切换, 完全不影响使用.
这种方式的优点是兼容性好, 系统是完全正常运行在C盘根目录下的, 文件操作不会改变任何系统设置, 性能上也不会有任何损失. 缺点方面主要是切换时需要进入PE操作一番, 不如直接选项切换快捷. 而且vhd系统可以支持差分镜像快速还原, 这种就只能用传统方式备份还原了.
作为一种思路和大家分享, 如果有更好的方式也欢迎交流探讨.