外观
ESXi 部署 Debian Cloud 镜像
约 916 字大约 3 分钟
2026-08-26
概述
Debian 官方提供预构建的云镜像(Cloud Image),镜像内已集成 cloud-init(云初始化工具),免去手动安装系统的过程。本文记录将 Debian Cloud Image 转换为 ESXi 可用的虚拟磁盘(VMDK,Virtual Machine Disk)、通过 cloud-init 注入初始用户与密码、并在 ESXi 上完成开机与基础配置(SSH、root 密码、网络查看)的完整流程,适用于需要快速在 ESXi 上拉起一台 Debian 虚拟机的场景。
一、下载 Debian Cloud Image
官方镜像地址:https://cloud.debian.org/images/cloud/
下载后假设文件名为 debian.qcow2(qcow2 为 QEMU 的磁盘镜像格式)。
二、转换为 ESXi 可用 VMDK
先转换成 raw(若原始文件已是 qcow2):
qemu-img convert -f qcow2 -O raw debian.qcow2 debian.raw再转换成 ESXi 可识别的 VMDK:
qemu-img convert -f raw -O vmdk \
-o adapter_type=lsilogic,subformat=monolithicFlat \
debian.raw debian.vmdk笔记
adapter_type=lsilogic:指定 SCSI 控制器类型,ESXi 默认可识别。subformat=monolithicFlat:生成可直接挂载开机的厚置备磁盘,产物为debian.vmdk与debian-flat.vmdk配对文件。
重要
monolithicFlat 才能直接作为 ESXi 虚拟硬盘开机;streamOptimized 仅用于 OVF/OVA 导入,不能直接挂载启动。
三、创建 cloud-init 配置
创建 user-data(示例路径 /root/user-data):
#cloud-config
users:
- name: debian
sudo: ALL=(ALL) NOPASSWD:ALL
shell: /bin/bash
lock_passwd: false
chpasswd:
list: |
debian:123456
expire: false笔记
lock_passwd:false允许该用户使用密码登录;chpasswd: 用户debian,初始密码123456;
创建 meta-data(示例路径 /root/meta-data):
instance-id: debian-01
local-hostname: debian四、生成 seed.iso
cloud-localds /root/seed.iso /root/user-data /root/meta-data提示
cloud-localds 由 cloud-utils 包提供,在 Debian/Ubuntu 主机上执行 apt install cloud-utils 安装。
笔记
生成成功后得到 /root/seed.iso,该 ISO 在虚拟机首次启动时由 cloud-init 读取,用于初始化用户与主机名。
五、在 ESXi 创建虚拟机
- 创建新虚拟机:
- 客户机操作系统:Linux → Debian 13(64 位)
- SCSI 控制器:LSI Logic SAS
- 上传
debian.vmdk到 datastore - 上传
seed.iso到 datastore - 编辑虚拟机设置:
- 将
debian.vmdk添加为硬盘 - 将
seed.iso挂载到 CD/DVD 驱动器
- 将
- 确保 CD/DVD 驱动器「开机时连接」已勾选(首次启动必须能读到 seed.iso)
六、启动虚拟机
首次启动时,cloud-init 读取 seed.iso,自动创建用户 debian,密码 123456。
登录信息:
用户名:debian
密码:123456验证 sudo 权限:
sudo -i七、清理(可选)
- 首次启动并登录后,可在虚拟机设置中卸载
seed.iso - 删除
/root/seed.iso,避免下次开机 cloud-init 重复应用初始化配置 - 按需修改用户密码或创建更多用户
八、开启 SSH 登录
备份原配置文件:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak编辑 SSH 配置文件:
sudo nano /etc/ssh/sshd_config找到并修改以下参数(行首
#注释符需一并删除):PermitRootLogin yesPasswordAuthentication yes保存并退出(Nano:Ctrl+O 保存,Ctrl+X 退出)。
重启 SSH 服务:
sudo systemctl restart ssh
警告
开启 PermitRootLogin yes 且使用密码认证属于高危配置,仅建议在隔离的内网环境或临时调试时使用;生产环境应改用密钥登录并禁用 root 远程登录。
九、其他配置
为 root 用户设定密码:
sudo passwd root查看当前网络接口:
ip a
十、VMDK 子格式对比
| 子格式(subformat) | 用途 | 能否直接开机 |
|---|---|---|
| monolithicFlat | ESXi 虚拟硬盘(厚置备) | 能 |
| thin | ESXi 虚拟硬盘(精简置备) | 能 |
| streamOptimized | OVF/OVA 导出导入 | 不能(仅用于导入) |
提示
直接在 ESXi 上开机,选 monolithicFlat(厚置备)或 thin(精简置备);需要打包成 OVA 分发时才用 streamOptimized。