And*_*rej 5 server system-installation 20.04 kvm-virtualization
我使用 Ubuntu 20.04 桌面作为主机,使用 KVM 运行不同的 Linux VM。VM 是使用 virt-install 在脚本中创建的。这适用于 CentOS VM 等。现在我想使用自动安装选项安装 Ubuntu 20.04 VM。我已经生成了自动安装文件并现在使用它。这是我当前的命令:
virt-install --name ubuntu1 --vcpus 2 --memory 2048 --disk device=cdrom,path=./seed.iso --cdrom ~/images/ubuntu-20.04.2-live-server-amd64.iso --disk pool=default,size=10,bus=virtio --network network=br0 --os-variant ubuntu20.04
Run Code Online (Sandbox Code Playgroud)
安装开始,但随后我收到确认自动安装选项的提示。我知道,我必须向内核提供自动安装选项。但为什么?选项“--cdrom”不能与选项“--extra-args”一起使用。我尝试过使用选项“--location”和选项“--install kernel=...,initrd=...,kernel_args”,但它不起作用。我会因为缺少启动路径等而收到另一个错误。
如果我只是确认继续自动安装,那么安装就会顺利完成。因此错误不在创建的 iso 上的本地用户数据或元数据中。我只需要找到在启动时为内核指定自动安装选项的方法。
有人有 virt-install 的工作脚本来启动 Autoinstall Ubuntu 20.04 安装吗?
我知道,Ubuntu 文档中有使用“kvm”命令的示例。但我更愿意对所有脚本使用 virt-install 并重用现有脚本。
不知何故,--location 选项无法找到 Ubuntu 映像的内核和 initrd。您必须手动提供路径:
--location /var/lib/libvirt/images/ubuntu-20.04.3-live-server-amd64.iso,kernel=casper/hwe-vmlinuz,initrd=casper/hwe-initrd
Run Code Online (Sandbox Code Playgroud)
下面是一个完整的示例,它还可以通过串行控制台启用日志记录并防止安装完成后重新启动:
virt-install \
-n test \
--description "Test" \
--os-type Linux \
--os-variant ubuntu20.04 \
--memory 2048 \
--vcpus 2 \
--disk path=/var/lib/libvirt/images/kubernetes.qcow2,bus=virtio,size=50 \
--disk path=/var/lib/libvirt/images/seed.iso,format=raw,cache=none \
--graphics none \
--network bridge:br0 \
--location /var/lib/libvirt/images/ubuntu-20.04.3-live-server-amd64.iso,kernel=casper/hwe-vmlinuz,initrd=casper/hwe-initrd \
--noreboot \
--extra-args 'console=ttyS0,115200n8 serial autoinstall'
Run Code Online (Sandbox Code Playgroud)