Cómo crear imágenes live persistentes en Debian, Fedora y Ubuntu

Fuentes: Making Debian or Fedora persistent live images
Imagen generada por IA con el prompt: A USB flash drive with a Linux live system. Layered diagram: read-only ISO9660 lower layer, overlayFS upper layer showing writable changes. Minimalist tech illustration, no faces, no text. Blue and gray color scheme.
Imagen generada con IA

Cuando se descarga una imagen ISO live de Linux y se escribe en una memoria USB con dd, cualquier cambio –como paquetes instalados o ajustes de configuración– se pierde tras reiniciar. Esto se debe a que el sistema de archivos subyacente, ISO9660, es de solo lectura: el kernel monta la imagen como read-only y su controlador no permite escritura. Para solucionarlo, las distribuciones emplean OverlayFS, una capa de superposición que almacena las modificaciones en una partición escribible (por ejemplo, ext4) o en la RAM. Sin embargo, no existe un estándar entre distribuciones: cada una implementa la persistencia a su manera, incluso con parámetros de kernel distintos.

En Ubuntu, el parámetro es 'persistent' y la partición debe llamarse 'casper-rw'. En Debian, el parámetro es 'persistence' y la partición ha de etiquetarse 'persistence' y contener un archivo persistence.conf con la línea '/ union'. Para Fedora, el parámetro es 'selinux=0 rd.live.overlay=LABEL=foo:/bar', y la partición necesita una carpeta 'bar' y otra 'ovlwork' (este nombre es fijo). Modificar estas cadenas directamente en el ISO mediante sed es posible si se respeta la misma longitud, pero es un método frágil; en Fedora, además, no hay espacio libre en la línea de arranque del menú de GRUB, lo que obliga a reemplazar entradas completas.

Una alternativa más robusta, propuesta por el autor, consiste en extraer el sistema raíz del ISO (en Fedora, el archivo squashfs.img dentro de LiveOS), crear dos imágenes: una FAT32 con los archivos de arranque (EFI, kernel e initramfs) y una ext4 con la raíz del sistema, y luego combinarlas en una única imagen con tabla de particiones GPT. De esta forma se evita OverlayFS y se obtiene un sistema live con espacio persistente real, sin trucos ni dependencias de parámetros de kernel extraños. El autor proporciona scripts en GitHub para automatizar el proceso tanto en Debian como en Fedora.