.. contents::
Debian or Ubuntu
Redhat or Fedora
This is a list of commands to use in the virsh cli.
To start the virsh cli run the following cmd:
.. code-block:: bash
$ virsh
or:
.. code-block:: bash
virsh –connect qemu:///system
KVM has its own commands, but we like to use virsh.
Here is a list comparing Xen and KVM (virsh) commands.
xen | xm list
kvm | virsh list | virsh dominfo
xen | xm create /etc/xen/
kvm | virsh create /etc/libvirt/qemu/
xen xm console
kvm virsh console
xen xm shutdown
kvm virsh shutdown
This command doesn’t always work…
Be sure the guests XML file has the following entry:
|
Also make sure the apci is installed on the guest operating system.
debian / ubuntu sudo apt-get install acpid
fedora / redhat yum install acpid
xen ln -s /etc/xen/
kvm virsh autostart
xen NA
kvm
virsh edit
xen xm destroy
kvm virsh destroy
kvm virsh quit
From the KVM host run:
.. code-block:: xml
virsh edit
Then add the following inside the
.. code-block:: xml
From the Guest run:
.. code-block:: xml
sudo cp -p /etc/init/tty06.conf /etc/init/ttyS0.conf sudo vi /etc/init/ttyS0.conf sudo diff /etc/init/tty06.conf /etc/init/ttyS0.conf
This example assumes ubuntu linux.
.. code-block:: python
sudo apt-get install python-vm-builder
.. code-block:: python
vmbuilder kvm ubuntu –help
mbison example
.. code-block:: bash
VMNAME=mbison
mkdir /vms/$VMNAME
sudo vmbuilder kvm ubuntu –libvirt=qemu:///system –suite=lucid
–flavour=virtual
–hostname=$VMNAME –domain=‘foxhop.net’ –rootsize=‘10240’ –mem=‘1024’
–ip=192.168.1.51 –gw=192.168.1.254 –dns=192.168.1.22 –bridge=br0
–addpkg=openssh-server –addpkg=acpid –timezone=EDT –verbose
cammy example
.. code-block:: bash
VMNAME=cammy
mkdir /vms/$VMNAME
sudo vmbuilder kvm ubuntu
–libvirt=qemu:///system
–suite=lucid
–arch=amd64 -o
–flavour=virtual
–hostname=VMNAME − − dest = /vms/VMNAME
–rootsize=20480
–mem=1024
–bridge=br0
–ip=192.168.1.52
–gw=192.168.1.254
–dns=192.168.1.22
–user=john
–pass=doe
–addpkg=openssh-server
–addpkg=acpid
–timezone=EDT
–verbose
This method shows the virt-install script installing from a debian netboot image hosted on the internet
.. code-block:: bash
HOSTNAME=tehforum DOMAIN=foxhop.net
sudo virt-install
–name=HOSTNAME − − vcpu = 1 − − ram = 396 − − disk = /KVMROOT/HOSTNAME.qcow2,size=10
–os-type=linux
–autostart
–location=http://ftp.nl.debian.org/debian/dists/wheezy/main/installer-amd64/
–extra-args=“auto=true priority=critical keymap=us locale=en_US
hostname=HOSTNAMEdomain=DOMAIN
url=http://192.168.1.22/foxhop-debconf-preseed.txt”
This method shows the virt-install script installing from an ubuntu netboot image hosted on the internet
.. code-block:: bash
HOSTNAME=mbison DOMAIN=foxhop.net
sudo virt-install
–name=HOSTNAME − − vcpu = 1 − − ram = 396 − − disk = /KVMROOT/HOSTNAME.qcow2,size=10
–os-type=linux
–autostart
–location=http://archive.ubuntu.com/ubuntu/dists/raring/main/installer-amd64/
–extra-args=“auto=true priority=critical keymap=us locale=en_US
hostname=HOSTNAMEdomain=DOMAIN
url=http://192.168.1.22/foxhop-debconf-preseed.txt”
Sometimes it is helpful to be able to mount a drive image under the host system. For example, if the guest doesn’t have network support, the only way to transfer files into and out of the guest will be by the storage devices it can address or to restore files from a backup image.
To mount qcow2 images there is (at least in F-11 qemu) very useful qemu-nbd util. It shares image through kernel network block device protocol and this allows to mount it:
.. code-block:: bash
sudo modprobe nbd max_part=63 sudo qemu-nbd -c /dev/nbd0 image.img sudo mount /dev/nbd0p1 /mnt/image
This is how you add an additional disk to a guest. In this example I will be adding a 20GB disk image to a guest dom named cammy.
.. code-block:: bash
fallocate -l 20g /vms/cammy/cammy-aux.img
or
.. code-block:: bash
qemu-img create -f qcow2 /vms/cammy/cammy-aux.img 20G
If you want to look that the image statistics try this command.
.. code-block:: bash
qemu-img info /vms/cammy/cammy-aux.img
Now we need to mount this disk:
.. code-block:: bash
sudo virsh attach-disk cammy /vms/cammy/cammy-aux.img vdb
That command only mounted the disk. To make this change permanent we need to alter the dom’s xml:
.. code-block:: xml
# sudo virsh edit cammy
SSH to the guest and verify that the disk shows up in fdisk
-l. You may now partition this disk how you like. For more
information view
linux raw filesystem management <http://www.foxhop.net/linux-raw-filesystem-management>_.
http://pve.proxmox.com/wiki/Shrink_Qcow2_Disk_Files