From: 李国 Date: Tue, 7 Apr 2020 09:11:46 +0000 (+0000) Subject: x86: fix grub-bios-setup fail during sysupgrade X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=32f675ca9f7fb1e541aed704eb49467b07b4dce9;p=openwrt%2Fstaging%2Flinusw.git x86: fix grub-bios-setup fail during sysupgrade 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: 李国 --- 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/