Files
easyqemu/QUICKSTART.md
2026-01-07 02:01:17 +01:00

4.3 KiB

EasyQEMU Quick Start Guide

Get started with EasyQEMU in 5 minutes!

Installation

# 1. Clone or download EasyQEMU
git clone https://github.com/yourusername/easyqemu.git
cd easyqemu

# 2. Run the installer
./install.sh

# 3. Verify installation
easyqemu version

Your First VM

Step 1: Create a VM

# Create a simple VM with default settings
easyqemu vm create --name myvm

# Or with custom settings
easyqemu vm create \
    --name ubuntu \
    --memory 4096 \
    --cpus 4 \
    --disk-size 50G

Step 2: List Your VMs

easyqemu vm list

You'll see output like:

VM ID                          NAME                 CREATED         MEMORY     CPUS
--------------------------------------------------------------------------------
ubuntu_1704672000             ubuntu               2026-01-07      4096M      4

Step 3: Start Your VM

# Use the VM ID from the list command
easyqemu vm start ubuntu_1704672000

Installing an OS

Download an ISO

# Example: Download Ubuntu
wget https://releases.ubuntu.com/22.04/ubuntu-22.04.3-desktop-amd64.iso

Create VM with ISO

easyqemu vm create \
    --name ubuntu \
    --memory 4096 \
    --cpus 4 \
    --disk-size 50G \
    --cdrom ubuntu-22.04.3-desktop-amd64.iso \
    --boot cd

Start and Install

# Get the VM ID
easyqemu vm list

# Start the VM
easyqemu vm start ubuntu_<timestamp>

# Install the OS in the VM window
# After installation, modify to boot from disk:
easyqemu vm modify ubuntu_<timestamp> --boot hd --cdrom ""

# Start again
easyqemu vm start ubuntu_<timestamp>

Common Tasks

Create a Snapshot

# Before making changes
easyqemu snapshot create <vm_id> before_update

# If something goes wrong, restore:
easyqemu snapshot apply <vm_id> before_update

Clone a VM

# Save to repository
easyqemu repo save <vm_id> my_template

# Create a clone
easyqemu repo load my_template cloned_vm

Convert Disk Format

# Convert to VMware format
easyqemu volume convert \
    --source ~/.easyqemu/volumes/myvm.qcow2 \
    --target myvm.vmdk \
    --format vmdk

Backup a VM

# Export the disk
easyqemu volume export myvm.qcow2 /backup/myvm.qcow2

# Or save to repository
easyqemu repo save <vm_id> backup_$(date +%Y%m%d)

Tips & Tricks

1. Use Descriptive Names

easyqemu vm create --name dev-ubuntu-server
easyqemu vm create --name test-fedora-desktop

2. Create Base Templates

# Create and configure a base VM
easyqemu vm create --name base-ubuntu --memory 2048

# After setup, save as template
easyqemu repo save base-ubuntu_<id> base-ubuntu-template

# Create multiple instances
easyqemu repo load base-ubuntu-template web-server-1
easyqemu repo load base-ubuntu-template web-server-2
easyqemu repo load base-ubuntu-template db-server

3. Regular Snapshots

# Before system updates
easyqemu snapshot create <vm_id> pre_update_$(date +%Y%m%d)

# Before major changes
easyqemu snapshot create <vm_id> before_config_change

4. List Everything

easyqemu vm list           # All VMs
easyqemu volume list       # All volumes
easyqemu repo list         # All saved VMs
easyqemu snapshot list <vm_id>  # VM snapshots

5. Use -f for Scripts

# Delete without confirmation (useful in scripts)
easyqemu vm delete <vm_id> -f
easyqemu volume delete disk.qcow2 -f

Keyboard Shortcuts in VM

  • Ctrl+Alt+G: Release mouse cursor
  • Ctrl+Alt+F: Toggle fullscreen
  • Ctrl+Alt+Q: Quit VM (with confirmation)

Troubleshooting

VM Won't Start

# Check VM configuration
easyqemu vm info <vm_id>

# Check disk exists
ls -lh ~/.easyqemu/volumes/

Permission Denied

# Add yourself to kvm group
sudo usermod -a -G kvm $USER

# Log out and log back in

No Display

# Try different display option
easyqemu vm modify <vm_id> --display sdl

Next Steps

  1. Read the full documentation: cat README.md
  2. See more examples: ./EXAMPLES.sh
  3. Get help: easyqemu help
  4. Join the community: (add your community links)

Need Help?

  • Run easyqemu help for command reference
  • Check README.md for detailed documentation
  • Create an issue on GitHub
  • Check existing issues for solutions

Happy virtualizing! 🚀