Linux-由于不支持的可选功能而无法挂载RDWR(400)


10

我尝试从SD卡运行Android。此卡已准备好。有隔板:boot(FAT32)rootfs(ext4)system(ext4)cache(ext4)usedata(ext4)。引导分区有文件来运行的u-boot: MLOu-boot.binuImage。要运行它,我使用命令

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

比我看到Linux是如何启动的。但是在加载步骤几秒钟后,rootfs我看到一条错误消息

[    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

我不知道为什么会这样。我怎么解决这个问题?

Answers:


6

错误“ EXT4-fs:由于不支持的可选功能(400)而无法安装RDWR”是由于分区格式化程序(mkfs.ext4)与安装程序之间的版本不同而引起的。

您有两种选择:

a)您必须使用SD卡中的较新发行版来升级安装程序。

b)或者您必须备份文件,使用与安装相同的发行版(相同的ext4版本)将SD卡重新格式化,然后在重新格式化后将文件再次复制到SD卡。

在第二个选项中,必须小心格式化程序放置的原始ext4选项,并在重新格式化时尝试考虑相同的选项。还要注意,分区的重新格式化不需要整个设备的重新分区,因此启动MBR不会被更改。


15

ext4功能(400)是新的metadata_csum功能。如果启用了此功能,并且使用了旧工具来挂载文件系统,则它们将只能以只读方式挂载。

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

要创建没有此功能的ext4文件系统:

sudo mke2fs /dev/sdb1 -O ^metadata_csum

或者在已经创建的文件系统上将其关闭:

sudo tune2fs -O ^metadata_csum /dev/sdb1


可惜他们使新的ext4与旧的ext4不兼容。作为比较,FAT32可以在Windows 10和DOS上使用。旧的安装工具难道不能忽略新功能吗?

您会这​​样认为。
jjcf89 '19
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.