megrxu

从 Ultimate 镜像安装 Windows Pro

Nov 17, 2021  「DevOps」  

前段时间需要安装 Windows 来跑一些国内公司开发的软件,不过学校的正版授权对于 Windows 7 只提供了 Professional 版本,并且镜像是特制过的,总觉得不太卫生。因此尝试使用 MSDN 上的官方镜像,并使用学校派发的 KMS 服务器来激活。

然而,MSDN I Tell You 上只提供了 Windows 7 Ultimate 的安装镜像。

微软允许从低版本无痛升级到高版本,例如从家庭版到专业版,但是从专业版降级到 Ultimate 版本,却是不允许的。 不过理论上,Windows 7 Ultimate 的安装镜像当然包括了所有的 Windows Pro (专业版)该有的文件,应该是可以配置安装的。搜索了下,发现如果将 ISO 文件树中的一个控制版本的文件( sources/ei.cfg )删去或是重命名,在正式安装的时候就会出现版本选择的选项,之后再通过学校提供的 KMS 服务器进行正版激活即可。

下载 ISO 文件

MSDN I Tell You 提供的是磁力链接,使用 Transmission 进行下载即可。很幸运地,当时就有在做种的 Peer,因此不久就下载完毕了。

处理 ISO 文件

本以为 ISO 文件可以使用相应的工具,直接对内部的文件进行重命名或者删除。发现是不可行的。在挂载之后,ISO 文件完全是只读的状态,和插入的真实 CD 一样。

那么就需要先通过 unar <filename>.iso 解压出来。删去 sources/ei.cfg 文件后,再重新制作一个 Bootable 的镜像。在解压后的目录中运行:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
mkisofs -iso-level 4 -l -R -UDF -D \
  -b boot/etfsboot.com             \
  -no-emul-boot                    \
  -boot-load-size 8                \
  -hide boot.catalog               \
  -eltorito-alt-boot               \
  -eltorito-platform efi           \
  -no-emul-boot                    \
  -b efi/microsoft/boot/efisys.bin \
  -o ../<new-filename>.iso .

这样制作出来的 ISO 就可以用来安装 Windows 7 Pro 了。

通过 KMS 服务器激活

联系到学校的管理员,获取正版授权的 KMS 服务器的 IP 地址。从官网上拿到对应 Windows 版本的 KMS 激活密钥。例如,Windows 7 Professional 对应的 Key 是 FJ82H-XT6CR-J8D7P-XQJJ2-GPDD4

然后在 Windows 使用管理员权限上打开 CMD,并依次运行:

1
2
3
slmgr.vbs /ipk <activation-key>
slmgr.vbs /skms <kms-server-ip>
slmgr.vbs /ato

之后就可以发现系统已经被正确地激活了。