From e75de4f27d1148a7ce26a371ecf8e5e2be28d432 Mon Sep 17 00:00:00 2001 From: zuevav Date: Thu, 24 Sep 2026 16:41:55 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D1=80=D0=B0=D0=B7=20Ubuntu:=20?= =?UTF-8?q?=D0=B2=D0=B0=D1=80=D0=B8=D0=B0=D0=BD=D1=82=20=D1=80=D0=B0=D1=81?= =?UTF-8?q?=D0=BA=D0=BB=D0=B0=D0=B4=D0=BA=D0=B8=20=D0=B4=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=BA=D0=B0=D0=B6=D0=B4=D0=BE=D0=B9=20=D0=B8=D0=B7=20=D0=B4?= =?UTF-8?q?=D0=B2=D1=83=D1=85=20(us,ru)=20=E2=80=94=20=D0=B8=D0=BD=D0=B0?= =?UTF-8?q?=D1=87=D0=B5=20=D0=B0=D0=B2=D1=82=D0=BE=D1=83=D1=81=D1=82=D0=B0?= =?UTF-8?q?=D0=BD=D0=BE=D0=B2=D0=BA=D0=B0=20=D0=BF=D0=B0=D0=B4=D0=B0=D0=BB?= =?UTF-8?q?=D0=B0=20=D1=81=20InconsistentMultiLayoutError;=20md5sum.txt=20?= =?UTF-8?q?=D0=BF=D0=B5=D1=80=D0=B5=D1=81=D1=87=D0=B8=D1=82=D1=8B=D0=B2?= =?UTF-8?q?=D0=B0=D0=B5=D1=82=D1=81=D1=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi --- deploy/iso/build-iso-ubuntu.sh | 11 +++++++++++ deploy/iso/ubuntu/user-data.tmpl | 1 + 2 files changed, 12 insertions(+) diff --git a/deploy/iso/build-iso-ubuntu.sh b/deploy/iso/build-iso-ubuntu.sh index 3d44461..6471743 100755 --- a/deploy/iso/build-iso-ubuntu.sh +++ b/deploy/iso/build-iso-ubuntu.sh @@ -62,11 +62,22 @@ xorriso -osirrox on -indev "$SRC" -extract /boot/grub/grub.cfg "$WORK/grub/grub. sed '/^set timeout/d;/^loadfont/d' "$WORK/grub/grub.orig" | awk '/^menuentry "Ubuntu Server with the HWE kernel"/{skip=1} skip&&/^}/{skip=0;next} !skip' } > "$WORK/grub/grub.cfg" +# md5sum.txt: установщик Ubuntu при загрузке сверяет файлы образа по этому списку (casper-md5check); +# несовпадение или отсутствующий файл роняет подсистему Integrity. Убираем удалённые файлы HWE, +# пересчитываем изменённые и добавляем наши. +xorriso -osirrox on -indev "$SRC" -extract /md5sum.txt "$WORK/md5.orig" >/dev/null 2>&1 +{ + grep -vE '\./casper/(hwe-vmlinuz|hwe-initrd|ubuntu-server-minimal\.ubuntu-server\.installer\.generic-hwe\.squashfs)$|\./boot/grub/grub\.cfg$' "$WORK/md5.orig" + echo "$(md5sum < "$WORK/grub/grub.cfg" | cut -d' ' -f1) ./boot/grub/grub.cfg" + (cd "$WORK" && find bj nocloud -type f | sort | while read -r f; do echo "$(md5sum < "$f" | cut -d' ' -f1) ./$f"; done) +} > "$WORK/md5sum.txt" + rm -f "$OUT" xorriso -indev "$SRC" -outdev "$OUT" -boot_image any replay \ -volid "BJ_UBUNTU22" \ -map "$WORK/bj" /bj -map "$WORK/nocloud" /nocloud \ -map "$WORK/grub/grub.cfg" /boot/grub/grub.cfg \ + -map "$WORK/md5sum.txt" /md5sum.txt \ -rm /casper/hwe-vmlinuz /casper/hwe-initrd /casper/ubuntu-server-minimal.ubuntu-server.installer.generic-hwe.squashfs -- \ -end >/dev/null 2>"$WORK/xorriso.log" || { cat "$WORK/xorriso.log"; exit 1; } echo "Образ собран: $OUT ($(du -h "$OUT" | cut -f1)), канал $CHANNEL; ядро: $FILES; Валидата: $n пакета" diff --git a/deploy/iso/ubuntu/user-data.tmpl b/deploy/iso/ubuntu/user-data.tmpl index b115129..183c318 100644 --- a/deploy/iso/ubuntu/user-data.tmpl +++ b/deploy/iso/ubuntu/user-data.tmpl @@ -11,6 +11,7 @@ autoinstall: locale: ru_RU.UTF-8 keyboard: layout: us,ru + variant: "," toggle: grp:alt_shift_toggle timezone: Europe/Moscow identity: