本帖最后由 wavelu 于 2023-6-29 23:30 编辑
各位网友,在使用VHD系统时大家都有各自部署的方式,各自都有各自的劳动成果,但在分享时很难复用,所以我在这里提出了一点建议,期望达到抛砖引玉的效果,在此提前感谢大家!
云固件通常使用VHD(x)作为标准的镜像格式,但制作的方法和微软提供的VHD(x)镜像格式制作过程有很大的不同。
格式差异具体差异主要表现在微软要求的本地启动VHD镜像使用位于VHD(x)文件之外的引导管理器(Boot Loader),而云固件使用VHD(x)镜像文件内ESP分区内的引导管理器。因此,云固件使用的VHD(x)镜像文件是可以作为虚拟机的磁盘启动的,但微软要求的本地启动VHD(x)镜像是无法启动,原因是缺少ESP分区。 VHD(x)镜像格式支持Fixed、Dynamic、Difference三种模式,其中Difference模式(差分模式)可以生成父子镜像,提供了快照、回滚等多种高级功能,云固件充分利用了这些能力来方便用户。 标准镜像文件云固件提供了标准镜像文件,使用VHDx动态格式,容量为256G,区块大小为默认值;分区使用GPT格式。 分层规范云固件支持差分格式的磁盘镜像格式,为了让制作的镜像文件能够得到最大化的利用,云固件提出了如下分层规范: - 分层按照L0-L9来定义;
- 高层级镜像原则上要求包含低层级全部镜像内容;
- 除L0级别外,每个层级均可以生成差分级别;
- 同层级的差分镜像使用层级加两位数的顺序号来区分,如301,305,501,511等;
分层约定根据分层规范要求,约定各层级的具体要求。 L0层L0层为待安装操作系统层,仅对Windows系列有效。 使用GPT格式进行磁盘分区; 可通过dism命令将wim文件展开到系统分区,使用bcdboot添加引导文件;亦可通过Windows安装程序在虚拟机内进行部署至待重启为止。 L1层本层为基本安装层。 Windows系统或者Linux执行基本安装过程,安装期间断开网络,防止自动更新; 用户名me,无密码或者有密码统一为“I@mtheNo.1”,不包含引号部分; L2层L2层为完善驱动层。 本层在L1的基础上,安装完善宿主机需要的全部驱动程序,包括自动更新驱动的服务程序,如Thinkpad的System Updater、NUC上的Intel® Driver & Support Assistant (Intel® DSA)等。 对于DIY主机,由于独立显卡的差异,本层会分化出一个L2.5层,满足针对N卡、A卡、I卡(Intel Arc系列独立显卡)一次性部署需求。 针对Linux系统,也需更新包括集成显卡、独立显卡、网卡等驱动程序。 L3层L3层为系统更新层。 本层执行系统非跨版本更新,更新时限为制作时。如Windows 10 1809,不可跨版本升级到1903版本。 L4层L4层为系统激活层。 用户根据自身需要使用企业内部KMS服务器激活Windows系统。 默认激活服务器为KMS.local。 用户也可以在本层使用sysprep更新用户设置信息。 L5-L9层L5到L9层为用户自定义层。 用户可以在本层安装用户所需的应用程序或者数据文件,比如Microsoft Office、电子邮件客户端、开发工具等。 用户也可以在这些层级上定义不同目的镜像分层。 分层例外及特殊情况本规范要求的分层约定能满足常见系统的使用要求,但并非所有系统均能满足这些约定,因此本约定为建议规范。 一些常见的例外情况如下: - 品牌PC厂商通常会提供OEM激活的Windows Home版操作系统。Windows Home版的系统镜像部署后,会立即满足激活条件,用户可在L2层上即可看到Windows系统已经被激活。
- Windows系统在L4层的激活过程,由于很多企业并未购买KMS服务,但还是存在L5-L9层的应用环境需求,所以提供这类镜像时,必须要镜像的说明文件中明确系统未激活,或者使用180天试用激活。
- Linux系统不存在Windows系统的释放过程,但很多安装ISO镜像文件提供LiveCD的体验环境,因此,Linux系统可封装出L0层级的可启动ISO镜像环境。本层级无法被后续更高层级继承。
|