我们在使用Vmware workstation的时候,创建虚拟机的时候有两种模式。一种是典型,一种是高级。典型下面有个简易安装,它首先需要一个ISO文件,然后需要您提供4项信息。
- Windows key
- Windows 版本
- 用户名
- 密码 4.1. 自动登录,是不是需要密码 当然您可以什么都不填写,它有默认值。 那么我们看看它的默认配置是什么:
系统行为
我们来尝试下,添加一块空磁盘,然后调换下它们的接口位置。原来的系统磁盘调到1口,新磁盘调到0口。重新运行,结果是报错无法安装系统,但是磁盘已经被重新分区过了。
我们来手动安装下试试,结果还是报错。
我们试试删除原来的EFI分区试试,可以安装了。在试试删除新磁盘的EFI分区,也可以安装了。可以得出的结论是,如果有两个EFI分区。Windows操作系统就无法完成安装的动作。
。 通过上面的测试我们可以得出几个结论:
- 默认会选择接口编号为0的磁盘尝试安装操作系统
- 多磁盘设备,如果想系统安装成功,需要确保其它磁盘没有EFI分区。
- 不管是否成功安装操作系统,都会把磁盘0重新分区
实现方法
我们观察了简易安装的行为,测试了添加新磁盘,改变接口之后错误的原因。我们看看VM使用什么方式来实现简易安装的。如果我们观察下简易安装的初始配置,会发现它有个软驱。猜测下应该和它有关,但是安装完成后VM会删除软驱和软驱文件。我们来验证下猜想,看看软驱里会有些什么东西。 我们不勾选创建完成后开启虚拟机,然后把软驱文件复制到其它地方。让它完成简易安装,完成后我们发现把光驱和软驱的设置成了自动检测,就是把文件都弹出了。
软驱文件也被删除了
尝试重现简易安装
我们使用高级选项创建一个新的虚拟机,然后在光驱和软驱中添加和简易安装一样的文件设置。开机之后简易安装顺利进行。
软驱里有什么?
- autounattend.xml 是windows的自动应答文件
- storepwd 功能未知。
- storepwd的配置文件
- UNATTEND 无人值守批处理
- UPGRADER.exe安装vmware tools,删除软驱文件,调整光驱和软驱的状态。
- WINNT.SIF 老版本Windows自动应答文件,已经废弃了吧。
具体过程
- 从光驱启动系统
- 搜索无人值守文件
- 安装操作系统、创建用户名和设置密码
- 复制软驱中的文件'storepwd.exe'、'storepwd.ini'、'UNATTEND.bat'、'upgrader.exe'
- 执行'UNATTEND.bat'
- 安装VMTOOLS
- 设置光驱,软驱
- 重启操作系统
小技巧
VMWARE生成的自动应答文件,是可以拿出来直接使用的,就不需要在‘Windows 系统映像管理器’里面去生成和编辑应答文件了。 使用方法:
- 准备个U盘,格式化成FAT32把文件‘autounattend.xml’复制到根目录安装系统会自动搜索应答文件
- 编辑ISO把‘autounattend.xml’丢到光盘的根目录
- WDS添加应答文件
- 把'autounattend.xml'应用到install.wim里 注意:一定要小心,应答文件里的磁盘ID和想要安装的磁盘ID要相同,不然会重新分区数据盘