Linux

Linux - 由於可選功能不受支持,無法掛載 RDWR (400)

  • June 12, 2019

我嘗試從 SD 卡執行 Android。這張卡已經準備好了。有分區:boot(FAT32)rootfs(ext4)system(ext4)和。引導分區具有執行 u-boot :和. 要執行它,我使用命令cache(ext4)``usedata(ext4)``MLO``u-boot.bin``uImage

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

我不知道為什麼會這樣。我怎麼解決這個問題?

錯誤“EXT4-fs : could not mount RDWR because of unsupported optional features (400)”是由於分區格式化程序 (mkfs.ext4) 和安裝程序之間的版本不同。

你有兩個選擇:

a) 您必須使用 SD 卡內的較新發行版升級安裝程序。

b)或者您必須備份文件,使用您正在安裝的相同發行版(相同的 ext4 版本)重新格式化 SD 卡,並在重新格式化後再次將文件複製到 SD 卡。

在第二個選項中,必須注意格式化程序放置的原始 ext4 選項,嘗試在重新格式化時考慮相同的選項。另請注意,重新格式化分區不需要對整個設備進行重新分區,因此不會更改引導 MBR。

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

引用自:https://unix.stackexchange.com/questions/287159