转:Windows系统初始化工具Cloudbase-init

原文地址:https://foxi.buduanwang.vip/windows/1789.html/

在Windows实现初始化工具叫做cloudbase-init。

 

Proxmox VE对于Windows类型的虚拟机,提供了一个叫作configdrive2的元数据服务,务必先看下面链接,了解Proxmox VE在Cloudinit方面的实现。

佛西博客 - Proxmox VE与Cloud-init (buduanwang.vip)

在Windows客户机中安装好Cloudinit-base软件包之后,下次开机会从配置的元数据列表中,搜寻现有的元数据,在Proxmox VE 元数据服务就是configdrive2,因此,Cloudbase-init会读取cloudinit信息,从而自定义虚拟机。

目前PVE支持的元数据类型有User,Network。所以目前能办到的就是修改ip或者dns,新建用户,修改密码等基本功能。

一 修改PVE代码

看过上面的链接,你应该注意到,对于任何类型的os,PVE都会将用户密码进行加密,再写入到cloudinit驱动器中。

然而Windows就只识别明文密码。所以不修改代码,在用户创建这块就会存在问题。

这里有一个热爱ProxmoxVE的团队做出了一个修改代码的补丁,本文就是根据此方案,给大家分享。

GECO-IT-PUBLIC/Geco-Cloudbase-Init - Geco-Cloudbase-Init - Version Control System

安装git

apt update && apt install git -y

克隆库

 cd /opt/ && git clone https://git.geco-it.net/GECO-IT-PUBLIC/Geco-Cloudbase-Init/

PVE6和PVE7代码不一样,因此有2个补丁,先确认自己是哪个版本,在终端执行pveversion

 

阅读剩余部分...