Я создаю довольно простой образ Yocto на основе x86.
Я хочу, чтобы файловая система / была доступна только для чтения, поэтому я установил
IMAGE_FEATURES_append = " read-only-rootfs "
в кастомной копии оригинала core-image-minimal.bb
. Однако я хочу, чтобы /home
был доступен для записи и находился в отдельном разделе.
Итак, я добавляю строку
part /home --ondisk sda --fstype=ext4 --label home --align 1024 --size 600
в genericx86.wks. Это создает фактический /home
раздел в окончательном образе wic, но он, естественно, не содержит никаких данных, так как для него нет соответствующего rootfs
. Это приводит к следующему вполне ожидаемому сообщению после загрузки: No directory, logging in with HOME=/
.
В Интернете на удивление мало информации об этом. Есть это объяснение:
Гораздо проще создать или изменить рецепты сборки, чтобы подготовить один каталог rootfs для каждого раздела.
Мне просто жаль, что в документации или примере не было ссылки на то, как этого добиться.
Я вижу, что разделы заполняются скриптами (плагинами) python, такими как rootfs.py
, и что параметры изображения, такие как IMAGE_ROOTFS_SIZE
, указаны в упомянутых файлах рецептов изображений, таких как genericx86.wks
, но мне этого недостаточно, чтобы соединить эти части вместе.
Я прочитал create-partitioned-images-using-wic и связанный openembedded kickstart, там нет никаких подсказок.
Цени чью-то добрую помощь.