This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
kvm:kvm [2020/02/26 12:41] – [clone domain/ vm] tmade | kvm:kvm [2022/03/12 09:13] (current) – [Commands] tmade | ||
---|---|---|---|
Line 4: | Line 4: | ||
apt-get install qemu-kvm virtinst virt-manager bridge-utils libosinfo-bin | apt-get install qemu-kvm virtinst virt-manager bridge-utils libosinfo-bin | ||
+ | apt install -y qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager | ||
+ | |||
sudo adduser $USER kvm | sudo adduser $USER kvm | ||
#apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker | #apt-get install qemu-kvm libvirt-bin virtinst bridge-utils cpu-checker | ||
Line 11: | Line 13: | ||
https:// | https:// | ||
+ | | ||
+ | ====Network==== | ||
+ | |||
+ | Set your network devices on OS level such as (example with 2 network interfaces " | ||
+ | |||
+ | < | ||
+ | # This file describes the network interfaces available on your system | ||
+ | # For more information, | ||
+ | network: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | mtu: 1500 | ||
+ | | ||
+ | | ||
+ | | ||
+ | eno1: | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | mtu: 1500 | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | # | ||
+ | </ | ||
====Commands==== | ====Commands==== | ||
Line 16: | Line 56: | ||
virsh list --all #show all vm´s | virsh list --all #show all vm´s | ||
virsh undefine vm1 | virsh undefine vm1 | ||
- | virsh destroy vm1 | + | virsh destroy vm1 # |
virsh start vm-name | virsh start vm-name | ||
virsh autostart test # | virsh autostart test # | ||
Line 23: | Line 63: | ||
virsh suspend vm-name | virsh suspend vm-name | ||
virsh resume vm-name | virsh resume vm-name | ||
+ | virsh domrename foo bar #rename vm from foo to bar | ||
virsh autostart vm-name | virsh autostart vm-name | ||
virsh autostart --disable vm-name | virsh autostart --disable vm-name | ||
Line 32: | Line 73: | ||
virsh net-list --all #list all network configs | virsh net-list --all #list all network configs | ||
virsh dumpxml vm-name | virsh dumpxml vm-name | ||
+ | virsh dumpxml master > master.xml | ||
+ | virsh define master.xml | ||
virt-manager | virt-manager | ||
- | | + | ====snapshot==== |
+ | | ||
+ | virsh snapshot-list vm-name--tree | ||
virsh snapshot-create-as vm-name | virsh snapshot-create-as vm-name | ||
virsh snapshot-create-as --domain vm-name --name snap-name | virsh snapshot-create-as --domain vm-name --name snap-name | ||
+ | virsh snapshot-create-as vm-name | ||
+ | virsh snapshot-create-as vm-name " | ||
virsh snapshot-info --domain vm-name --snapshotname snap-name | virsh snapshot-info --domain vm-name --snapshotname snap-name | ||
virsh snapshot-revert --current vm-name | virsh snapshot-revert --current vm-name | ||
Line 41: | Line 88: | ||
virsh snapshot-delete --domain vm-name --snapshotname snap-name | virsh snapshot-delete --domain vm-name --snapshotname snap-name | ||
virsh snapshot-create-as --disk-only vm-name | virsh snapshot-create-as --disk-only vm-name | ||
- | virsh snapshot-delete --current --metadata vm-name | + | |
- | | + | |
+ | | ||
+ | qemu-img info test.qcow2 | ||
+ | qemu-img convert -O output_format source destination | ||
+ | virsh domblklist vm-name | ||
+ | virsh blockcommit vm-name sda --active --verbose --pivot | ||
+ | |||
+ | ===Change Path Of " | ||
+ | |||
+ | <code sh rename-backup-path.sh> | ||
+ | # | ||
+ | |||
+ | BACKINGFILE="/ | ||
+ | QCOW2_FILE_TO_CHANGE=" | ||
+ | |||
+ | sudo qemu-img rebase \ | ||
+ | -f qcow2 \ | ||
+ | -u \ | ||
+ | -b $BACKINGFILE \ | ||
+ | $QCOW2_FILE_TO_CHANGE | ||
+ | </ | ||
+ | |||
+ | Other: | ||
+ | |||
+ | < | ||
+ | sudo qemu-img rebase \ | ||
+ | -f qcow2 \ | ||
+ | -b $NEW_BACKING_FILE \ | ||
+ | $QCOW2_FILE_TO_CHANGE | ||
+ | </ | ||
+ | |||
+ | ===Merge snapshot and backing file into standalone disk=== | ||
+ | < | ||
+ | cp test1-base new-master | ||
+ | qemu-img rebase -b new-master test1-master-0 | ||
+ | qemu-img commit test1-master-0 | ||
+ | qemu-img commit new-master | ||
+ | Image committed. | ||
+ | qemu-img info new-master | ||
+ | </ | ||
+ | |||
+ | ===Backup=== | ||
+ | |||
+ | < | ||
+ | virsh blockcopy --domain kmaster sda \ | ||
+ | / | ||
+ | --wait --verbose --shallow \ | ||
+ | --pivot | ||
+ | </ | ||
====Pool==== | ====Pool==== | ||
- | virsh pool-list | ||
virsh pool-list --all #show also inactice pool | virsh pool-list --all #show also inactice pool | ||
+ | virsh pool-list | ||
+ | virsh pool-list --details | ||
virsh pool-info poolname | virsh pool-info poolname | ||
virsh pool-autostart poolame | virsh pool-autostart poolame | ||
virsh pool-start poolname | virsh pool-start poolname | ||
- | virsh pool-undefine poolname | + | virsh pool-undefine poolname |
- | virsh pool-destroy poolname | + | virsh pool-destroy poolname |
virsh pool-edit poolname | virsh pool-edit poolname | ||
virsh pool-define-as --name default --type dir --target / | virsh pool-define-as --name default --type dir --target / | ||
- | | + | |
+ | virsh pool-refresh --pool kvm-vm | ||
====Volume==== | ====Volume==== | ||
virsh vol-list default | virsh vol-list default | ||
virsh vol-list default --details | virsh vol-list default --details | ||
+ | virsh vol-list kvm-vm --details | ||
virsh vol-delete volume-name.qcow2 | virsh vol-delete volume-name.qcow2 | ||
virsh vol-create-as default test_vol2.qcow2 2G | virsh vol-create-as default test_vol2.qcow2 2G | ||
virsh vol-clone --pool default vol1.qcow2 vol2.qcow2 | virsh vol-clone --pool default vol1.qcow2 vol2.qcow2 | ||
- | qemu-img resize volume-name.qcow2 30G | + | qemu-img resize volume-name.qcow2 30G && virsh pool-refresh --pool poolname0 #vm has to be shutdown! |
+ | |||
+ | Pool refesh an volume list: | ||
+ | |||
+ | <code sh pool-vol-ref.sh> | ||
+ | # | ||
+ | |||
+ | virsh pool-refresh --pool poolname0 | ||
+ | virsh pool-refresh --pool poolname1 | ||
+ | virsh vol-list poolname0 --details | ||
+ | virsh vol-list poolname1 --details | ||
+ | </ | ||
| | ||
====clone domain/ vm==== | ====clone domain/ vm==== |