aboutsummaryrefslogtreecommitdiffstats
path: root/target
diff options
context:
space:
mode:
author李国 <uxgood.org@gmail.com>2020-04-07 09:11:46 +0000
committerPetr Štetiar <ynezz@true.cz>2020-04-09 12:51:10 +0200
commit32f675ca9f7fb1e541aed704eb49467b07b4dce9 (patch)
tree30278274cbae142bc238cd9734687ab4ca5d1e8c /target
parentfabcfa9222c4f683163514af667310178f8a45a0 (diff)
downloadupstream-32f675ca9f7fb1e541aed704eb49467b07b4dce9.tar.gz
upstream-32f675ca9f7fb1e541aed704eb49467b07b4dce9.tar.bz2
upstream-32f675ca9f7fb1e541aed704eb49467b07b4dce9.zip
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: 李国 <uxgood.org@gmail.com>
Diffstat (limited to 'target')
-rw-r--r--target/linux/x86/base-files/lib/upgrade/platform.sh2
-rw-r--r--target/linux/x86/image/Makefile3
2 files changed, 4 insertions, 1 deletions
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/