用 Vultr 跑免费的官方正版 Windows Server

· 402 words · 2 minute read

这是一篇从前博客迁移来的文章。 tags:

  • 搞服务器
  • Windows categories:
  • 搞服务器
  • Windows

Thumbnail


前几天鱼塔偶然发现了微软官方的 Windows Server 免费版。注意这里的免费不是有限制的使用(如 180 天),而是无限制使用,并且不需要激活,免费下载。听到这些的你是不是激动了呢(真香!),不过这里还是要泼个冷水:

  • 该版本完全正版,无需激活,免费下载安装。

  • 这个免费版是高度精简的,几乎就相当于 Ubuntu 伺服器。

  • 没有UI,进去就是命令行。

  • 带有 Hyper-V(?)和一些其他东西

  • 综上所述,基本上和 Linux 伺服器差不多(雾

  • 版本名叫 Microsoft Hyper-V Server(本文使用 2016 版)

如果能接受的话,跟着下面的 Step-by-step 教程走,即可在 Vultr 安装这个版本。

0x00 认清形势 #

(怎么搞的跟考前学生会议似的 捂脸

先来轻点一下我们的需求:

  • 用微软官方的镜像
  • 在 Vultr 上安装
    • Vultr 只支持透过 HTTP(S) 链接加入自定义 ISO
    • 而且需要在 ISO 内加入 Vultr 的驱动
    • 所以需要修改 ISO
    • 修改完需要上传到自己的服务器或其他地方做直链
    • ISO 非常大

因为需要修改 ISO 并上传,所以 强烈建议在自己的伺服器上完成这个步骤(光速网路的用户可以无视),因为 ISO 非常大(大概得有个 3 个多 GB),家庭网路上传极为困难,而且容易出错。在伺服器上完成这个操作可谓省时省力。

综上所述,我们需要:

  • 微软官方 ISO
  • Vultr 的驱动
  • 一台跑着 Linux 的伺服器(理论上 Windows 也可以)

0x01 下载镜像 #

既然要装系统肯定得有镜像是吧(废话),所以我们从微软官方下载:https://www.microsoft.com/en-us/evalcenter/evaluate-hyper-v-server-2016 。填写基本信息之后就可以下载了,伺服器下载一般都很快,所以等个一两分钟就行。

之后再下载 Vultr 的驱动: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.141-1/virtio-win-0.1.141.iso 同样扔伺服器上。

然后我们需要 7z 软体帮忙解压缩 ISO 和 mkisofs 软体帮忙打包 ISO,请自行安装到伺服器。

最后,打开 Vultr 的装驱动教程,放浏览器备用。地址: https://www.vultr.com/docs/windows-custom-iso-with-virtio-drivers

至此准备活动已经做完,请同学们每人拿一个足球之后排成两队站好(雾

0x02 加入驱动 #

你的驱动没装好,你的系统两行泪。安装系统的时候需要建立分区,没有驱动的话硬盘都找不到还建你 🐎。

先在伺服器上建个文件夹,一会的 ISO 会被解压到这里(已经单独放文件夹的同学请忽略):

~ $ ls -l
virtio-win-0.1.141.iso 
14393.0.161119-1705.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_ZH-CN.ISO
~ $ mkdir win/
~ $ cd win
win $ mv ../14393.0.161119-1705.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_ZH-CN.ISO .
win $ mv ../virtio-win-0.1.141.iso  .

之后开始解压,请确保有充足的磁盘空间(把小电影删了就够了):

win $ 7z x 14393.0.161119-1705.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_ZH-CN.ISO
win $ ls -l
14393.0.161119-1705.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_ZH-CN.ISO
virtio-win-0.1.141.iso 
sources
boot
setup.exe
........(其他 ISO 内档案)

之后建个单独的文件夹用于存放驱动,比如叫 driver,然后把驱动 ISO 扔里面来解压:

win $ mkdir driver
win $ cd driver
driver $ mv ../virtio-win-0.1.141.iso 
driver $ ls -l
virtio-win-0.1.141.iso 

再把驱动解压出来:

driver $ 7z x virtio-win-0.1.141.iso 
driver $ ls
.....(驱动档案)

好了,到现在为止我们的 ISO 已经可以创建了,不过记得把无用文件拿走,毕竟谁都不想 ISO 里面套个 ISO 对吧((

driver $ cd ..
win $ cd ..
~ $ ls -l
win
~ $ mv win/14393.0.161119-1705.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_ZH-CN.ISO .
~ $ mv win/driver/virtio-win-0.1.141.iso .
~ $ ls -l
win
14393.0.161119-1705.RS1_REFRESH_SERVERHYPERCORE_OEM_X64FRE_ZH-CN.ISO
virtio-win-0.1.141.iso 

完事了之后 win 就是要成为 ISO 的目录,稍后我们去创建,先 calm down。

0x03 创建 ISO #

先回顾下上一节:

~ $ ls -l
win
... (其他 ISO)

这个 win 就是 ISO 的根目录,它包含 Windows Server 安装文件和必要驱动,我们需要把它打包成 Bootable ISO。

这时候就需要 mkisofs 出场了,执行下面这个命令来创建 ISO(感谢 Telegram @XJ1qia0 巨佬的无私帮助):

~ $ genisoimage -b "boot/etfsboot.com" --no-emul-boot \
  --eltorito-alt-boot -b "efi/microsoft/boot/efisys.bin" --no-emul-boot \
  --udf --hide "*" -V "ISO 标题,随便填" -o "ISO 文件名" ISO 目录(这里是 win)

比如说我这里就应该是:

~ $ genisoimage -b "boot/etfsboot.com" --no-emul-boot \
  --eltorito-alt-boot -b "efi/microsoft/boot/efisys.bin" --no-emul-boot \
  --udf --hide "*" -V "SERVER" -o "free_windows.iso" win

按下回车,跟着 cxk 打会篮球,之后 ISO 就会躺在当前目录。

待 ISO 创建完毕就可以把它扔到网上了,自己弄个 Nginx 啥的就行,不多说。

之后打开 Vultr 网站,创建 ISO,填入你的链接,再打会篮球。

0x04 开机 #

再次 Calm down 请。

打开 Vultr 网站并新建机器,无需多说,这里讲几个注意事项:

  • Server Type 里面选 Upload ISO,然后选你刚上传的 ISO。
  • Server Size 个人建议至少 4G 内存,Windows 就别图便宜了。
  • 没了。再说的话就是准备钱包。

之后很快就会提示你准备就绪,这时候打开网页版 VNC,因该会出现如下界面:

iPxe

欸欸欸?不是挂了自己的 ISO 了嘛(

只能告诉你别急,急得话按几次 Ctrl+Alt+Del。Vultr 一会就会给你挂上然后重启机器的,Calm down。

一会就出现了,如图:

Loading files

0x05 安装 #

安装比较简单,按照向导走就行了,唯一要注意的就是驱动的安装。

Windows Logo

安装程式正在启动

现在安装

语言

许可协议(注意这里并没有要求序列号)

选自定义:

咋装?

发现没有分区,之后点 加载驱动程式:

选自定义安装

出现下面这个界面

安装驱动

这时你就会发现打包驱动的作用了。挨个点 浏览,然后导航到 DVD / drivers(你新建的驱动文件夹),如图所示:

然后 分别打开每个目录。之后里面可能会有很多文件夹,根据一开始你浏览器里边的 Vultr 官方驱动安装教程走,每个文件夹都代表不同的 Windows 版本。如果你在装 Windows Server 2016 就选 2k16。进入后选 amd64,点确定。如果点了确定出现了下面这个 Dialog,则说明选错了(没有根据 Windows 版本选文件夹不会出错):

反面教材

如果没弹出就是选对了。如果列表里没有出现你的驱动没关系,可能是不兼容,可以取消勾选 隐藏与此计算机硬件不兼容的驱动程序。如果取消勾选后出现则确定是不兼容,之后勾选回来。如果确定不兼容可以不用管,继续点 浏览 加载下一个即可。请注意,每次加载完一个驱动后都需要点 下一步 确认,才能再回来继续加载下一个。

点 下一步 后

都加载完之后就可以看到磁盘了(我这里加载完最后一个才看到,草):

这时候点 新建 然后无脑确定即可,之后会出现下面的样子:

现在已经准备好安装了,点 下一步,等待魔法出现。上一些图,不多说。

1

2

3

4

5

6

之后会自动重启,不必担心,Vultr 默认从硬盘启动。

7

0x06 配置 + 体验 #

(讲真我不会配置的)

装好之后应该很简单了,按照屏幕所示配置即可。当然,我也不知道为什么远程桌面连不上,别问我啊,只管上图:

好了,至此 Windows Hyper-V Server 的体验就告一段落了,是不是准备删机了?(雾