From 9c8fc5046adc6766ebc4e2f2542c2b60c4b7d1af Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B0=E6=9C=94?= <565183519@qq.com> Date: Sat, 15 Aug 2026 18:01:01 +0800 Subject: [PATCH] fix: recognize real GRUB rescue menuentry --- .../guanghu-os/scripts/linux-subcontrol-docker-backend.sh | 2 +- .../scripts/test-linux-subcontrol-docker-backend.sh | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/product-source/hololake-platform/guanghu-os/scripts/linux-subcontrol-docker-backend.sh b/product-source/hololake-platform/guanghu-os/scripts/linux-subcontrol-docker-backend.sh index 2becb47..08a2080 100755 --- a/product-source/hololake-platform/guanghu-os/scripts/linux-subcontrol-docker-backend.sh +++ b/product-source/hololake-platform/guanghu-os/scripts/linux-subcontrol-docker-backend.sh @@ -70,7 +70,7 @@ verify_machine() { } verify_rescue() { - grep -Fq -- "--id '${rescue_slot_id}'" "${grub_cfg}" || + grep -F -- 'menuentry ' "${grub_cfg}" | grep -Fq -- "'${rescue_slot_id}'" || die "independent Linux rescue slot is unavailable" } diff --git a/product-source/hololake-platform/guanghu-os/scripts/test-linux-subcontrol-docker-backend.sh b/product-source/hololake-platform/guanghu-os/scripts/test-linux-subcontrol-docker-backend.sh index 20bd5ae..a85b0e9 100755 --- a/product-source/hololake-platform/guanghu-os/scripts/test-linux-subcontrol-docker-backend.sh +++ b/product-source/hololake-platform/guanghu-os/scripts/test-linux-subcontrol-docker-backend.sh @@ -104,4 +104,10 @@ if "${adapter}" wake jd-linux-on-demand; then exit 1 fi +printf '%s\n' 'set default="gnulinux-simple-9e4550a0-452b-4f28-b5a5-d5364aa450f6"' >"${fixture}/grub.cfg" +if "${adapter}" preflight jd-linux-on-demand; then + echo "a default reference without a rescue menuentry was accepted" >&2 + exit 1 +fi + echo "GUANGHU_LINUX_SUBCONTROL_DOCKER_BACKEND_OK"