virt-install安装Ubuntu
更新于2021-01-27
起步用virsh创建虚拟机比较难搞.先用virt-install安装.
virt-install 是个便捷的命令行工具.
ubuntu下安装virt-install
shell
sudo apt install virtinst详见:virtinst
virt-install参数详解
详见: linux.die.net--virt-install
创建虚拟机
由于ubuntu镜像原因[详见文章末尾],18.04,20.04建议用VNC方式安装. 16.04可以以串口模式安装.
查看os-variant
shell
sudo apt install libosinfo-bin
osinfo-query osVNC模式
shell
virt-install \
--virt-type kvm \
--name ubuntu18 \
--vcpus 4 \
--ram 4048 \
--cdrom /path/to/ubuntu-18.04.5-server-amd64.iso \
--disk /path/to/ubuntu18.qcow2,format=qcow2,size=16 \
--network bridge=br0 \
--os-type=linux \
--os-variant=ubuntu18.04 \
--graphics vnc,password=123456,listen=0.0.0.0,port=5900打开VNC客户端,连接上宿主机,端口是5900
正常安装ubuntu
配置IP(默认dhcp分配)后,可以SSH连接了
启动串口服务,可以用virsh console命令连接了.
串口无显卡模式
这里使用串口的方式安装,无显卡
执行脚本
shell
virt-install \
--virt-type kvm \
--name ubuntu20.01 \
--vcpus 2 \
--ram 2048 \
--location /path/to/os.iso \
--disk /path/to/image.qcow2,format=qcow2,size=16 \
--network bridge=br0 \
--os-type=linux \
--os-variant=ubuntu20.04 \
--graphics none \
--extra-args='console=ttyS0'安装SSH服务
安装时选择ssh安装ssh服务.
DHCP
默认guest会用DHCP获取IP
没有VNC的情况下可以在宿主机上用arp -a查看新增IP
然后SSH到guest.
启动串口服务
默认没有启动串口服务, 所以需要ssh进入系统后,手动启动串口服务.
shell
sudo systemctl start serial-getty@ttyS0
sudo systemctl enable serial-getty@ttyS0测试镜像
- [x] ubuntu16.04
- [x] ubuntu18.04
- [x] ubuntu20.04
错误
串口模式下LIVECD镜像安装会提示:RuntimeError: Couldn't find kernel for install tree.
详见: couldnt-find-hvm-kernel-for-ubuntu-tree
using-virt-install-to-install-ubuntu-server-18-04-but-hangs
所以还是VNC安装吧;
玩的开心.