Virt-install
External
Internal
Overview
virt-install is a command-line utility for provisioning new virtual machines. It comes as part of the "virt-install" RPM package.
virt-install needs root privileges to work.
Documentation
virt-install --help
Mandatory Options
Guest Virtual Machine Name
The name of the guest virtual machine must be specified with --name
Memory Amount
virt-install needs the amount of memory allocated to the guest, in MiB, which must be specified with --memory.
Guest Storage Specification
One of the following must be specified:
--disk
Specifies guest storage, relative to the storage provided by the virtualization host. The most common option is to refer storage from a storage pool, but other options are also available.
--disk size=10
Specified a new 10 GiB image on the default storage pool.
--disk /storage-pool-path/volume-path,cache=none
--disk device=cdrom,bus=scsi
--disk=?
--nodisks
Installation Method Option
--os-type
The quest operating system type.
Example:
--os-type=linux
--os-variant
This is an important option, used to optimize guest configuration. Valid "--os-variant" values can be obtained with osinfo-query os command
Example:
--os-variant=rhl7.3
Installation Method Options:
--cdrom CDROM CD-ROM installation media -l LOCATION, --location LOCATION Installation source (eg, nfs:host:/path, http://host/path, ftp://host/path) --pxe Boot from the network using the PXE protocol --import Build guest around an existing disk image --livecd Treat the CD-ROM media as a Live CD -x EXTRA_ARGS, --extra-args EXTRA_ARGS Additional arguments to pass to the install kernel booted from --location --initrd-inject INITRD_INJECT Add given file to root of initrd from --location --os-variant DISTRO_VARIANT The OS variant being installed guests, e.g. 'fedora18', 'rhel6', 'winxp', etc. --boot BOOT Configure guest boot settings. Ex: --boot hd,cdrom,menu=on --boot init=/sbin/init (for containers) --idmap IDMAP Enable user namespace for LXC container. Ex: --idmap uid_start=0,uid_target=1000,uid_count=10
Optional Configuration
Network Specification
The network specification is optional, if not defined, a ? will be configured on the guest. Otherwise, it can be specified with '--network NETWORK-SPEC', as follows:
TODO
--network bridge=mybr0
If using a bridge, the bridge must be previously created, as described here Bridged Networking Configuration.
--network network=my_libvirt_virtual_net
--network network=mynet,model=virtio,mac=00:11..
--network none
Virtualization Platform Options
-v, --hvm
This guest should be a fully virtualized guest.
-p, --paravirt
This guest should be a paravirtualized guest.
--container
This guest should be a container guest.
--virt-type
Represents the hypervisor name to use ("kvm", "qemu", "xen", etc.)
--vcpus
Access to a Host Directory
"--filesystem" can be used to specify a host directory to be available on the guest.
Example:
--filesystem /my/host/source/dir,/dir/in/guest