Linux: no se pudo montar RDWR debido a características opcionales no compatibles (400)

10

Intento ejecutar Android desde la tarjeta SD. Esta tarjeta está preparada. Hay particiones: boot(FAT32), rootfs(ext4), system(ext4), cache(ext4)y usedata(ext4). Particiones de arranque tiene archivos para ejecutar u-boot: MLO, u-boot.biny uImage. Para ejecutarlo utilizo comandos

mmcinit 0
fatload mmc 0 0x80000000 uImage
setenv bootargs 'console=ttyO2,115200n8 mem=456M@0x80000000 mem=512M@0xA0000000 init=/init vram=10M omapfb.vram=0:4M androidboot.console=ttyO2 root=/dev/mmcblk1p2 rw rootwait rootfstype=ext4'
bootm 0x80000000

De lo que veo cómo se inicia Linux. Pero después de unos segundos en el paso de carga rootfsveo un mensaje de error

[    4.015655] EXT4-fs (mmcblk1p2): couldn't mount RDWR because of unsupported optional features (400)
[    4.036499] sd 0:0:0:0: [sda] Attached SCSI removable disk
[    4.079986] List of all partitions:
[    4.083801] b300        31162368 mmcblk0  driver: mmcblk
[    4.089660]   b301             128 mmcblk0p1 f9f21f00-a8d4-5f0e-9746-594869aec34e
[    4.097839]   b302             256 mmcblk0p2 f9f21f01-a8d4-5f0e-9746-594869aec34e
[    4.106018]   b303             128 mmcblk0p3 f9f21f02-a8d4-5f0e-9746-594869aec34e
[    4.114288]   b304           16384 mmcblk0p4 f9f21f03-a8d4-5f0e-9746-594869aec34e
[    4.122436]   b305              16 mmcblk0p5 f9f21f04-a8d4-5f0e-9746-594869aec34e
[    4.130676]   b306            8192 mmcblk0p6 f9f21f05-a8d4-5f0e-9746-594869aec34e
[    4.138916]   b307            8192 mmcblk0p7 f9f21f06-a8d4-5f0e-9746-594869aec34e
[    4.147094]   103:00000     524288 mmcblk0p8 f9f21f07-a8d4-5f0e-9746-594869aec34e
[    4.155334]   103:00001     262144 mmcblk0p9 f9f21f08-a8d4-5f0e-9746-594869aec34e
[    4.163574]   103:00002   30342128 mmcblk0p10 f9f21f09-a8d4-5f0e-9746-594869aec34e
[    4.171874] b310            2048 mmcblk0boot1  (driver?)
[    4.177734] b308            2048 mmcblk0boot0  (driver?)
[    4.183593] b318        15179776 mmcblk1  driver: mmcblk
[    4.189453]   b319          102400 mmcblk1p1 00000000-0000-0000-0000-000000000000
[    4.197692]   b31a           10240 mmcblk1p2 00000000-0000-0000-0000-000000000000
[    4.205932]   b31b               1 mmcblk1p3 00000000-0000-0000-0000-000000000000
[    4.214141]   b31d          262144 mmcblk1p5 00000000-0000-0000-0000-000000000000
[    4.222351]   b31e        13228032 mmcblk1p6 00000000-0000-0000-0000-000000000000
[    4.230682]   b31f         1572864 mmcblk1p7 00000000-0000-0000-0000-000000000000
[    4.238891] No filesystem could mount root, tried:  ext4
[    4.244812] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(179,26)
[    4.254089] CPU1: stopping

No sé por qué sucede. ¿Como puedó resolver esté problema?

Cuentagotas
fuente

Respuestas:

6

El error "EXT4-fs: no se pudo montar RDWR debido a características opcionales no compatibles (400)" se debe a las diferentes versiones entre el formateador de partición (mkfs.ext4) y el montador.

Tienes dos opciones:

a) Tienes que actualizar el programa de montaje utilizando una distribución más nueva dentro de la tarjeta SD.

b) o tiene que hacer una copia de seguridad de los archivos, vuelva a formatear la tarjeta SD con la misma distribución (las mismas versiones ext4) que está realizando el montaje, y después del reformateo, vuelva a copiar los archivos a la tarjeta SD.

En la segunda opción, se debe tener cuidado con las opciones ext4 originales que el formateador ha puesto, tratando de considerar las mismas opciones en el reformateo. Tenga en cuenta también que un reformateo de particiones no necesita una repartición de todo el dispositivo, por lo que el MBR de arranque no se alterará.

tormes
fuente
15

La función ext4 (400) es la nueva función metadata_csum. Si esta función está habilitada y se utilizan herramientas antiguas para montar el sistema de archivos, solo podrán montar de solo lectura.

https://ext4.wiki.kernel.org/index.php/Ext4_Metadata_Checksums

Para crear un sistema de archivos ext4 sin esta característica:

sudo mke2fs /dev/sdb1 -O ^metadata_csum

O apáguelo en un sistema de archivos ya creado:

sudo tune2fs -O ^metadata_csum /dev/sdb1
jjcf89
fuente
1
git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/tree/lib/ext2fs/… #define EXT4_FEATURE_RO_COMPAT_METADATA_CSUM 0x0400
jjcf89
Es una pena que hayan hecho que el nuevo ext4 sea incompatible con el anterior. Como comparación, FAT32 se puede usar en Windows 10, así como en DOS. ¿No podrían las herramientas de montaje antiguas ignorar las nuevas características?
Nuclear
Tú lo pensarías así.
jjcf89