Welcome to Hyper2KVM! This section will guide you through installation and your first VM migration.
Install Hyper2KVM and verify your setup.
What youβll learn:
Run your first VM migration with a simple example.
What youβll learn:
Deep dive into Hyper2KVM concepts and workflows.
β Go to Getting Started Guide
What youβll learn:
# Install with all features
pip install "hyper2kvm[full]"
# Verify installation
h2kvmctl --version
hyper2kvm --version
# Core features only
pip install hyper2kvm
# Verify installation
h2kvmctl --version
# Clone repository
git clone https://github.com/ssahani/hyper2kvm.git
cd hyper2kvm
# Install in development mode
pip install -e ".[full]"
See: Complete Installation Guide
Create migration.yaml:
command: local
vmdk: /path/to/your/vm.vmdk
output_dir: /output/directory
to_output: converted-vm.qcow2
out_format: qcow2
# Automatic fixes
fstab_mode: stabilize-all
regen_initramfs: true
update_grub: true
compress: true
# Using h2kvmctl (recommended for CLI)
sudo h2kvmctl --config migration.yaml
# Or using hyper2kvm
sudo hyper2kvm --config migration.yaml
# Import the converted VM
virsh define /output/directory/converted-vm.xml
virsh start converted-vm
See: Quick Start Guide for detailed examples
command: local
vmdk: /vmware/windows-server-2019.vmdk
output_dir: /kvm/vms
to_output: windows-server-2019.qcow2
out_format: qcow2
# Windows-specific fixes
windows_drivers: true
fstab_mode: stabilize-all
update_grub: true
compress: true
Expected time: 10-15 minutes for a 40GB VM
command: local
vmdk: /vmware/centos9-web.vmdk
output_dir: /kvm/vms
to_output: centos9-web.qcow2
out_format: qcow2
# Linux-specific fixes
fstab_mode: stabilize-all
regen_initramfs: true
initramfs_add_drivers:
- virtio
- virtio_blk
- virtio_net
update_grub: true
compress: true
Expected time: 5-10 minutes for a 20GB VM
command: fetch-and-fix
host: 192.168.1.100
user: root
identity: ~/.ssh/id_rsa
remote: /vmfs/volumes/datastore1/vm/vm.vmdk
output_dir: /kvm/vms
to_output: migrated-vm.qcow2
fstab_mode: stabilize-all
regen_initramfs: true
Expected time: 15-30 minutes depending on network speed
| Requirement | Minimum | Recommended |
|---|---|---|
| Python | 3.10+ | 3.11+ |
| RAM | 4 GB | 8 GB+ |
| CPU | 2 cores | 4 cores+ |
| Disk Space | 2x VM size | 3x VM size |
| OS | Linux | RHEL 9, Ubuntu 22.04+ |
# Core tools (automatically handled by pip)
- Python 3.10+
- qemu-img (for conversion)
# Optional tools
- libguestfs (for advanced features)
- ntfs-3g (for Windows support)
- libhivex (for Windows registry)
Most operations require root/sudo access for:
# Run with sudo
sudo h2kvmctl --config migration.yaml
# Problem
ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied
# Solution
pip install --user "hyper2kvm[full]"
# Or use virtual environment
python -m venv venv
source venv/bin/activate
pip install "hyper2kvm[full]"
# Problem
ERROR: qemu-img not found
# Solution (Fedora/RHEL)
sudo dnf install -y qemu-img qemu-system-x86
# Solution (Ubuntu/Debian)
sudo apt-get install -y qemu-utils qemu-system-x86
# Problem
ERROR: hyper2kvm requires Python >=3.10
# Solution
# Install Python 3.11+ from your distribution
# Or use pyenv to manage Python versions
See: Installation Guide for more solutions
Choose your path:
β Features Index
β API Reference
Ready? Start with Installation β
Last Updated: February 2026 Difficulty: Beginner Time to Complete: 45 minutes (all guides)