7.6 KiB
7.6 KiB
EasyQEMU - Resumen en Español
¿Qué es EasyQEMU?
EasyQEMU es una herramienta completa de línea de comandos para gestionar máquinas virtuales QEMU de forma intuitiva. Proporciona una interfaz similar a Docker para crear, gestionar y organizar VMs con características como snapshots, gestión de volúmenes y un sistema de repositorio.
Características Principales
✅ Gestión de Máquinas Virtuales
- Crear, iniciar, detener, modificar y eliminar VMs
- Soporte para KVM (aceleración por hardware)
- Múltiples modos de pantalla (GTK, SDL, VNC, sin pantalla)
- Configuración de red (user, bridge, tap)
- Arranque desde CD/DVD o disco duro
✅ Gestión de Volúmenes
- Crear volúmenes en múltiples formatos:
- qcow2 (formato nativo de QEMU)
- raw (imagen de disco raw)
- vmdk (VMware)
- vdi (VirtualBox)
- vhdx (Hyper-V)
- Convertir entre formatos
- Importar/exportar volúmenes
- Información detallada de volúmenes
✅ Gestión de Snapshots
- Crear instantáneas del disco
- Listar todos los snapshots de una VM
- Aplicar/restaurar snapshots
- Eliminar snapshots
✅ Sistema de Repositorio
- Guardar VMs en el repositorio (como imágenes Docker)
- Cargar VMs desde el repositorio (crear clones)
- Listar entradas del repositorio
- Sistema similar a Docker para VMs
Instalación Rápida
# 1. Hacer el script ejecutable
chmod +x easyqemu
# 2. Ejecutar el instalador
./install.sh
# 3. Verificar instalación
easyqemu version
Uso Básico
Crear una VM
# VM básica con valores por defecto
easyqemu vm create --name mi-vm
# VM personalizada
easyqemu vm create \
--name ubuntu-server \
--memory 4096 \
--cpus 4 \
--disk-size 50G \
--cdrom /ruta/al/ubuntu.iso
Listar VMs
easyqemu vm list
Iniciar una VM
easyqemu vm start ubuntu-server_<timestamp>
Crear un Snapshot
# Antes de hacer cambios importantes
easyqemu snapshot create <vm_id> antes_actualizar
# Si algo sale mal, restaurar:
easyqemu snapshot apply <vm_id> antes_actualizar
Clonar una VM
# Guardar en repositorio
easyqemu repo save <vm_id> mi-plantilla
# Crear un clon
easyqemu repo load mi-plantilla vm-clonada
Convertir Formato de Disco
# Convertir a formato VMware
easyqemu volume convert \
--source ~/.easyqemu/volumes/disk.qcow2 \
--target disk.vmdk \
--format vmdk
# Convertir a VirtualBox
easyqemu volume convert \
--source disk.qcow2 \
--target disk.vdi \
--format vdi
Estructura de Archivos Creados
easyqemu/
├── easyqemu - Script principal (26KB)
├── install.sh - Script de instalación
├── test.sh - Suite de pruebas automatizadas
├── EXAMPLES.sh - Ejemplos de uso
│
├── README.md - Documentación completa en inglés
├── README.es.md - Este archivo (resumen en español)
├── QUICKSTART.md - Guía de inicio rápido
├── CONTRIBUTING.md - Guía de contribución
├── CHANGELOG.md - Historial de versiones
├── PROJECT.md - Resumen del proyecto
├── LICENSE - Licencia MIT
│
├── .easyqemu.conf - Plantilla de configuración
└── .gitignore - Reglas de Git
Todos los Comandos Disponibles
| Categoría | Comando | Descripción |
|---|---|---|
| VM | vm create |
Crear una nueva VM |
vm list |
Listar todas las VMs | |
vm start |
Iniciar una VM | |
vm info |
Mostrar información de la VM | |
vm modify |
Modificar configuración | |
vm delete |
Eliminar una VM | |
| Volumen | volume create |
Crear un volumen |
volume list |
Listar volúmenes | |
volume info |
Info del volumen | |
volume convert |
Convertir formato | |
volume import |
Importar volumen | |
volume export |
Exportar volumen | |
volume delete |
Eliminar volumen | |
| Snapshot | snapshot create |
Crear snapshot |
snapshot list |
Listar snapshots | |
snapshot apply |
Restaurar snapshot | |
snapshot delete |
Eliminar snapshot | |
| Repositorio | repo save |
Guardar VM |
repo load |
Cargar VM | |
repo list |
Listar VMs guardadas | |
repo delete |
Eliminar VM guardada |
Ejemplos Prácticos
Ejemplo 1: Instalar Ubuntu
# 1. Descargar ISO
wget https://releases.ubuntu.com/22.04/ubuntu-22.04.3-desktop-amd64.iso
# 2. Crear VM con ISO
easyqemu vm create \
--name ubuntu-desktop \
--memory 4096 \
--cpus 4 \
--disk-size 50G \
--cdrom ubuntu-22.04.3-desktop-amd64.iso
# 3. Iniciar e instalar
easyqemu vm start ubuntu-desktop_<timestamp>
# 4. Después de instalar, arrancar desde disco
easyqemu vm modify ubuntu-desktop_<timestamp> --boot hd --cdrom ""
Ejemplo 2: Crear Plantilla Base
# 1. Crear y configurar VM base
easyqemu vm create --name base-server --memory 2048
# 2. Guardar como plantilla
easyqemu repo save base-server_<id> plantilla-servidor
# 3. Crear múltiples instancias
easyqemu repo load plantilla-servidor web-server-1
easyqemu repo load plantilla-servidor web-server-2
easyqemu repo load plantilla-servidor db-server
Ejemplo 3: Migrar a VMware
# Convertir disco a formato VMware
easyqemu volume convert \
--source ~/.easyqemu/volumes/mi-vm.qcow2 \
--target mi-vm.vmdk \
--format vmdk
# Ahora puedes importar mi-vm.vmdk en VMware
Pruebas
El proyecto incluye una suite de pruebas automatizadas:
./test.sh
Resultado: ✅ 18/18 pruebas pasadas
Estructura de Datos
EasyQEMU almacena todos los datos en ~/.easyqemu/:
~/.easyqemu/
├── vms/ # Datos de ejecución de VMs
├── volumes/ # Imágenes de disco
├── configs/ # Configuraciones de VMs (JSON)
├── repository/ # VMs guardadas
├── locks/ # Archivos de bloqueo
└── easyqemu.log # Archivo de log
Requisitos
- QEMU/KVM: qemu-system-x86_64, qemu-img
- Bash: 4.0 o superior
- OS: Linux (probado en sistemas basados en Debian)
Instalar QEMU en Debian/Ubuntu
sudo apt-get install qemu-system-x86 qemu-utils
Instalar QEMU en Fedora/RHEL
sudo dnf install qemu-kvm qemu-img
Instalar QEMU en Arch Linux
sudo pacman -S qemu
Ayuda y Documentación
# Ver ayuda
easyqemu help
# Ver ejemplos
./EXAMPLES.sh
# Leer documentación completa (inglés)
cat README.md
# Guía de inicio rápido
cat QUICKSTART.md
Características Técnicas
- Lenguaje: Bash 4.0+
- Tamaño: ~26KB (script principal)
- Configuración: JSON
- Aceleración: KVM automático
- Formatos: qcow2, raw, vmdk, vdi, vhdx
- Display: GTK, SDL, VNC, sin pantalla
- Red: user, bridge, tap
Licencia
MIT License - Libre para usar, modificar y distribuir
Estado del Proyecto
✅ Versión: 1.0.0
✅ Estado: Listo para producción
✅ Pruebas: 18/18 pasadas
✅ Documentación: Completa
✅ Fecha: 7 de enero de 2026
Próximas Características
- Soporte para VMs Windows (UEFI boot)
- Interfaz web
- Gestión remota de VMs
- Integración con cloud-init
- Wizard de configuración de red
- Monitoreo de recursos
- Sistema de backups automáticos
- Biblioteca de plantillas de VMs
Contribuir
Lee CONTRIBUTING.md para información sobre cómo contribuir al proyecto.
Soporte
- Crear un issue en GitHub
- Revisar la documentación
- Ejecutar
./test.shpara diagnosticar problemas
EasyQEMU - ¡Gestión de QEMU simplificada! 🚀