You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04 cloud-init配置失败:用户未创建且主机名不生效

问题分析与解决办法

核心问题:执行命令错误

cloud-init init仅属于cloud-init的初始化阶段,只负责加载数据源、初始化基础模块,并不会执行你配置的用户创建、主机名设置这类业务配置模块。要让你的cloud-config配置生效,需要运行完整的cloud-init执行流程:

  • 先清理cloud-init的执行状态(因为cloud-init默认只在系统首次启动时运行一次):
    sudo cloud-init clean
    
  • 再重新运行整个cloud-init流程:
    sudo cloud-init init --local && sudo cloud-init init
    

或者直接单独触发配置模块的执行:

sudo cloud-init modules --mode=config

其他排查与优化点

  • 状态残留清理:如果之前运行过cloud-init,cloud-init clean可能无法彻底清除所有状态,可手动删除以下目录强制重置:
    sudo rm -rf /var/lib/cloud/instance /var/lib/cloud/instances /var/lib/cloud/sem
    
  • 脚本细节调整:你的脚本语法无明显错误,但两个小细节可规避潜在兼容性问题:
    • 将ssh_import_id: None改为ssh_import_id: [](空列表),部分cloud-init版本对None的解析存在兼容问题;
    • 确认<ssh-pub-key>已替换为实际的SSH公钥内容(该点不影响用户创建,但会影响后续SSH登录)。

内容的提问来源于stack exchange,提问作者joesan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 00:25:19