dev/0.KVM.md
2024-08-20 14:15:18 +03:00

80 lines
1.6 KiB
Markdown

# Create
```bash
sudo virt-install \
--name Rocky_Linux_Dev \
--ram 4096 \
--vcpus 4 \
--os-type linux \
--os-variant rhel9-unknown \
--import \
--disk path=/mnt/KVM/linux.qcow2,format=qcow2 \
--network bridge=virbr0,model=virtio \
--graphics vnc,listen=0.0.0.0
```
# Info
```bash
virsh list # show running
virsh list --all # show all
virsh domstate Rock_Linux_9 # show single status
virsh dominfo Rock_Linux_9 # show single settings
```
# Manage
```bash
virsh start Rock_Linux_9
virsh reboot Rock_Linux_9
virsh shutdown Rock_Linux_9 # soft shutdown
virsh destroy Rock_Linux_9 # hard shutdown
virsh suspend Rock_Linux_9
virsh resume Rock_Linux_9
virsh save Rock_Linux_9 # save ram to state file
virsh restore Rock_Linux_9 # load ram from state file
virsh snapshot-create Rock_Linux_9
```
# Snapshots
```bash
virsh snapshot-create Rock_Linux_9
virsh snapshot-list Rock_Linux_9
virsh snapshot-revert Rock_Linux_9
virsh snapshot-delete Rock_Linux_9
virsh snapshot-edit Rock_Linux_9 # Edit snapshots for updating filepath
```
# Permissions
```bash
sudo chown -R libvirt-qemu:kvm /media/KVM
sudo chmod 750 /media/KVM
sudo chmod 640 /media/KVM/linux.qcow2
```
Options like `noexec`, `nosuid`, or `nodev` that might be restricting access.
```bash
mount | grep /media
```
# Convert disk in a new dynamic size disk
```bash
qemu-img convert -f qcow2 -O qcow2 -o preallocation=off old.qcow2 new.qcow2
```
# Free up space
```bash
dd if=/dev/zero of=/zerofile bs=1M
sync
rm -f /zerofile
sync
shutdown -h now
```
```bash
qemu-img convert -O qcow2 /original.qcow2 /compact.qcow2
```