home_server:home_server_setup:kvm

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
home_server:home_server_setup:kvm [2022-10-01 Sat wk39 22:44] – [Mount a qcow2 image directly] baumkphome_server:home_server_setup:kvm [2024-02-18 Sun wk07 18:09] (current) – [Change the Disk Allocated Size] baumkp
Line 6: Line 6:
   *[[https://linuxhint.com/install_kvm_debian_10/|Installing KVM on Debian 10]]   *[[https://linuxhint.com/install_kvm_debian_10/|Installing KVM on Debian 10]]
   *[[https://computingforgeeks.com/how-to-install-kvm-virtualization-on-debian/|How To Install KVM Hypervisor on Debian 11|10]]   *[[https://computingforgeeks.com/how-to-install-kvm-virtualization-on-debian/|How To Install KVM Hypervisor on Debian 11|10]]
-Basically to install the KVM Hypervisor: ''sudo apt install qemu qemu-kvm qemu-system qemu-utils libvirt-clients libvirt-daemon-system virtinst bridge-utils'' bridge-utils is optional.+  *[[https://www.cyberciti.biz/faq/install-kvm-server-debian-linux-9-headless-server/|How to install KVM server on Debian 9/10 Headless Server]] 
 +Basically to install the KVM Hypervisor: ''sudo apt install qemu-kvm qemu-system qemu-utils libvirt-clients libvirt-daemon-system virtinst bridge-utils'' bridge-utils is optional. 
 + 
 +  *''genisoimage'' is a package to create iso images 
 +  *''libguestfs-tools'' is a library to access and modify VM disk images 
 +  *''libosinfo-bin'' is a library with guest operating systems information to assist VM creation
  
 Use the built-in clone facility: ''sudo virt-clone %%--%%connect=qemu:%%//%%example.com/system -o this-vm -n that-vm %%--%%auto-clone''. Use the built-in clone facility: ''sudo virt-clone %%--%%connect=qemu:%%//%%example.com/system -o this-vm -n that-vm %%--%%auto-clone''.
Line 44: Line 49:
  
 ====Windows10 on KVM==== ====Windows10 on KVM====
 +I have not used Windows on a VM now since circa 2021.  Just no need.  I do have a dual boot on my main desk top that I default to Debian testing and can boot to Windows 11 when I need to use Windows based software.  My sons all still use Windows exclusively on their computers and game consoles..... So I still have a family MSOffice 365 subscription.  This give access to MSoffice and 1TB of MS Cloud each.
 I had poor performance on Windows 7, 8/8.1, and 10 running on KVM a few years back.  A large frustration was that I could not seem to get more than 2 CPUs functioning on the Windows VM even though I assigned 4.  Performance was very poor, with CPU usage usually saturated with any use and relatively high even when idle.  I found out early that Windows has limitations on the number of CPUs that could be used; 1 on Home, 2 on professional and 4 on Workstation and more on Server versions, at least that was my understanding.  As I did not have a great need for the Windows VM I did not try too hard and basically did not use.   I had poor performance on Windows 7, 8/8.1, and 10 running on KVM a few years back.  A large frustration was that I could not seem to get more than 2 CPUs functioning on the Windows VM even though I assigned 4.  Performance was very poor, with CPU usage usually saturated with any use and relatively high even when idle.  I found out early that Windows has limitations on the number of CPUs that could be used; 1 on Home, 2 on professional and 4 on Workstation and more on Server versions, at least that was my understanding.  As I did not have a great need for the Windows VM I did not try too hard and basically did not use.  
  
Line 66: Line 72:
     - Create a snapshot of the VM and direct all changes to the snapshot allowing safe backup of main VM file     - Create a snapshot of the VM and direct all changes to the snapshot allowing safe backup of main VM file
     - Active back commit the snapshot and verify back commit worked     - Active back commit the snapshot and verify back commit worked
 +
 +====KVM Offline Backup====
 +<fc #ff0000>Note this only works on VMs that are shut down</fc>
 +  -''sudo virsh list --all'' to list all KVM virtual machines.
 +  -''%%sudo virsh dumpxml VM_name | grep -i "source file"%%'' to list the VM source file location noted in the VM XML file.
 +  -''sudo virsh dumpxml vm-name > /path/to/xm_file.xml'' to archive/backup the VM XML definition file.
 +  -''sudo cp -p /working/path/VM_image.qcow2 /path/to/'' to archive/move the VM file.
 +  -''%%sudo virsh undefine vm-name --remove-all-storage%%'' to undefine the VM and remove its storage. <color #ed1c24>(Be careful with this one!)</color>
 +  -''sudo virsh define --file <path-to-xml-file>'' to import (define) a VM from an XML file.
 +
 +
 +References:
 +  *[[https://ostechnix.com/export-import-kvm-virtual-machines-linux/|How To Export And Import KVM Virtual Machines In Linux]]
 ====kvm back-up links==== ====kvm back-up links====
   *[[https://schh.medium.com/backup-and-restore-kvm-vms-21c049e707c1|Backup and Restore KVM Vms]]   *[[https://schh.medium.com/backup-and-restore-kvm-vms-21c049e707c1|Backup and Restore KVM Vms]]
Line 105: Line 124:
 How to change the amount of disk space assigned to a KVM  *[[https://fatmin.com/2016/12/20/how-to-resize-a-qcow2-image-and-filesystem-with-virt-resize/|How to Resize a qcow2 Image and Filesystem with Virt-Resize]] How to change the amount of disk space assigned to a KVM  *[[https://fatmin.com/2016/12/20/how-to-resize-a-qcow2-image-and-filesystem-with-virt-resize/|How to Resize a qcow2 Image and Filesystem with Virt-Resize]]
   *First turn off the virtual machine to be checked   *First turn off the virtual machine to be checked
-  *Next find the file location of the firtual machine to be checked+  *Next find the file location of the virtual machine to be checked
     *Next query the file: ''sudo qemu-img info /path_vm/vm_name.img''     *Next query the file: ''sudo qemu-img info /path_vm/vm_name.img''
     *Next increase the allowed size of the vm disk: ''sudo qemu-img resize /path_vm/vm_name.img +20G''     *Next increase the allowed size of the vm disk: ''sudo qemu-img resize /path_vm/vm_name.img +20G''
     *We need to make a backup of the VM disk: ''sudo cp /path_vm/vm_name.img /path_vm/vm_name_backup.img''     *We need to make a backup of the VM disk: ''sudo cp /path_vm/vm_name.img /path_vm/vm_name_backup.img''
 +    *We can check the file system on the VM: ''%%virt-filesystems --long -h --all -a /path_vm/vm_name.img%%'', <fc #ff0000>//**we can also use this to confirm the correct partition to expand**//</fc>.
 +    *We the backup VM disk to create a new expanded drive: ''%%sudo virt-resize --expand /dev/sda1 /path_vm/vm_name_backup.img /path_vm/vm_name.img%%''
 +
 +The ''virt-filesystems'' command may not be installed by default and can be installed with the following ''sudo apt install guestfs-tools''  
  
 [[https://computingforgeeks.com/how-to-extend-increase-kvm-virtual-machine-disk-size/|How To extend/increase KVM Virtual Machine (VM) disk size]] [[https://computingforgeeks.com/how-to-extend-increase-kvm-virtual-machine-disk-size/|How To extend/increase KVM Virtual Machine (VM) disk size]]
  • /app/www/public/data/attic/home_server/home_server_setup/kvm.1664635484.txt.gz
  • Last modified: 2023-04-30 Sun wk17 17:43
  • (external edit)