Как сгенерировать мультизагрузочный образ Grub EFI WIC из Yocto
Я пытаюсь реализовать процесс обновления программного обеспечения для общей системы x86_64 с помощью Yocto и SWUpdate. Я хотел бы иметь два корневых раздела, при этом SWUpdate перезаписывает неактивный (стратегия двойного копирования). Я пытаюсь создать образ WIC, чтобы проверить это в виртуальном боксе (образ.wic.vdi)
Моя проблема в создании двойного образа rootfs. Пока у меня есть файл.wks:
bootloader --ptable gpt
part /boot --source rootfs --rootfs-dir=${IMAGE_ROOTFS}/boot --sourceparams="loader=grub-efi" --ondisk sda --label msdos --active --align 1024 --use-uuid
part / --source rootfs --fstype=ext4 --label image1 --align 1024 --exclude-path boot/
part / --source rootfs --fstype=ext4 --label image2 --align 1024 --exclude-path boot/
part swap --ondisk sda --size 1024 --label swap --fstype=swap
Это создает образ wic с правильными разделами, но загрузчик в первом толстом разделе кажется недействительным - он не загружается в виртуальном боксе.
Если я изменю загрузочный раздел на
part /boot --source bootimg-efi --sourceparams="loader=grub-efi" --ondisk sda --label msdos --active --align 1024
Теперь он загрузится, но я не могу контролировать данные в загрузочном разделе через файлы bbappends. Мне нужно отредактировать grub.cfg и добавить файл среды grub. Насколько я могу судить, bootimg-efi создается системой WIC, поэтому я не могу это легко изменить.