获取 Ubuntu 26.04 Cloud-init 镜像

Ubuntu Cloud Images 镜像官网:https://cloud-images.ubuntu.com/

Ubuntu Server 26.04 Cloud-init 镜像下载直链:https://cloud-images.ubuntu.com/resolute/current/resolute-server-cloudimg-amd64.img

上传到 PVE

数据中心->pve->local(pve)->导入->上传

把刚才下载的 resolute-server-cloudimg-amd64.img 上传到 PVE 中

pve上传img

创建虚拟机

创建一个虚拟机,记录一下 VM ID,等会添加硬盘要用

操作系统处选择“不使用任何介质”

系统处建议勾选“Qemu 代理”

磁盘,cpu,内存,网络可保持默认

导入 Ubuntu 26.04 硬盘

pve9.1貌似只能在 Shell 中转换导入 img格式 到虚拟机,我试过在 web ui 直接导入,但会出问题,虚拟机无法引导系统。(如果是 qcow2 格式的镜像则可以正常导入)

点击 数据中心->pve,点击右上角的 Shell

1
2
3
4
5
6
7
8
9
10
11
12
13
cd /var/lib/vz/import/
ls
# 这里可以看到刚才上传的文件,
resolute-server-cloudimg-amd64.img.raw

# 必须改名把上传时自动添加的后缀 .raw 去掉,否则导入转换会出问题,虚拟机不能引导系统

mv resolute-server-cloudimg-amd64.img.raw resolute-server-cloudimg-amd64.img

# 把 img 导入到指定 VM ID 的虚拟机中,替换113为你的虚拟机VM ID

qm importdisk 113 resolute-server-cloudimg-amd64.img local-lvm

importing disk ‘resolute-server-cloudimg-amd64.img’ to VM 113 …

Logical volume “vm-113-disk-1” created.

Logical volume pve/vm-113-disk-1 changed.

transferred 0.0 B of 3.5 GiB (0.00%)

……

transferred 3.5 GiB of 3.5 GiB (100.00%)

unused0: successfully imported disk ‘local-lvm:vm-113-disk-1’

这样就是导入成功

添加硬件设备

然后进入到虚拟机的“硬件”页面,底下会出现一个“未使用的磁盘 0”

双击这个磁盘,点击右下角的添加

同时添加一个“CloudInit 设备”,总线选择SCSI

再添加一个串行端口(用于xterm.js控制台,Cloud-init类镜像一般开启0号串口的日志输出和bash交互功能)

虚拟机硬件

这时就能在Cloud-Init中设置虚拟机用户密码私钥以及网络

设置用户密码后,到虚拟机选项“页面”中设置“引导顺序”,仅勾选刚才导入的磁盘(通过刚才导入img成功的命令输出就能知道磁盘大小为3.5G这样,这里size=3584M)

设置引导顺序

然后就能启动虚拟机