2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00
2026-01-07 02:01:17 +01:00

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.sh para diagnosticar problemas

EasyQEMU - ¡Gestión de QEMU simplificada! 🚀

Descripción
EasyQEMU is an intuitive command-line tool for managing QEMU virtual machines. It provides a Docker-like interface for creating, managing, and organizing VMs with features like snapshots, volume management, and a repository system.
Readme 51 KiB
Languages
Shell 100%