X Linux
Menú de documentación

Resumen/X Linux (distro)

Pruebas de X en una máquina virtual

Comandos auxiliares para ejecutar el ISO en vivo de X y arrancar un disco ya instalado con QEMU. Ajusta las rutas (ISO, DISK) a tu máquina.

ISO=/home/x0z/Documents/repos/x-lnux/x/out/x-2026.09.06-x86_64.iso
DISK=/home/x0z/x-vm.qcow2

Ajusta ISO al artefacto producido por xbuild.sh (consulta Construir el ISO); out/ puede contener más de un ISO.

Crear un disco de destino (primera vez)

qemu-img create -f qcow2 "$DISK" 32G

Arrancar el ISO (instalar / en vivo, BIOS)

qemu-system-x86_64 -enable-kvm -m 6144 -smp 4 -cpu host \
  -cdrom "$ISO" \
  -drive file="$DISK",if=virtio,format=qcow2 \
  -netdev user,id=net0 -device virtio-net-pci,netdev=net0 \
  -boot d

El instalador de texto se ejecuta automáticamente en el primer login de TTY1 (autologin de root vía /root/.zlogin). Si caes a un shell en su lugar, ejecuta el atajo:

xinstall

xinstall (una utilidad en vivo en /usr/local/bin) ejecuta /root/x-installer/installer.sh. También puedes llamarlo como bash /root/x-installer/installer.sh. Consulta Instalador de texto.

Arrancar el disco instalado (arranque BIOS: GRUB)

qemu-system-x86_64 -enable-kvm -m 6144 -smp 4 -cpu host \
  -drive file="$DISK",if=virtio,format=qcow2 \
  -netdev user,id=net0 -device virtio-net-pci,netdev=net0 \
  -boot c

Arrancar el disco instalado (UEFI: systemd-boot o GRUB EFI)

cp /usr/share/edk2/x64/OVMF_VARS.4m.fd /tmp/ovmf_vars.fd

qemu-system-x86_64 -enable-kvm -m 6144 -smp 4 -cpu host \
  -drive file=/usr/share/edk2/x64/OVMF_CODE.4m.fd,if=pflash,format=raw,readonly=on \
  -drive file=/tmp/ovmf_vars.fd,if=pflash,format=raw \
  -drive file="$DISK",if=virtio,format=qcow2 \
  -netdev user,id=net0 -device virtio-net-pci,netdev=net0

Instalación desatendida (opcional)

Para ejercitar la ruta de autoinstalación, prepara un disco semilla pequeño etiquetado como cidata con un x-install.json y arranca el ISO con xauto=1 añadido a la línea de comandos del kernel en el menú de arranque.

SEED=/tmp/cidata
rm -rf "$SEED" && mkdir -p "$SEED"
printf '{"disk":"/dev/vda","hostname":"x-vm","username":"x","password":"secret","profile":"core","bootloader":"grub","encryption":"no","hyprland":"no"}\n' \
  > "$SEED/x-install.json"

qemu-img create -f raw /home/x0z/cidata.img 64M
mkfs.vfat -n cidata /home/x0z/cidata.img
mcopy -i /home/x0z/cidata.img "$SEED/x-install.json" ::x-install.json

Después, añade el disco semilla al comando de arranque del ISO y pasa xauto=1 al kernel:

qemu-system-x86_64 -enable-kvm -m 6144 -smp 4 -cpu host \
  -cdrom "$ISO" \
  -drive file=/home/x0z/cidata.img,format=raw,if=virtio \
  -netdev user,id=net0 -device virtio-net-pci,netdev=net0 \
  -boot d

mkfs.vfat necesita dosfstools y mcopy necesita mtools en el host. Consulta Autoinstalación para las condiciones exactas de activación.

Notas

  • Cuando se selecciona GRUB, el instalador escribe tanto la ruta de arranque BIOS (GRUB + partición bios_grub) como la UEFI, de modo que cualquiera de los dos comandos de arranque funciona.
  • systemd-boot es solo UEFI: arranca el disco con el comando OVMF de arriba.
  • -netdev user (slirp) proporciona NAT sin libvirt/redes virtuales.
  • En hosts cuyo kernel carece del qdisc htb (por ejemplo, builds personalizados), la red default de libvirt y los módulos de host de VirtualBox pueden fallar; los comandos QEMU directos de arriba evitan ambos.

Editar esta página en GitHub