Files
Bridge-and-Join-s/docs/iso-proverka.md

105 lines
7.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Проверка образа установки (ISO) на виртуальной машине
Образ собирается `deploy/iso/build-iso.sh` и выкладывается в канал `iso` на
lic.zetit.ru. Ниже — что проверено статически и что нужно проверить на живой ВМ.
## Что уже проверено без запуска
На образе `bj-debian13-2026.09.16-beta1.iso` (18.09.2026):
- контрольная сумма совпадает с подписанным манифестом канала `iso`;
- образ гибридный: `El Torito` + `MBR isohybrid` + `GPT`, то есть грузится и с
флешки, и как ISO, и в BIOS, и в UEFI;
- загрузочные образы на месте: BIOS — `/isolinux/isolinux.bin`,
UEFI — `/boot/grub/efi.img`;
- в обеих ветках меню наш пункт стоит первым и выбран по умолчанию:
- UEFI — `/boot/grub/grub.cfg`, `menuentry «Установить Bridge&Join …»`;
- BIOS — `/isolinux/txt.cfg`, `default bj`;
- оба пункта передают `auto=true priority=high preseed/file=/cdrom/preseed/bj.cfg`
и русскую локаль;
- `preseed/bj.cfg` на месте, в нём `late_command` ставит `bj-installer`,
`bj-firstboot` и включает `bj-firstboot.service`;
- файлы `bj/bj-installer`, `bj/bj-firstboot`, `bj/bj-firstboot.service` лежат на образе.
Проверить загрузку на самом сервере bj (astramost) нельзя: он сам работает
внутри ВМ без вложенной виртуализации, эмуляция шла бы часами.
## Что проверить на виртуальной машине
Параметры ВМ: 2 ядра, 4 ГБ памяти, диск 40 ГБ, сеть с выходом в интернет
(установщик Debian тянет пакеты с deb.debian.org), загрузка — UEFI, потом
отдельно BIOS.
1. **Меню.** Сразу после загрузки — пункт «Установить Bridge&Join …», выбран по
умолчанию, отсчёт 10 секунд. Русский язык уже выбран.
2. **Вопросы установщика.** Должны спросить только: пароль root, пароль
администратора ОС (`bjadmin`), диск и подтверждение стирания. Всё остальное —
без вопросов.
3. **Установка.** Разметка «весь диск, ext4», пакеты `standard + ssh-server`
плюс postgresql, java, pcscd, curl. По окончании — перезагрузка, диск с
образом извлекается сам.
4. **Первый запуск.** На экране сервера служба `bj-firstboot` должна спросить
ключ продукта: ключ → проверка на lic.zetit.ru → установка bj из канала
лицензии → адрес веб-интерфейса.
5. **После установки.** `systemctl status bj-server bj-keymedia`,
открыть `http://<адрес>:8080/` — страница первого запуска с кодом.
Если на шаге 2 установщик задаёт лишние вопросы — значит, в `preseed/bj.cfg` не
хватает ответа: имя вопроса видно в журнале `/var/log/installer/syslog` на
установленной системе.
---
## Образ 2026.09.22 (пересборка 22.09.2026)
**Почему пересобран.** В образе 16.09 внутри лежал `bj/channel = beta`: установка с него
тянула `2026.09.18-beta1` — сборку до security-фиксов — вместо `stable`. Обходной путь
на уже поставленной машине: до первого запуска `echo stable > /etc/bj/channel` (и
перезапуск `bj-firstboot`), либо потом сменить канал в Настройка → Обновления.
**Как собран.** `deploy/iso/build-iso.sh debian-13.7.0-amd64-netinst.iso bj-installer 2026.09.22 stable`
(netinst с cdimage.debian.org — качать с `curl -L`, там редирект на зеркало; SHA256 сверен).
Вшитый `bj-installer` — 2026.09.22 (код установщика не менялся с `e16d445`).
**Проверено статически, как и для 16.09:** `bj/channel = stable`, `bj/version = 2026.09.22`,
`bj/bj-installer`, `bj/bj-firstboot(.service)`, `preseed/bj.cfg` на месте; El Torito BIOS
(`isolinux.bin`) + UEFI (`efi.img`), MBR isohybrid + GPT; наш пункт по умолчанию в
`isolinux/txt.cfg` и `boot/grub/grub.cfg` с `preseed/file=/cdrom/preseed/bj.cfg`;
манифест канала `iso` подписан ключом `release`, sha256 образа `ea54ea1ff0d31303…`.
**Что установится.** Первый запуск ставит bj из канала **stable** — на 22.09 это релиз
`2026.09.22` (клиентская сборка с garble; security-фиксы H1/H2/M1–M3 и остаток аудита
включены). Лицензия Фонвьель: enterprise до 14.09.2027, модули updates / web-cabinet /
quik-mnp / quik-export / npr, до 3 узлов.
---
## Образ 2026.09.22.2 — ПЕРВЫЙ РЕАЛЬНЫЙ BOOT-ТЕСТ (22.09.2026)
На astramost нет вложенной виртуализации, поэтому загрузку проверили в **QEMU 7.2 (TCG) +
OVMF** — медленно, но честно. Все три режима доходят до меню, наш пункт выбран по умолчанию:
- **BIOS** (isolinux) — меню, «Install Bridge&Join 2026.09.22.2» выделен, подсказка
«Bridge&Join install starts in N seconds, press a key to choose»;
- **UEFI** (OVMF_CODE_4M) — grub-меню, наш пункт первый и выделен; по таймауту 10 с
стартует установщик (на 50 с — загрузка ядра);
- **UEFI + Secure Boot** (OVMF secboot + ключи Microsoft, как у VMware) — serial:
`starting Boot0001 "UEFI QEMU DVD-ROM"` → `Loading bootloader...` (строка из нашего
grub.cfg): shim и grub прошли проверку подписи.
Исправлено по итогам теста (коммит 6e8f7ad): подписи латиницей (vesamenu кириллицу не
рисует — были кракозябры), свой текст отсчёта в конце isolinux.cfg (внутри menu.cfg
подменю Advanced повторно включает stdmenu.cfg и перебивало наш autoboot из txt.cfg),
hotkey `b`, без «(Debian 13)» в подписи (обрезалось краем бокса UEFI), chmod перед
дозаписью в файл, извлечённый xorriso (0444).
Опубликован в канал `iso` как текущий: `bj-debian13-2026.09.22.2.iso`, sha256 `ff1e375d20c2360a…`,
798 294 016 байт; внутри `bj/channel = stable`, `bj-installer 2026.09.22`.
**Если VMware «не подхватывает» образ** — сам образ грузится в BIOS/UEFI/SecureBoot;
проверять настройки ВМ: CD/DVD «Connect at power on», порядок загрузки (CD первым),
целостность скачанного файла (размер/sha256), при EFI — попробовать выключить Secure Boot
для диагностики.
Рецепт boot-теста: `/tmp/…/isoboot/boottest.sh bios|uefi|secboot <iso> [сек]` —
qemu без экрана + screendump через монитор → PNG.