系统镜像怎么做(制作Windows镜像的两种方式及步骤)
在云平台场景,虽然大部分情况下都使用Linux系统,但也有客户要求使用Windows作为实例镜像,这就涉及到Windows镜像的制作。制作镜像有在线和离线两种方式,下面介绍的是离线制作方式的一般步骤。
本文使用 Windows Server 2012 R2 作为镜像制作环境。也可使用 Windows 7, 8 等 Windows 系统作为镜像制作环境,使用 Windows 7 时,需安装微软提供的AIK/ADK 镜像工具。
如果镜像是x64位的系统,则用于制作镜像的系统也必须是64位的,32位系统生成的boot loader无法引导64位系统启动。
需要安装ADK工具,或者使用windows server 2012及以上的镜像制作环境,需要有大于6.2.*版本的dism工具。
创建虚拟磁盘文件
打开 Server Manager -> Tools -> Computer Management左侧导航栏选择 Storage -> Disk Management菜单 Action -> Create VHD选择目标 VHD 文件位置选择硬盘大小,如10G选择 VHD 格式。用户可以选择 VHD 或 VHDX,VHD 最大支持 2T 磁盘,2T以上空间请选择 VHDX。选择 VHD 类型,固定大小或动态扩展均可,推荐 Dynamic expandingVHD文件创建后,会自动挂载到系统,若没有自动挂载,可通过菜单 Action -> Attach VHD 选择 VHD 文件挂载。
磁盘分区
进入命令行或 PowerShell,执行 diskpart 工具。list disk 列出磁盘,根据实际情况选择刚创建的虚拟磁盘进行分区操作。
Windows 支持 BIOS/MBR 和UEFI/GPT 两种模式,根据硬件实际环境,确认合适的分区方式。下面是两种分区类型的操作示例,其中,卷标 S 分配给系统分区,卷标 W 分配给 Windows 分区,卷标 R 分配给恢复分区,后面的示例使用此卷标约定。
按照微软推荐的典型分区,BIOS/MBR 分区操作举例如下(rem指令为注释):
rem 选择磁盘,根据实际情况选择,可通过 list disk 查看磁盘列表 select disk 0 rem 清空磁盘 clean rem 创建系统分区,使用 MBR 时,可以不创建系统分区 create partition primary size=100 format quick fs=ntfs label="System" assign letter="S" rem 设置分区为可启动 active rem 创建 Windows 分区 create partition primary rem 根据需要,缩减分区大小,用户也可在上一句指定分区大小 rem 缩减的空间可用于数据分区 rem 在本例中,缩减 500M 用于创建恢复分区 shrink minimum=500 rem 格式化 Windows 分区 format quick fs=ntfs label="Windows" assign letter="W" rem 创建恢复分区 create partition primary format quick fs=ntfs label="Recovery" assign letter="R" set id=27 exit
按照微软推荐的典型分区,UEFI/GPT 分区操作举例如下:
rem 选择磁盘,根据实际情况选择,可通过 list disk 查看磁盘列表 select disk 0 rem 清空磁盘 clean rem 转换磁盘为 GPT 分区格式 convert gpt rem 创建 100M 的 EFI 分区 create partition efi size=100 rem 注意,需格式化为 FAT32 format quick fs=fat32 label="System" assign letter="S" rem 创建 MSR(微软保留) 分区 create partition msr size=16 rem 创建 Windows 分区 create partition primary rem 根据需要,缩减分区大小,用户也可在上一句指定分区大小 rem 缩减的空间可用于数据分区 rem 在本例中,缩减 500M 用于创建恢复分区 shrink minimum=500 rem 格式化 Windows 分区 format quick fs=ntfs label="Windows" assign letter="W" rem 创建恢复分区 create partition primary format quick fs=ntfs label="Recovery tools" assign letter="R" set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac" gpt attributes=0x8000000000000001 exit
使用 UEFI/GPT 方式,必须创建系统分区用于EFI引导。
安装Windows
打开命令行工具或 PowerShell 输入命令:
dism /Apply-Image /ImageFile:<install.wim> /Index:1 /ApplyDir:W:install.wim是Windows安装镜像Source目录里install.wim文件的位置。Index:指定 WIM 包内的镜像索引号,比如一个 Windows Server 2012 R2 WIM 文件包含了Standard Core, Standard, Datacenter Core, Datacenter四种镜像。可以通过 dism 工具查看:dism /Get-ImageInfo /ImageFile:<install.wim>ApplyDir:指定目标 Windows 分区。
执行命令后,Windows 文件被写入目标分区,写入时间取决于磁盘速度,大约需要 10 分钟。
安装引导程序
如果采用了系统分区加Windows分区的方案,请将引导程序安装在系统分区,如:
W:WindowsSystem32bcdboot W:Windows /s S: /f <firmware>
fireware 指定固件类型,根据实际情况选择 UEFI, BIOS 或直接选择 ALL。
BIOS/MBR
a. 仅 Windows 分区:
W:WindowsSystem32bcdboot W:Windows
b. Windows 分区 + 系统分区:
W:WindowsSystem32bcdboot W:Windows /s S:
GPT
W:WindowsSystem32bcdboot W:Windows /s S: /f UEFI
注意:制作Windows7镜像发现其自带的bcdboot不支持/f参数,而Windows 2012R2支持。
实验用Windows 2012R2自带的bcdboot设置Windows7镜像的UEFI是可行的。
设置恢复工具(可选)
如果分区方案包含恢复分区,则安装恢复工具:
md R:RecoveryWindowsRE copy W:WindowsSystem32Recoverywinre.wim R:RecoveryWindowsREwinre.wim W:WindowsSystem32 eagentc /setreimage /path R:RecoveryWindowsRE /target W:Windows
缷载和验证
回到 Disk Management,右键选择虚拟磁盘,选择 Detach VHD,保存磁盘。
镜像制作完成后,可进一步进行定制化修改,如需验证镜像,可以使用制作出的磁盘镜像创建虚拟机并运行。
如果在 Qemu 虚机里运行 VHDX 映像,需先转换为其它格式,如qcow2,VHD 可以直接使用。
本文链接:http://hainhha.cn/yy/1380.html
版权声明:本文内容由互联网用户自行发布,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请联系qq:1442716096举报,一经查实,本站将立刻删除。