Ubuntu 18.04
Sponsored Link

KVM : Create Virtual Machine#12018/05/17

Install GuestOS and create Virtual Machine. This example shows to install Ubuntu 18.04.
[1] Install GuestOS on text mode via network, it's OK on Console or remote connection with Putty and so on.
Furthermore, Virtual Machine's images are placed at [/var/lib/libvirt/images] by default as a Storage Pool,
but this example shows to create and use a new Storage Pool.
# create a storage pool

mkdir -p /var/kvm/images

virt-install \
--name ubuntu1804 \
--ram 4096 \
--disk path=/var/kvm/images/ubuntu1804.img,size=30 \
--vcpus 2 \
--os-type linux \
--os-variant ubuntu18.04 \
--network bridge=br0 \
--graphics none \
--console pty,target_type=serial \
--location 'http://jp.archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/' \
--extra-args 'console=ttyS0,115200n8 serial'
Starting install...    
# installation starts

# after finishing installation, back to KVM host and shutdown the guest like follows

virsh shutdown ubuntu1804

Domain template is being shutdown
# mount guest's disk and enable a service like follows

guestmount -d ubuntu1804 -i /mnt

ln -s /mnt/lib/systemd/system/getty@.service /mnt/etc/systemd/system/getty.target.wants/getty@ttyS0.service

umount /mnt
# start guest again, if it's possible to connect to the guest's console, it's OK all

virsh start ubuntu1804 --console

Ubuntu 18.04 LTS ubuntu ttyS0

ubuntu login:
The example of options above means like follows. There are many options for others, make sure with [man virt-install].
specify the name of Virtual Machine
specify the amount of memories of Virtual Machine
--disk path=xxx ,size=xxx
[path=] specify the location of disks of Virtual Machine
[size=] specify the amount of disks of Virtual Machine
specify the virtual CPUs
specify the type of GuestOS
specify the kind of GuestOS
possible to show the list of OS with follows
# osinfo-query os
specify network types of Virtual Machine
specify the kind of graphics. if set [none], it means nographics.
specify the console type
specify the location of installation source where from
specify parameters that is set in kernel

[2] Move to GuestOS to HostOS with Ctrl + ] key.
Move to HostOS to GuestOS with a command 'virsh console (name of virtual machine)'.
# Ctrl + ] key

# Host's console
# move to Guest

virsh console ubuntu1804

Connected to domain template
Escape character is ^]    
# Enter key
# Guest's console
[3] It's easy to create another VM to copy from current VM with a command below.
virt-clone --original ubuntu1804 --name ubuntu1804_org --file /var/kvm/images/ubuntu1804_org.img

Allocating 'ubuntu1804_org.img'                |  30 GB  00:05

Clone 'ubuntu1804_org' created successfully.

# disk image

ll /var/kvm/images/ubuntu1804_org.img

-rw------- 1 root root 2611806208 May 16 20:46 /var/kvm/images/ubuntu1804_org.img
# configuration file

ll /etc/libvirt/qemu/ubuntu1804_org.xml

-rw------- 1 root root 2853 May 16 20:46 /etc/libvirt/qemu/ubuntu1804_org.xml
Matched Content