RRDTools
./configure –enable-perl-site-install
Cpan – Encode.c: loadable library and perl binaries are mismatched (got handshake key 0xed00080, needed 0xeb00080)
Move the folder /usr/local/lib64/perl5 to /usr/local/lib64/BADperl5
Move the folder /usr/local/share/perl5 to /usr/local/share/BADperl5
KVM Snapshots
Convert snapshot to standalone image
qemu-img convert -O qcow2 <snapshot.img> <new-image.img>
Create
virsh snapshot-create-as --domain debian11 --name debian11_snapshot01
List
virsh snapshot-create-as --domain debian11 --name debian11_snapshot01
Restore
virsh snapshot-revert debian11 debian11_snapshot01
Delete
virsh snapshot-delete --domain debian11 --snapshotname debian11_snapshot01
Info
virsh snapshot-info --domain debian11 --snapshotname debian11_snapshot01
KVM – detach disk
sudo virsh detach-disk --domain test --persistent --live --target vdb
KVM – Add / Attach Disk
Create disk:
qemu-img create \
-f qcow2 \
-o lazy_refcounts=on,preallocation=falloc \
$FILEPATH \
[size]G
qemu-img comes with various options for setting the allocation when creating new disk images.
preallocation=metadata – allocates the space required by the metadata but doesn’t allocate any space for the data. This is the quickest to provision but the slowest for guest writes.
preallocation=falloc – allocates space for the metadata and data but marks the blocks as unallocated. This will provision slower than metadata but quicker than full. Guest write performance will be much quicker than metadata and similar to full.
preallocation=full – allocates space for the metadata and data and will therefore consume all the physical space that you allocate (not sparse). All empty allocated space will be set as a zero. This is the slowest to provision and will give similar guest write performance to falloc.
Convert disk:
mv disk.qcow2 disk.qcow2.bak
qemu-img convert -O qcow2 -o lazy_refcounts=on,preallocation=falloc disk.qcow2.bak disk.qcow2
Attach disk:
virsh attach-disk [vm ID] \
--source /path/to/disk.qcow2 \
--target vd[x] \
--persistent \
--subdriver qcow2
Enable Virsh Console Access For KVM Guests
To do so, log in to your guest machine via SSH or Virt-manager or Cockpit and run the following commands to enable and start a serial console:
systemctl enable serial-getty@ttyS0.service
systemctl start serial-getty@ttyS0.service
connect to console from Host
virsh console
EFI boot entry
show
efibootmgr
root@hphost:~# efibootmgr
BootCurrent: 0002
Timeout: 0 seconds
BootOrder: 0000,0004,0002,0001
Boot0000* debian
Boot0001* ubuntu
Boot0002* rEFInd Boot Manager
Boot0004* Windows Boot Manager
change order
sudo efibootmgr -o 0004,0002,0001,0000
change the EFI boot manager timeout
efibootmgr --timeout=4
delete entry
efibootmgr -Bb 0003
KVM – set CPU resources
virsh vcpucount <vm_name>
virsh setvcpus <vm_name> <max-number-of-CPUs> –maximum –config
virsh setvcpus <vm_name> <number-of-CPUs> –config
virsh setvcpus <vm_name> <number-of-CPUs> –live