Управление средой восстановления Windows (WinRE)
- Что такое WinRE?
- Как попасть в WinRE
- Размер WinRE для разных ОС
- Какие бывают проблемы с WinRE
- Как посмотреть наличие раздела WinRE и его размер
- Как расширить раздел среды восстановления Windows (WinRE)
- Удаление раздела WinRE
- Восстановление (Создание) нового раздела WInRE
- Включение раздела Windows RE
- Не включается WInRE "REAGENTC.EXE: The Windows RE image was not found."
В статье про траблшутинг установки обновлений в Windows Server я затронул тему, что одной из проблем которая может вызывать ее, это нехватка места в разделе среды восстановления Windows или как она еще сокращенно называется WinRE.В данной статье я хочу показать вам команды и различные сценарии, расширения, удаления, восстановления включения и выключения данной функции. Уверен, что благодаря данной информации вы в будущем более уверено сможете решать различные ошибки обновления Windows, которые будут всегда, пока есть данная система.
Что такое WinRE?
WinRE (Windows Recovery Environment) — это специальная среда восстановления, основанная на предустановленной среде Windows PE (Windows Preinstallation Environment). Ее главная задача — диагностика и устранение серьезных неполадок, которые мешают нормальной загрузке основной операционной системы Windows.
Проще говоря, это "скорая помощь" для вашего компьютера, всегда готовая запуститься, когда сама Windows уже не может.
Увидеть вы ее можете чаще всего, когда ваша система не загружается, и именно Windows Recovery Environment позволяет вам произвести дополнительные действия, чтобы это исправить.
Восстановление при загрузке (Startup Repair): Автоматически сканирует и исправляет распространенные проблемы, мешающие загрузке Windows (например, поврежденные файлы загрузчика, BCD, отсутствующие или поврежденные системные файлы).
Восстановление системы (System Restore): Позволяет откатить состояние системных файлов, реестра и установленных программ к предыдущей точке восстановления, созданной когда-то работающей системой.
Восстановление образа системы (System Image Recovery): Можно полностью восстановить весь раздел Windows из резервной копии образа системы, созданной ранее с помощью встроенных или сторонних средств.
Командная строка (Command Prompt): Предоставляет доступ к инструментам командной строки для ручного исправления проблем.
- Вернуться к предыдущей версии (Uninstall Updates / Go back to the previous build): Дает возможность удалить последние обновления Windows или откатиться к предыдущей версии ОС (например, после неудачного обновления до новой сборки).
Как попасть в WinRE
Из работающей Windows: Для примера приведу, где это можно найти в Windows 11 23H2, "Пуск — Параметры — Система — Восстановление — Расширенные параметры запуска — Перезагрузить сейчас"
С установочного носителя: Загрузка с флешки или DVD с Windows, выбор языка и нажатие "Восстановление системы".
Через меню загрузки F8: В Windows 7/8/10 иногда можно было вызвать меню дополнительных вариантов загрузки клавишей F8 при включении ПК.
- Через командную строку, написав там shutdown /f /r /o /t 0
Напомню, что именно F8 позволяла вам попасть в дополнительные варианты загрузки, где так же присутствовал WinRE. Я приводил пример, когда мне требовалось вернуть последнюю работающую конфигурацию.
Размер WinRE для разных ОС
Размер раздела WinRE не является строго фиксированным и может немного варьироваться в зависимости от обновлений и редакции ОС. Однако Microsoft дает четкие рекомендации по минимальному размеру раздела, чтобы в него гарантированно поместился образ winre.wim.
Операционная система | Рекомендуемый размер раздела WinRE | Примечания |
---|---|---|
Windows 7 | 100 МБ | Первая система, в которой WinRE появился в современном виде. |
Windows 8 / 8.1 | 300 МБ | Размер увеличился из-за растущего функционала. |
Windows 10 | 500 МБ | Начиная с версии 1709, размер был увеличен. Для ранних сборок (до 1709) хватало и 300 МБ. |
Windows 11 | ~1000 МБ (1 ГБ) | Требует больше места из-за более крупного образа восстановления и дополнительных компонентов. Для некоторых чистых установок может хватить и ~700 МБ, но 1 ГБ — безопасный размер. |
Windows Server 2008 R2 | 100 МБ | Аналогично Windows 7. |
Windows Server 2012 / 2012 R2 | 300 МБ | Аналогично Windows 8/8.1. |
Windows Server 2016 / 2019 | 500 МБ | Аналогично Windows 10. |
Windows Server 2022 | ~1000 МБ (1 ГБ) | Аналогично Windows 11. |
Это размеры, которые Microsoft рекомендует зарезервировать под раздел. Фактический размер файла winre.wim внутри этого раздела обычно меньше (например, в Windows 10 он около 250-350 МБ). Но раздел делается с запасом для будущих обновлений и возможного добавления драйверов или средств диагностики.
Какие бывают проблемы с WinRE
Отсутствие раздела WinRE: Самая частая проблема. Раздел мог быть удален пользователем при работе с дисками (например, в DiskPart), и я такое делал когда не мог расширить том. Из-за действий вредоносного ПО.
Повреждение файлов в образе WinRE: Файлы внутри раздела восстановления могли быть повреждены.
Повреждение конфигурации BCD: Система не знает, где искать среду восстановления, даже если она на месте.
Недостаточно места на диске: Для работы некоторых функций требуется свободное место на системном диске, очень частая ошибка, когда не устанавливается обновление в Windows. На WinRE недостаточно свободного пространства. Например, недавняя у меня ошибка 0x8024200b
Аппаратные проблемы: Если причина сбоя — неисправный жесткий диск или оперативная память, WinRE может не запуститься или работать нестабильно.
Как посмотреть наличие раздела WinRE и его размер
Самый простой метод посмотреть есть у вас раздел WinRE или нет, это воспользоваться оснасткой "Управление дисками". Я буду показывать на примере Windows 11, но в современных системах это все одинаково. Щелкните правым кликом по кнопке пуск и из контекстного меню выберите пункт "Управление дисками".
Либо самый универсальный метод, это запустить окно выполнить, через нажатие клавиш WIN и R одновременно. Далее введя там diskmgmt.msc. Другие полезные универсальные команды ищите по ссылке.
В обоих случаях у вас должна открыться вот такая оснастка. Обратите внимание, что раздел восстановления (WinRE) в большинстве случаев будет справа, это сделано, чтобы его проще было расширять. В моей Windows 11 он составляет 866 МБ, это шло по умолчанию.
или через PowerShell
Get-Disk (Смотрим список физических дисков, находим, тот чт ос системой)
Get-Partition -DiskNumber 1 (Где я беру список разделов на диске 1, обратите внимание, что у дисков нумерация идет от 0)
Если вы хотите копнуть еще дальше, то можно посмотреть содержимое данного раздела. По умолчанию у него нет букв, поэтому вы на него не зайдете. Поэтому в PowerShell вводим:
Set-Partition -DiskNumber 1 -PartitionNumber 4 -NewDriveLetter R
Get-ChildItem R:\Recovery\ -Hidden -System -Recurse
Тут будут три файла:
- boot.sdi - Файл boot.sdi используется как загрузочный RAM-диск (диск в оперативной памяти). Когда загружается среда восстановления (winre.wim), ей нужен диск, на который можно будет распаковать себя и работать. Файл boot.sdi предоставляет как раз эту виртуальную файловую систему в памяти. Проще говоря, winre.wim монтируется и запускается внутри boot.sdi.
- ReAgent.xml - Этот файл содержит настройки и пути, которые указывают Windows, где именно искать среду восстановления. В нем прописаны: Расположение файла winre.wim. Индекс образа внутри WIM-файла (если их несколько). Другие флаги и параметры, связанные с работой инструментов восстановления.
- winre.wim - Когда вы запускаете компьютер в режиме "Автоматическое восстановление", "Восстановление при загрузке" или вручную выбираете "Поиск и устранение неисправностей" в меню загрузки, именно этот образ загружается и предоставляет вам инструменты для ремонта. К данному файлу обращается команда reagentc.
Незабывайте удалить у раздела Windows Recovery Environment букву после изучения.
Remove-PartitionAccessPath -DiskNumber 1 -PartitionNumber 4 -AccessPath "R:"
или так
# Сначала посмотрим доступные диски
Get-Disk
Get-Partition# Удаляем букву диска (замените параметры на свои)
$diskNumber = 1
$partitionNumber = 4
$driveLetter = "R"try {
Remove-PartitionAccessPath -DiskNumber $diskNumber -PartitionNumber $partitionNumber -AccessPath "$driveLetter`:"
Write-Host "Буква диска $driveLetter успешно удалена" -ForegroundColor Green
}
catch {
Write-Host "Ошибка: $($_.Exception.Message)" -ForegroundColor Red
}
Как расширить раздел среды восстановления Windows (WinRE)
Выше я вам описал, что если на разделе восстановления WinRE недостаточно свободного места, в ряде случаев ваша система не сможет обновляться, например случай с ошибкой 0x800F081F. Там проблема оказалось в том, что ранее у меня была операционная система Windows Server 2019 и администратор поверх нее сделал обновление до Windows Server 2022, но проблема заключалась в том, что как вы видели из таблицы размеров WinRE, у 2019 версии это 500 МБ, а для 2022 уже хорошо бы иметь под 1 ГБ.
давайте я покажу, как вы можете увеличить раздел восстановления, это делается быстро.
Очень важно, что тут вы сами на себя берете все риски, если вдруг, что-то сделаете не так. Так что если у вас это виртуальная машина, обязательно сделайте снапшот. Если физический компьютер или сервер, то точку восстановления.
Запустите командную строку в режиме администратора. Далее выведем статус работы WinRE, проверим на каком разделе она располагается, эти данные нам будут очень важны. Вводим команду:
reagentc /info
Windows Recovery Environment (Windows RE) and system reset configuration
Information:Windows RE status: Enabled
Windows RE location: \\?\GLOBALROOT\device\harddisk0\partition4\Recovery\WindowsRE
Boot Configuration Data (BCD) identifier: d4b29609-d4c6-11ee-864e-9a436ff461d1
Recovery image location:
Recovery image index: 0
Custom image location:
Custom image index: 0
В выводе вы должны увидеть состояние работы Windows RE, в моем примере данная функция активна, об этом говорит статус "Enable", располагается на 4 разделе (Partition4). Boot Configuration Data (BCD), это уникальный идентификатор (GUID) записи в загрузочном хранилище данных (BCD), которая отвечает за загрузку WinRE.
Теперь, что бы расширить раздел Windows Recovery Environment нам необходимо его отключить. Для этого выполняем команду.
reagentc /disable
Далее вступает в силу старая, добрая утилита Diskpart, например я вам рассказывал, как с ее помощью сделать загрузочную флешку. Пишем ее в командной строке и нажимаем Enter,
Diskpart
Далее мы смотрим список физических дисков, обычно диск с системой имеет номер "0", он должен у вас совпасть с номером "Recovery image index", который вы получили ранее.
list disk
Теперь выберем диск с Windows, для это выполняем команду ("0" это номер диска, который мы ранее идентифицировали, как диск с Windows):
sel disk 0
Теперь получим список разделов, которые есть на данном диске, для этого есть такая команда:
list part
Обратите внимание, что номер раздела, должен быть таким же, как мы получили на первом шаге, перед отключением Windows Recovery Environment. В моем примере, это Partition 4.
Выбираем раздел Partition 3 (Та на котором у нас WWindows) он имеет статус Primary и самый объемный:
sel part 3
Должен быть статус "Partition 3 is now the selected partition".
Теперь давайте отделим 750 МБ дискового пространства от раздела, которые располагается левея от WinRE. Для этого выполните команду:
shrink desired=750 minimum=750
Тут стоит отметить, что команда может выполнятся минут 5, постарайтесь ей не мешать и не переживайте. Вы должны получить статус "DiskPart successfully shrunk the volume by: 750 MB".
Чтобы вы понимали, что вы только что выполнили, это проще показать на оснастке "Управление дисками". У вас слева от раздела восстановления располагается раздел с системой. Мы взяли и отняли от него 750 МБ, чтобы их отдать разделу WinRE.
Удаление раздела WinRE
Так как свободное пространство у нас находится левее чем раздел с Windows Recovery Environment, то мы не можем его задействовать. Чтобы это исправить нам нужно удалить раздел восстановления, не переживайте мы его вернем чуть позже. Выбираем раздел Partition 4, на нем как раз Recovery, это мы выяснили выше.
sel part 4
Далее пишем команду удаления
delete partition override
Если вывести теперь список разделов, то вашего Partition 4 уже не будет.
Теперь картина с разделами выглядит так, что у вас в правой области есть 1,2 ГБ для создания раздела восстановления Windows RE.
Восстановление (Создание) нового раздела WInRE
Теперь перед созданием раздела WinRE, нам нужно определить тим загрузчика GPT или MBR. Для этого в оснастке "Управление дисками" откройте свойства вашего системного диска. Далее вкладка "Volumes (Тома)". Тут найдите поле "Partition Style (Стиль раздела)", в моем примере это GPT, как и на большинстве современных систем.
Вас может заинтересовать, как преобразовать в GPT-диск
в командной строке так же можно посмотреть разметку раздела. Для этого в discpart просматриваем диски и выбираем то, что с операционной системой.
list disk
sel disk 0
Обратите внимание, что звездочка в * Disk 0, означает, что это GPT.
Раз у меня структура GPT, то я выполняю вот такую команду:
create partition primary id=de94bba4-06d1-4d40-a16a-bfd50179d6ac
gpt attributes=0x8000000000000001
Если стиль разметки MBR, то команда будет такой create partition primary id=27
format quick fs=ntfs label="WinRE"
Проверим, что у нас появился том WinRE, для этого запустите:
list vol
У тома будет файловая система NTFS, ваша метка WinRE и размер 1,2 ГБ. (* Volume 6 WinRE NTFS Partition 1274 MB Healthy Hidden)
Если посмотреть разделы, то он так же должен остаться Partition 4 с типом Recovery.
exit
В оснастке управления дисками должно быть вот так. Считаю, что успешно расширил раздел c Windows RE
Включение раздела Windows RE
Теперь нам нужно заново включить раздел восстановления WinRE, для этого в командной строке введите:
reagentc /enable
Повторно запросите статус, чтобы удостовериться, что все работает штатно.
reagentc /info
Далее я советую перезагрузить систему.
Не включается WInRE "REAGENTC.EXE: The Windows RE image was not found."
На компьютерах или серверах, при попытке включить WinRE вы можете получить ошибку:
REAGENTC.EXE: The Windows RE image was not found.
REAGENT.EXE: образ среды восстановления Windows не найден.
Она может быть связана с двумя причинами:
- Первая у вас нет совсем раздела восстановления
- Неправильный путь в загрузчике BCD или поврежденный файл. Выполните команду:
bcdedit /enum all
Около середины, там будет раздел Windows Boot Loader, тут нужно посмотреть (запомните значение GUID, там они должны быть одинаковые):
- Identifier - {45f1438a-8b90-11ec-9072-aaba0d97941c}
- Device - ramdisk=[unknown]\Recovery\WindowsRE\Winre.wim,{45f1438a-8b90-11ec-9072-aaba0d97941c}
- osdevice
- recoverysequence - {45f1438a-8b90-11ec-9072-aaba0d97941c}
Как видите в строке Device указывается путь до win образа среды восстановления. В моем примере неизвестный диск, что говорит, о том, что его нет. Поэтому тут его нужно создать по инструкции выше. Если же у вас диск есть, но WinRE не работает, я советую как описывал выше изучить ваши разделы на дисках и проверить есть там среди них WinRE и под каким GUID. Если данный GUID отличается от того. что указан в BCD загрузчике, то это нужно изменить.
Так назначив WinRE букву я попытался посмотрет ьего содержимое, но там ничего не было. Хотя я дела все через Diskpart. В таких случаях вас может выручить загрузочный диск с таким же дистрибутивом как ОС на которой нужно вернуть раздел восстановления.
На загрузочном диске вам необходимо найти файл install.wim либо install.esd. Найти ег оможно по пути:
D:\sources\install.wim
Далее вам его нужно открыть с помощью 7-ZIP.
Если у вас на данном диске несколько редакций, то нужно будет выбрать соответствующую вашей версии. В файле с форматом xml можно найти подсказку, открыв его. В моем примере мне нужно восстановить WinRE для Windows Server 2021H1 Standard, поэтому я беру второй индекс.
Перейдите в папку:
E:\sources\install.wim\2\Windows\System32\Recovery (2 это номер индекса, если редакций несколько)
Тут вам нужно будет сохранить два файла ReAgent.xml и Winre.wim.
Нам еще остается найти файл boot.sdi, по пути:
E:\sources\install.wim\2\Windows\Windows\Boot\DVD\EFI
Так же выгрузите его из образа Windows.
Теперь, когда у вас на руках есть все три нужны файла, вам необходимо перейти на тот раздел восстановления, где нехватало данных, у меня это диск с буквой R. Создайте там структуру папок:
R:\Recovery\WindowsRE
Далее скопируйте в туда 3 файла.
Теперь в командной строке в режиме администратора введите:
reagentc /setreimage /path \\?\GLOBALROOT\device\harddisk0\partition4\Recovery\WindowsRE
Если команда выполнилась успешно, то вы молодец и почти все завершили. Теперь остается только включить функционал восстановления системы и проверить его состояние.
Провери еще раз, то в загрузчике все отображается в пункте recoverysequence.
Дополнительные ссылки
- https://support.microsoft.com/en-us/topic/kb5028997-instructions-to-manually-resize-your-partition-to-install-the-winre-update-400faa27-9343-461c-ada9-24c8229763bf
- https://www.outsidethebox.ms/22242/