From 32f675ca9f7fb1e541aed704eb49467b07b4dce9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=9B=BD?= Date: Tue, 7 Apr 2020 09:11:46 +0000 Subject: [PATCH] x86: fix grub-bios-setup fail during sysupgrade MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit grub-bios-setup requires two images (boot.img and core.img), but they are missing. This make an error during sysupgrade: Upgrading bootloader on /dev/sda... grub-bios-setup: error: cannot open `/tmp/boot/boot/grub/boot.img': No such file or directory. Signed-off-by: 李国 --- target/linux/x86/base-files/lib/upgrade/platform.sh | 2 +- target/linux/x86/image/Makefile | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/target/linux/x86/base-files/lib/upgrade/platform.sh b/target/linux/x86/base-files/lib/upgrade/platform.sh index ee88dfb082..829834471d 100644 --- a/target/linux/x86/base-files/lib/upgrade/platform.sh +++ b/target/linux/x86/base-files/lib/upgrade/platform.sh @@ -63,7 +63,7 @@ platform_do_bootloader_upgrade() { -d "/tmp/boot/boot/grub" \ -r "hd0,${parttable}1" \ "/dev/$diskdev" \ - && touch /boot/grub/upgraded + && touch /tmp/boot/grub/upgraded umount /tmp/boot fi diff --git a/target/linux/x86/image/Makefile b/target/linux/x86/image/Makefile index 7864dfa1f8..7a474e7a6e 100644 --- a/target/linux/x86/image/Makefile +++ b/target/linux/x86/image/Makefile @@ -49,6 +49,9 @@ BOOTOPTS:=$(call qstrip,$(CONFIG_GRUB_BOOTOPTS)) define Build/combined $(CP) $(KDIR)/$(KERNEL_NAME) $@.boot/boot/vmlinuz -$(CP) $(STAGING_DIR_ROOT)/boot/. $@.boot/boot/ + $(CP) $(STAGING_DIR_IMAGE)/grub2/boot.img $@.boot/boot/grub/ + $(CP) $(STAGING_DIR_IMAGE)/grub2/$(if $(filter $(1),efi),gpt,$(GRUB2_VARIANT))-core.img \ + $@.boot/boot/grub/core.img $(if $(filter $(1),efi), $(INSTALL_DIR) $@.boot/efi/boot $(CP) $(STAGING_DIR_IMAGE)/grub2/boot$(if $(CONFIG_x86_64),x64,ia32).efi $@.boot/efi/boot/