Вопрос или проблема
Я использую unattend.xml
для установки Windows с тех пор, как помню (Windows 2000), и столкнулся с множеством проблем – и, в конечном итоге, с решениями или, по крайней мере, обходными путями – связанных с ним.
Текущая проблема меня довольно озадачила. Она касается Windows 11 и, похоже, началась с версии 24H2 – Windows 11 23H2 был ‘в основном незаметным’ в моих развёртываниях.
Внешний симптом – установка зависает на этапе “Момент…”. Когда я предполагаю, что все уже завершилось, и перезагружаю машину (запрос на перезагрузку через консоль Proxmox работает в этот момент), Windows 11 загружается совершенно нормально.
При просмотре %WINDIR%\Panther\setupact.log
, я вижу следующее:
...
2025-03-03 07:47:34, Info CBS Lock: Lock removed: CSIInventoryCriticalSection, level: 64, total lock:10
2025-03-03 07:47:34, Info CBS Lock: Lock removed: CCbsSessionManager, level: 11, total lock:9
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: CapabilityManagerFinalize
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: PublicObjectMonitorFinalize
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: Enter vCoreInitializeLock
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: WcpUnload
2025-03-03 07:47:34, Info CSI 00000012 Direct SIL provider: Number of files opened: 2.
2025-03-03 07:47:34, Info CSI 00000013 Perf: LRU Cache Clear @0x26ee322de50
2025-03-03 07:47:34, Info CSI 00000014 Perf: LRU Cache FileData Stats
2025-03-03 07:47:34, Info CSI 00000015 Perf: -----------------------------------------------
2025-03-03 07:47:34, Info CSI 00000016 Perf: | Hits| Active | Reserved | Total | Commit Size
2025-03-03 07:47:34, Info CSI 00000017 Perf: -----------------------------------------------
2025-03-03 07:47:34, Info CSI 00000018 Perf: | 0 | 0 | 1 | 1 | 0 KiB
2025-03-03 07:47:34, Info CSI 00000019 Perf: -----------------------------------------------
2025-03-03 07:47:34, Info CSI 0000001a Perf: | 0 | 0 | 1 | 1 | 0 KiB
2025-03-03 07:47:34, Info CSI 0000001b Perf: LRU Cache Manifest Stats
2025-03-03 07:47:34, Info CSI 0000001c Perf: -----------------------------------------------
2025-03-03 07:47:34, Info CSI 0000001d Perf: | Hits| Active | Reserved | Total | Commit Size
2025-03-03 07:47:34, Info CSI 0000001e Perf: -----------------------------------------------
2025-03-03 07:47:34, Info CSI 0000001f Perf: | 0 | 1 | 0 | 1 | 60 KiB
2025-03-03 07:47:34, Info CSI 00000020 Perf: -----------------------------------------------
2025-03-03 07:47:34, Info CSI 00000021 Perf: | 0 | 1 | 0 | 1 | 60 KiB
2025-03-03 07:47:34, Info CSI 00000022 Perf: LRU Cache FileData Finds: 1, Hits: 0, Misses: 1, Commit Size: 0 KiB
2025-03-03 07:47:34, Info CSI 00000023 Perf: LRU Cache Manifest Finds: 1, Hits: 0, Misses: 1, Commit Size: 60 KiB
2025-03-03 07:47:34, Info CSI 00000024 Perf: LRU Cache Entries: 1, Evictions: 0, Commit Size: 60 KiB
2025-03-03 07:47:34, Info CSI 00000025 Direct SIL provider: Number of files opened: 12.
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: DrupUnload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: CfgMgr32Unload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: DpxUnload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: SrUnload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: TurboStackUnload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: TurboContainerUnload
2025-03-03 07:47:34, Info CBS TurboContainer unload Successful
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: CbsEsdUnload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: CbsOneSettingsFinalize
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: CbsTraceInfoUninitialize
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: CbsEventUnregister
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: AppContainerUnload
2025-03-03 07:47:34, Info CBS CbsCoreFinalize: WdsUnload, logging from cbscore will end.
2025-03-03 07:47:34, Info CBS Ending TiWorker finalization.
2025-03-03 07:47:34, Info CBS TI: Startup Processing completes, release startup processing lock.
2025-03-03 07:47:34, Info CBS Running under Setup's OOBE boot, will wait for Winlogon CreateSession notifications before auto-stopping
2025-03-03 08:49:36, Info CBS TI: Rejected an auto-stop attempt, because WinLogon CreateSession notification has not been called (will not report again)
2025-03-03 08:50:53, Info CBS Trusted Installer signaled for shutdown, going to exit.
2025-03-03 08:50:53, Info CBS Trusted Installer is shutting down because: SHUTDOWN_REASON_NOTIFICATION:PRESHUTDOWN
2025-03-03 08:50:53, Info CBS Ending the TrustedInstaller main loop.
2025-03-03 08:50:53, Info CBS Starting TrustedInstaller finalization.
2025-03-03 08:50:53, Info CBS Winlogon: Stopping notify server
2025-03-03 08:50:53, Info CBS Winlogon: Unloading SysNotify DLL
2025-03-03 08:50:53, Info CBS Lock: Lock removed: WinlogonNotifyLock, level: 8, total lock:6
2025-03-03 08:50:53, Info CBS Ending TrustedInstaller finalization.
Таким образом, в 08:47:34 (записано как 07:37:34, потому что смена часового пояса ещё не вступила в силу), “Момент…” зависает в ожидании Running under Setup's OOBE boot, will wait for Winlogon CreateSession notifications before auto-stopping
, что никогда не происходит.
В 08:49:36 (смена часового пояса, по-видимому, произошла), кажется, Setup хочет завершиться, но снова решает не делать этого, потому что ожидает это уведомление.
В 08:50:53 я запросил перезагрузку через консоль Proxmox. Эта перезагрузка фактически обрабатывается правильно, после перезагрузки появляется белый экран ‘поиск обновлений’, и после этого меня приветствует работоспособная установка экраном входа. Для массового развёртывания, очевидно, я хочу избавиться от этого ложного “догадывания, когда достаточно завершено” перезагрузки. Есть идеи?
Единственное, что Google, кажется, знает об этом, это то, что это сообщение действительно появляется в TrustedInstaller.exe
.
Ответ или решение
Введение и теоретический аспект:
Проблемы, связанные с процессом неактивной установки Windows, известны многим ИТ-специалистам, занимающимся массовым развертыванием операционных систем. Данная проблема особенно актуальна при использовании файла ответа «unattend.xml» для без вмешательства пользователя прохождения этапов начальной настройки (OOBE). В вашем случае, описанном выше, установка Windows 11 версии 24H2 зависает на этапе «Just a moment…», что вызывает необходимость в ручной перезагрузке для завершения установки. Это не только усложняет сам процесс развертывания, но и потенциально повышает вероятность ошибок, особенно в масштабных средах.
Пример и анализ:
Ваш пример демонстрирует типичную ситуацию: установка завершается, но зависает и не выходит из цикла ожидания. Логи из директории %WINDIR%\Panther\setupact.log
показывают, что установка заблокирована на этапе выполнения команд OOBE, где система ожидает уведомлений от Winlogon на событие создания сеанса (CreateSession). Эта проблема, вероятно, связана с изменениями в механизмах и триггерах в Windows 11 версии 24H2. Как упоминается в ваших логах, система, кажется, "ждет Winlogon CreateSession уведомлений", но эти уведомления не поступают, что и приводит к зависанию.
Причины могут быть различными: от изменений в конфигурации системы безопасности до особенностей текущего программного окружения, например, при использовании Proxmox. Известно, что использование виртуализации может иногда вносить свою специфику в процессы завершения установки, особенно если параметры виртуальной машины или прошивки (такие как BIOS или UEFI) не полностью совместимы или неправильно настроены.
Применение и практические решения:
Для решения данной проблемы, необходимо рассмотреть несколько шагов:
-
Проверка конфигурации прошивки и параметров виртуализации: Убедитесь, что используемые виртуальные настройки и прошивка совместимы с требованиями Windows 11. Проверьте, применяются ли последние обновления для Proxmox и соответствующих виртуальных машин.
-
Изучение файла unattend.xml: Убедитесь, что в нем отсутствуют потенциальные триггеры, которые могут вызывать задержки. Переедь в использование более минималистского файла, оставив только необходимые для установки параметры.
-
Проведение тестовой установки в другой среде: Если возможно, попытайтесь выполнить установку на реальном оборудовании. Это поможет определить, является ли проблема специфичной для виртуальной среды.
-
Идеи обходного решения: Рассмотрите возможность использования скриптов для проверки состояния системы и инициирования перезагрузки в случае зависания с отправкой соответствующих команд через API Proxmox.
-
Изучение текущих обновлений и патчей от Microsoft: Иногда подобные проблемы могут быть связаны с временными недоработками или отсутствием патчей, выпущенных для конкретных версий Windows, особенно новых релизов.
-
Обращение к сообществу: Связь с другими администраторами систем или обращение в службу поддержки Microsoft может пролить свет на то, являются ли проблемы общими и если да, то какие решения предлагают другие организации.
Заключение:
Системы массового развертывания и автоматической установки требуют постоянной адаптации к изменяющимся требованиям операционных систем и применяемых технологий. Зависания установки на этапе ожидания уведомлений от Winlogon в Windows 11 могут быть вызваны рядом факторов, включая изменения в характеристиках безопасности, особенностях виртуализации и изменениях в работе OOBE. Исследования и тестирования в различных условиях, а также обмен опытом с другими специалистами, помогут в нахождении наиболее эффективного решения для вашей конкретной ситуации.