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

使用libvirt与kickstart部署Ubuntu 16.04 VM时启动卡住问题

我之前在部署Ubuntu 16.04虚拟机时,也碰到过一模一样的问题——kickstart不生效还卡在“Booting from ROM”界面。结合踩过的坑,给你整理几个关键的排查和解决步骤:

先解决“Booting from ROM”卡启动的问题

这个卡住的现象通常是虚拟机优先尝试从空硬盘启动,或者启动介质配置有问题导致的:

1. 检查启动顺序配置

打开你的libvirt虚拟机XML配置文件,确认<os>部分把CDROM设置为第一启动项:

<os>
  <type arch='x86_64' machine='pc-i440fx-xenial'>hvm</type>
  <boot dev='cdrom'/>
  <boot dev='hd'/>
</os>

这里boot dev='cdrom'必须在hd前面,不然虚拟机只会尝试从空硬盘启动,自然卡ROM引导。

2. 验证ISO镜像完整性

损坏的安装镜像也会导致引导失败,用md5sum校验一下你的Ubuntu 16.04 ISO:

md5sum ubuntu-16.04.7-server-amd64.iso

对比官方提供的MD5值,如果不一致,重新下载完整的镜像文件。

再排查Kickstart不生效的问题

启动问题解决后,接下来处理kickstart不执行的核心问题:

1. 确认Kickstart参数传递正确

在libvirt XML的<cmdline>部分,必须正确指定kickstart文件的位置,Ubuntu 16.04的参数格式要注意:

  • 如果用HTTP托管kickstart文件:
    <cmdline>
      console=tty0 console=ttyS0,115200n8 ks=http://你的宿主机IP/ks.cfg
    </cmdline>
    
  • 如果用本地磁盘挂载kickstart(比如把ks.cfg放在一个单独的raw镜像里):
    <cmdline>
      console=tty0 console=ttyS0,115200n8 ks=file:/dev/vda1/ks.cfg
    </cmdline>
    

注意:不要和RHEL系的kickstart参数混淆,Ubuntu 16.04不需要额外加ksdevice之类的参数。

2. 检查Kickstart文件语法

kickstart文件本身的语法错误会直接导致不执行,开头必须包含核心指令:

install
# 选择安装源,用CDROM或者网络源
cdrom
# url --url=http://archive.ubuntu.com/ubuntu/dists/xenial/main/installer-amd64/

# 必须设置的基础配置
rootpw --encrypted 你的加密密码
timezone Asia/Shanghai --isUtc
bootloader --location=mbr

确保没有遗漏必要指令,比如rootpw、timezone,这些都是安装流程必须的。

3. 避免存储设备配置错误

如果用本地磁盘挂载kickstart,要确保存储设备在libvirt XML里正确定义:

<disk type='file' device='disk'>
  <driver name='qemu' type='raw'/>
  <source file='/var/lib/libvirt/images/ks-storage.img'/>
  <target dev='vda' bus='virtio'/>
</disk>

这里的ks-storage.img需要是预先格式化好的ext4镜像,把ks.cfg放在根目录下,虚拟机才能识别到。

最后检查硬件兼容性

Ubuntu 16.04对新硬件支持有限,建议使用兼容的硬件配置:

  • 芯片组选择pc-i440fx-xenial,不要用q35这类新芯片组:
    <type arch='x86_64' machine='pc-i440fx-xenial'>hvm</type>
    
  • 确保开启全虚拟化(virt-type='hvm'),半虚拟化模式无法正常引导安装ISO。

如果还是不行,用virsh console <你的虚拟机名>连接控制台,查看具体的错误输出——比如“找不到kickstart文件”的提示,能帮你快速定位问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 10:32:37