El problema que enfrentas con Fedora 41 está relacionado con cómo el instalador Anaconda maneja los subvolúmenes Btrfs. Cuando intentas instalar Fedora con el directorio raíz (/) en un subvolumen que no está en el nivel superior del sistema de archivos Btrfs, el instalador puede fallar o mostrar errores.
Btrfs (Better File System) es un sistema de archivos moderno basado en el principio de copia en escritura (COW) que se ha convertido en el sistema de archivos predeterminado para las ediciones de escritorio de Fedora desde la versión 33. Ofrece características avanzadas como instantáneas, compresión transparente y detección de errores.
Existen varias razones técnicas que explican por qué Fedora 41 tiene problemas con instalaciones donde / está en un subvolumen anidado:
El instalador de Fedora (Anaconda) está diseñado con suposiciones específicas sobre la estructura de los subvolúmenes. Espera que el directorio raíz esté en el nivel superior de la jerarquía de Btrfs o en un subvolumen específico directamente bajo el nivel superior.
Hay dificultades documentadas para reformatear subvolúmenes Btrfs existentes cuando están ubicados bajo otro subvolumen. Esto se debe a limitaciones en el soporte para Btrfs en el instalador, que aún no maneja estos casos con la misma fluidez que otros tipos de particiones.
Para que el sistema inicie correctamente, las entradas en /etc/fstab deben configurarse de manera específica para subvolúmenes anidados. El instalador puede no generar correctamente estas configuraciones cuando / está en un subvolumen que no es de nivel superior.
Durante el arranque, el sistema necesita acceder primero al subvolumen que contiene /. Si este subvolumen está anidado, se requieren pasos adicionales en el proceso de arranque que el instalador o el gestor de arranque pueden no manejar correctamente.
Para entender mejor este problema, es importante comprender cómo funcionan los subvolúmenes en Btrfs:
El gráfico anterior muestra una comparación entre diferentes enfoques de estructuración de subvolúmenes en Btrfs, destacando por qué la configuración estándar de Fedora es más compatible con el instalador.
Tipo de estructura | Descripción | Compatibilidad con Anaconda | Caso de uso |
---|---|---|---|
Subvolumen / en nivel superior | El directorio raíz está en un subvolumen directamente bajo el nivel superior | Alta | Instalación estándar de Fedora |
Subvolumen / anidado | El directorio raíz está en un subvolumen debajo de otro subvolumen | Baja | Configuraciones avanzadas, estilo openSUSE |
Subvolúmenes múltiples | Diferentes directorios del sistema en subvolúmenes separados | Media | Gestión avanzada de instantáneas |
Sin subvolúmenes | Todo en el nivel superior (no recomendado) | Alta | Configuración simple (pierde ventajas de Btrfs) |
En un sistema de archivos Btrfs, cada subvolumen actúa como un sistema de archivos independiente, pero todos comparten el mismo espacio físico. Esto permite crear estructuras jerárquicas donde un subvolumen puede contener otros subvolúmenes.
El diagrama anterior muestra las diferentes estructuras de subvolúmenes que se pueden implementar en Btrfs. La estructura estándar de Fedora coloca / en un subvolumen de nivel superior, mientras que las estructuras problemáticas tienen / anidado dentro de otro subvolumen.
Si necesitas implementar una estructura de subvolúmenes específica con / en un subvolumen anidado, existen varias alternativas:
La estrategia más segura es realizar una instalación estándar con la estructura de subvolúmenes predeterminada de Fedora y luego modificarla manualmente después de la instalación:
Existen herramientas específicas que pueden ayudar a gestionar configuraciones avanzadas de Btrfs:
Los usuarios avanzados pueden intentar una instalación manual más compleja:
A continuación se muestra un ejemplo de cómo configurar una estructura de subvolúmenes estilo openSUSE después de una instalación estándar de Fedora:
# 1. Crear un snapshot del sistema actual
mount /dev/sda2 /mnt
btrfs subvolume snapshot /mnt/@root /mnt/@root_backup
# 2. Crear la nueva estructura de subvolúmenes
btrfs subvolume create /mnt/@
btrfs subvolume create /mnt/@/root
btrfs subvolume create /mnt/@/.snapshots
# 3. Copiar los datos del sistema al nuevo subvolumen
rsync -avAXP --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /mnt/@/root/
# 4. Modificar /etc/fstab en el nuevo sistema
nano /mnt/@/root/etc/fstab
# Cambiar la línea de montaje de / a:
# UUID=xxxx / btrfs subvol=@/root,compress=zstd:1 0 0
# 5. Actualizar la configuración de GRUB
# Montar los sistemas de archivos necesarios
mount -o subvol=@/root /dev/sda2 /mnt
mount /dev/sda1 /mnt/boot/efi
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
# 6. Entrar al chroot y actualizar GRUB
chroot /mnt
grub2-mkconfig -o /boot/grub2/grub.cfg
exit
# 7. Desmontar y reiniciar
umount -R /mnt
reboot
Este video muestra cómo instalar Fedora con una configuración personalizada de subvolúmenes Btrfs para habilitar instantáneas y reversión del sistema, lo que puede ser útil para comprender mejor cómo trabajar con subvolúmenes en Fedora.
Vista general de la estructura del sistema de archivos Btrfs
Funcionamiento de las instantáneas en Btrfs, una de las ventajas clave del sistema