Я использую Yocto на Ubuntu 18.04 с ветвью Warrior в Meta-Tegra, чтобы попытаться интегрировать проект RAUC с открытым исходным кодом для обновлений прошивки Linux.
Я узнал, что U-Boot имеет проблемы с записью в разделы EXT4 (для обновления U-Boot Env), если файловая система EXT4, в которую он записывает, имеет атрибут metadata_csum. Linux не может смонтировать корневую файловую систему, если этот атрибут включен и U-Boot вообще записывает в нее.
Вот несколько сообщений об этом:
Я доказал, что это так, смонтировав полученный образ SDCARD из Yocto в Ubuntu и выполнив следующую команду для отключения metadata_csum:
sudo tune2fs -O ^metadata_csum /dev/sdb1
tune2fs 1.44.1 (24-Mar-2018)
Disabling checksums could take some time.
Proceed anyway (or wait 5 seconds to proceed) ? (y,N) y
После запуска этой команды U-Boot может читать/записывать по желанию из пространства U-Boot, а Linux может монтировать корневую файловую систему.
Я пытаюсь понять, как отключить контрольные суммы с помощью Tune2fs в Ubuntu во время создания образа с помощью Yocto. Где/как я могу добавить это, чтобы в образе были отключены контрольные суммы во время создания образа из Yocto? Спасибо.