Установка windows с помощью dism

Нестандартный процесс установки Windows может понадобиться в разных ситуациях. Когда стандартный процесс завершается ошибкой. Когда в BIOS нет поддержки запуска с флеш-носителей в режиме UEFI, но поддерживается загрузка с внутренних GPT-дисков. Когда файл WIM/ESD в составе дистрибутива весит более 4 Гб и не записывается на флешку UEFI. Когда нужно развернуть на компьютере свой кастомизированный установочный образ без упаковки его в файл ISO.

Когда нужно переустановить Windows, а флешки нет. Или просто неохота возиться с её созданием. В таких случаях можно прибегнуть к процедуре развёртывания образа Windows с помощью программы Dism++. Что за программа такая, и как с её помощью устанавливать Windows?

1. Dism++: что за программа

Dism++ — это бесплатная портативная программа, созданная командой китайских разработчиков Chuyu Team. Являет собой графический интерфейс для штатной консольной утилиты Windows DISM.exe, служащей для подготовки и обслуживания установочных образов этой операционной системы. Штатно работа с DISM.exe осуществляется посредством командной строки или PowerShell. Графический интерфейс, реализованный в Dism++, даёт возможность работать с образами Windows без привязки к консольным командам. С помощью интерфейса Dism++ сможем редактировать дистрибутив Windows и вносить в него кое-какие корректировки, делать системный бэкап и восстанавливаться из него, конвертировать форматы системных образов WIM и ESD, добавлять сведения о Windows в загрузчик, редактировать файл hosts и выполнять прочие операции.

Dism++

При участии программы сможем устанавливать Windows путём развёртывания непосредственно из её образов — файлов WIM или ESD. Будь они в составе чистого официального дистрибутива от Microsoft, или же это наши созданные сборки системы.

Скачать Dism++ можно на сайте Chuyu Team:

https://www.chuyu.me/en/index.html

При запуске 64-битной редакции утилиты важно не спутать её с редакцией ARM64.

Проводник

Как с помощью Dism++ устанавливать Windows в различных ситуациях?

2. Переустановка Windows

Как переустановить Windows без съёмного загрузочного носителя? Dism++ может развёртывать образ новой системы из среды работающей старой. Монтируем установочный ISO-образ.

Монтируем ISO-образ

Запускаем Dism++. Жмём меню «Файл», в нём – «Применить образ».

Применить образ

В появившейся форме применения образа первым делом указываем путь к установочному образу WIM/ESD – файлу install.wim или install.esd. Он будет находиться на диске смонтированного ISO, в папке «sourse». Или же это может быть любой путь нахождения файла WIM/ESD, скачанного с Интернета или созданного нами в процессе работы над своей сборкой системы. В нижней графе формы применения образа указываем раздел Windows, т.е. диск С. Затем в графе «Система» выбираем редакцию. И жмём «Ок».

Система

Запустится процесс развёртывания системного образа, по сути, копирования файлов новой Windows. Процесс будет значиться как восстановление системы, и в левой верхней части окна Dism++ сможем наблюдать прогресс действа. По итогу соглашаемся на предложенную программой перезагрузку.

Напоминание

Далее пойдёт уже классика жанра – запуск служб, установка драйверов, создание пользовательского профиля в новой системе.

Регион

3. Установка Windows второй системой на другом разделе

Процесс установки Windows на другой раздел немногим отличается от переустановки системы. В среде первой системы подготавливаем раздел для второй Windows.

Управление дисками

Форматируем его.

Форматируем

Монтируем установочный ISO-образ. Запускаем Dism++. Как и при переустановке, в меню «Файл» выбираем «Применить образ». Кстати, форму развёртывания образа Windows можно запускать также через меню «Восстановление», пункт «Восстановление». Эта форма идентична и для установки системы с файлов WIM/ESD дистрибутива, и для восстановления из бэкапа в формате этих же файлов.

Восстановление

Указываем путь к файлу install.wim или install.esd. Указываем раздел второй системы. Выбираем редакцию. И вот тут важный момент – ставим галочку опции «Доб.загр.». Она нужна для добавления второй системы в меню загрузки. Жмём «Ок».

Доб.загр.

Dism++ выдаст уведомление о добавлении сведений о загрузке новой системы в загрузчик и попросит нажать «Ок» для старта операции.

Восст.загрузки-UEFI

О завершении развёртывания образа программа уведомит.

Уведомление

Далее можем перезагружаться. При запуске нас уже будет встречать меню загрузчика. Выбираем новую установленную систему.

Выбираем установленную систему

И продолжаем установку уже внутри неё самой.

Примечание: Dism++ умеет добавлять запись о загрузке новой системы в существующий загрузчик Windows. Но программа не умеет создавать для системы на другом жёстком диске свой автономный загрузчик. Если вопрос стоит в установке Windows на другом диске со своим отдельным загрузчиком, потребуется вручную создать системный загрузочный раздел — «Зарезервировано системой» на MBR-диске или EFI-раздел на GPT-диске. И, соответственно, также вручную создать для второй системы её загрузчик. Но это уже отдельная история.

4. Установка Windows с LiveDisk by Sergei Strelec

Как установить Windows с помощью Dism++ на компьютере с чистым жёстким диском? Или когда система не загружается. В этом случае, естественно, без загрузочного носителя не обойтись, но его можно создать единожды на перспективу смены дистрибутива в будущем и для возможности установки системы напрямую из файлов WIM/ESD. Более того, такой носитель ещё и будет аварийным инструментом на случай необходимости восстановления Windows. На флешку или оптический диск можем записать Live-диск с Dism++ на борту. И, соответственно, развёртывать образы WIM/ESD – хоть установочные, хоть бэкапные – с этого Live-диска.

Dism++ присутствует в составе Live-диска на базе WinPE от Сергея Стрельца. На этом Live-диске найдём и массу программ для разметки пространства на чистых жёстких дисках, в частности, таковые, что могут формировать структуру системных разделов Windows (включая загрузочный) для стилей разметки MBR и GPTBootice, DiskGenius, Diskpart. Скачать образ Live-диска можно на сайте Sergeistrelec.Ru.

Запускаем Dism++ на Live-диске.

Dism++ на Live-диске

И проделываем те же операции, что описаны выше для переустановки Windows или её установки второй системой – жмём меню «Файл», далее – «Применить образ». Заполняем форму применения образа. Если Windows ставится на чистый диск с созданной программами Bootice, DiskGenius или Diskpart структурой системных разделов, обязательно ставим галочку добавления записи о загрузке.

Dism++ - Образ

Если файл WIM/ESD нужно извлечь из ISO-образа, последний в среде Live-диска можно смонтировать с помощью контекстного меню. Выбираем пункт «Подключить образ к ImDisk».

Подключить образ к ImDisk

И жмём «Ок».

Загрузка…

Привет, друзья. В продолжение цикла статей, посвящённых раскрытию потенциала программы Dism++, предлагаю тему, которая пригодится не отдельным профессионалам, не экспериментаторам, жаждущим нового опыта, а всем пользователям компьютеров на базе Windows – и новичкам, и опытным, и профи. Ниже мы рассмотрим, как с помощью программы Dism++ переустановить Windows. На минуточку, не установить на другой раздел диска или жёсткий диск из среды уже имеющейся Windows, а именно переустановить на диске С, причём с его форматированием. При этом нам не потребуется никаких загрузочных носителей. И, прежде чем начать, традиционно напоминаю, что если вы хотите подробнее узнать о программе Dism++, можете почитать её комплексный обзор. О других возможностях программы и их применении в деле можете узнать из публикаций сайта, отфильтрованных по тегу Dism. Ну а теперь к теме статьи.

Как переустановить Windows с помощью программы Dism++

Друзья, переустановить Windows или установить её на другой раздел диска без загрузочного носителя можно массой различных способов. Эти способы описаны в статье «Как переустановить Windows без диска и флешки». Но лишь один из способов из этой статьи позволяет нам быстро и без заморочек переустановить Windows с форматированием диска С – способ с помощью программы WinToHDD. Все остальные либо оставляют за собой хвост в виде папки «Windows.old», которую потом нужно удалять специальным образом, либо, как программа WinNTSetup, требуют проведения дополнительных операций с разметкой жёсткого диска. Но у программы WinToHDD есть ограничение: её бесплатная версия не позволяет устанавливать редакцию Windows Корпоративная. Тогда как Dism++, являясь полностью бесплатным продуктом, не имеет в плане редакций никаких ограничений. Ну и, в отличие от WinToHDD, является не узкопрофильным решением для маленького спектра задач, а комплексным многофункциональным программным продуктом. Знакомство с возможностями Dism++ позволит применить её в ряде других ситуаций.

Как же переустановить Windows с помощью Dism++? Первым делом необходимо поместить программу на несистемный раздел диска – D, E, F и т.д., ведь в процессе переустановки Windows раздел С будет форматироваться. Напомню, Dism++ — это портативная программа, нужно просто перенести на другой раздел её папку. Далее подготавливаем дистрибутив Windows, если его нет, скачиваем. Dism++ работает как с ISO-образами установки операционной системы, так и непосредственно с её установочными образами в формате WIM или ESD. Так что, друзья, если вы планируете создать свою сборку Windows, вам не нужно упаковывать образ WIM или ESD в файл ISO, вы можете просто развёртывать свою сборку из файла WIM/ESD с помощью Dism++ или LiveDisk by Sergei Strelec.

Итак, папку с Dism++ перенесли на несистемный раздел диска, подготовили дистрибутив Windows. В нашем случае мы текущую Windows 8.1 переустановим на Windows 7.

Теперь запускаем программу в среде WinPE. В меню «Восстановление» выбираем «Запуск в среде восстановления Windows». 

Компьютер перезагрузится, и Dism++ запустится в изолированной от операционной системы среде WinPE. В окне программы жмём меню «Файл», далее – «Применить образ».

В окошке применения образа:

  • 1 – Указываем путь к образу дистрибутива – к файлу ISO, WIM или ESD;
  • 2 – Указываем раздел С в качестве раздела развёртывания Windows;
  • 3 – Указываем редакцию Windows;
  • 4 – Ставим галочку опции добавления переустанавливаемой системы в загрузчик;
  • 5 —  Ставим галочку опции  форматирования раздела С.

И жмём «Ок».

В окошке запроса на перезапись загрузчика жмём «Ок».

И ждём, пока завершится процесс развёртывания. Его прогресс можно отслеживать на шкале вверху окна Dism++.

Когда развёртывание завершится, жмём «Ок» и закрываем окно программы Dism++.

Компьютер перезагрузится, и запустится уже новая система. Если в меню загрузчика старой Windows были пункты загрузки других операционных систем, LiveDisk’ов или самой программы Dism++, а её запуск в среде WinPE, кстати, тоже может быть добавлен в меню загрузчика, все пункты меню будут целы и невредимы. Перезапишется только пункт выбора переустановленной Windows.

Ну и далее пойдёт этап установки драйверов, а после него — создание системного профиля.

Installing Windows using CMD. (UEFI and BIOS Supported)

Guide created by Andrew Lee

Note that this guide does not go into detail, it’s just providing the commands to install Windows.

Be cautions when doing this when dualbooting, please backup any existing data or you will lose them all.

Open CMD

First open CMD by pressing the following keys after booting into setup: Shift + F10

Creating Partition

MBR

diskpart
list disk
select disk (number for main disk)
clean # Clearing the partitions
convert mbr
-----------------------
(Creating recovery is optional)
create part primary size 500
format quick label Recovery
assign letter R
set id 27
-----------------------
create part primary
format quick label Windows (or label of your choice)
assign letter C (or E)
active
exit

UEFI

diskpart
list disk
select disk (number for main disk)
clean # Clearing the partitions
convert gpt
create part efi size 512
format fs fat32 quick
assign letter w
create part msr size 16
-----------------------
(Creating recovery is optional)
create part primary size 500
format quick label Recovery
assign letter R
set id de94bba4-06d1-4d40-a16a-bfd50179d6ac
gpt attributes 0x8000000000000001
-----------------------
create part primary 
format quick label Windows (or label of your choice)
assign letter C (or E)
exit

Go to install.wim directory

[letter of installation disk]:
cd sources

List SKUs

Listing SKUs like Home, Pro, Education, Ultimate, etc.

dism /get-wiminfo /wimfile:[Location to install.wim]

Deploying WIM file

Copies the content from the install.wim file to the main disk.

dism /apply-image /imagefile:[Location to install.wim] /index:[SKU Number] /applydir:(Drive letter to main disk)

e.g dism /apply-image /imagefile:d:\sources\install.wim /index:6 (Win10 Pro) /applydir:C:\

Creating recovery folders and copying Windows RE to the recovery partition (Optional)

md R:\Recovery\WindowsRE
xcopy /h C:\Windows\System32\Recovery\Winre.wim R:\Recovery\WindowsRE
C:\Windows\System32\Reagentc /Setreimage /Path R:\Recovery\WindowsRE /Target C:\Windows

Creating boot files

MBR only

bootsect /nt60 C: (or E:) /force /mbr

MBR + UEFI

bcdboot (Drive letter to main disk):\Windows

Add argument if it’s UEFI (if needed)

/s [drive letter to UEFI]:

Bypassing the OOBE entirely (Optional)

reg load HKLM\SOFT C:\Windows\System32\config\SOFTWARE
reg load HKLM\SYS C:\Windows\System32\config\SYSTEM
reg add HKLM\SOFT\Microsoft\Windows\CurrentVersion\Policies\System /v VerboseStatus /t REG_DWORD /d 1 /f
reg add HKLM\SOFT\Microsoft\Windows\CurrentVersion\Policies\System /v EnableCursorSuppression /t REG_DWORD /d 0 /f
reg add HKLM\SYS\Setup /v CmdLine /t REG_SZ /d cmd.exe /f

Reboot

wpeutil reboot

Bypassing the OOBE entirely (P2)

Run Windows Deployment Loader then enable recovery

oobe\windeploy
Reagentc /enable (if you made a recovery parition)
Reagentc /Info /Target C:\Windows

Add user (When the boot status says «Getting Ready»)

net user /add (username) (password)
net localgroup users /add (username) # in case Windows didn't add the users group
net localgroup administrators /add (username)

Clear OOBE status

reg add HKLM\SYSTEM\Setup /v OOBEInProgress /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v SetupType /t REG_DWORD /d 0 /f
reg add HKLM\SYSTEM\Setup /v SystemSetupInProgress /t REG_DWORD /d 0 /f
exit

Disabling VerboseStatus and Enabling CursorSuppression (Optional)

When entering the desktop open CMD as admin and run the following.

reg add HKLM\SOFT\Microsoft\Windows\CurrentVersion\Policies\System /v VerboseStatus /t REG_DWORD /d 0 /f
reg add HKLM\SOFT\Microsoft\Windows\CurrentVersion\Policies\System /v EnableCursorSuppression /t REG_DWORD /d 1 /f

Credits

If there’s anything that needs to be added, feel free to tell me in the comments below!

  • Caesar (TheDarkBomber#0229): For helping fixing some things in the script that I forgot or needed to add.

Пройдемся еще немножко по теме установки ОС Windows. На этот раз, речь пойдет о использовании стандартного установщика для организации мультиустановки. И напоследок рассмотрим ручную установку из *.wim или *.esd архива.

Содержание

  • Как Происходит Установка ОС Windows
  • Стандартный Установщик Windows
  • Мультиустановка с Помощью Установщика Windows
  • Уменьшение Размера WIM-архива
  • Ручная Установка
    • Создание Разделов
      • Diskpart
        • MBR
        • GPT
    • Извлечение Файлов
      • Dism
    • Установка Загрузчика
      • BIOS
      • UEFI
    • Тестовый Запуск
  • Итог

Как Происходит Установка ОС Windows

Разберем процесс установки детально. Сначала происходит подготовка установочного диска. Под диском я подразумеваю любой накопитель, с которого возможна установка Windows, будь то флешка, CD-диск и т.д. Выглядит данный процесс следующим образом.

Скачивается ISO-образ, с необходимой редакцией ОС. С помощью данного образа подготавливается установочная флешка, или установочный CD-диск. Либо скачивается официальная программа от Microsoft, для создания установочного диска. И уже с ее помощью происходит подготовка установочного диска.

Следующий этап, загрузка с подготовленного установочного диска. На этом этапе происходит запуск среды предустановки (WinPE), и выполнение установочной программы Windows.

Установочная программа, в свою очередь, выполняет следующие действия. Выбор диска, на который будет происходить установка. Создание разделов. Копирование файлов ОС Windows на созданный или указанный раздел. Установка загрузчика.

Работа с установочным диском на этом завершается. Поэтому, формально сам процесс установки на этом завершается. Все последующее, это просто инициализация скопированной копии ОС Windows.

Стандартный Установщик Windows

Представлен исполняемым файлом \sources\setup.exe установочного диска Windows.

И ссылающийся на него файл \setup.exe в корне диска.

Стандартный установщик, так же присутствует в образе среды предустановки boot.wim. Пути расположения идентичны.

\sources\setup.exe

\setup.exe

Как говорилось ранее, задача у данной программы выполнить установку ОС Windows. Теперь немного фактов о стандартном установщике Windows.

Windows-установщик является обычной программой. То есть при желании, его можно сохранить как отдельную программу вне установочного диска, например на флешке, и запускать по мере необходимости. Все файлы стандартного установщика расположены в папке \sources.

Файл \setup.exe в корне установочного диска, или среды предустановки, на самом деле не является самостоятельным установщиком. Все что он делает, это запускает файл \sources\setup.exe.

Для Windows-установщика не важна разрядность устанавливаемой ОС. К примеру, 32-битный установщик, без проблем выполнит установку 64-битной версии ОС Windows из указанного *.wim/*.esd архива.

Установочный *.wim/*.esd архив, не обязательно должен находиться в папке \sources для выполнения установки. Установщику можно указывать путь до архива, который он в последствии будет извлекать.

Установщик Windows расположенный в boot.wim образе содержит в себе функционал восстановления системы. Исполняемый файл, запускающий утилиту восстановления системы, расположен по пути \sources\recovery\RecEnv.exe.

Мультиустановка с Помощью Установщика Windows

Теперь, когда нам известно о возможностях стандартного установщика, попробуем организовать с его помощью установку различных версий ОС Windows. Для теста, я взял четыре установочных *.wim/*.esd (располагаются в папке \sources установочного ISO-образа, и обычно имеют имя install.wim или install.esd) архива операционных систем

Windows 7 64-bit

,

Windows 8.1 64-bit

,

Windows 10 64-bit

и

Windows 10 32-bit

.

Установочные файлы были размещены в директории WinSetup\WinImage. Пути не обязательно должны быть такими же, меняйте их по своему усмотрению, просто учитывайте ваши изменения с дальнейшим описанием.

Скопируем стандартный установщик Windows с boot.wim образа, 32-x битной версии установочного диска, в папку WinSetup. Весь установщик, с необходимыми ему файлами, расположен в папке \sources, в корне самого объемного по размеру индекса, файла boot.wim.

Почему копировать папку sources лучше из файла boot.wim, а не из корня установочного ISO-образа? Ответ банален — из-за размера. Папка sources из файла образа boot.wim имеет вдвое меньший объем, чем аналогичная в корне установочного диска. Учитывая, что обе версии одинаково справляются со своей задачей, выбор пал на меньшую по размерам.

Перейдем в скопированную папку sources, и запустим установщик setup.exe.

В результате, получаем ошибку о том, что системе Windows не удалось найти файл boot.wim, очень необходимый, по мнению установщика.

«Windows не может найти требуемый файл установки [boot.wim]. Убедитесь, что источник установки действителен и запустите установку заново. Код ошибки: 0x80070002»

Дело в том, что установщик понимает, что он выполняется в полноценной версии Windows, а не в среде предустановки. И ожидает увидеть файлы boot.wim и install.wim (esd), в папке sources. Если он их не находит, то считает, что установка не может быть выполнена, так как установочный диск является не полноценным. К сведению, аналогичные действия в загруженной WinPE, не вызвали бы таких ошибок.

Придется дать установщику то, что он просит. Сама мысль о том, что папка sources будет увеличена в размере на на 350 МБ, приводит в ужас. Ведь немного ранее мы уже экономили на папке sources.

Попробуем обмануть установщик. Самое первое, что может прийти в голову, это создать пустой файл с именем boot.wim, и подложить в папку sources.

Но, установщик не так прост как кажется. Получаем ошибку — «Системе Windows не удается создать требуемую папку установки. Код ошибки: 0x8007000B«.

То есть, он не просто проверяет наличие файла boot.wim, но проверяет его содержимое на валидность. Тогда остается последний вариант. Скопировать корректный файл boot.wim с установочного диска, и опустошить его, то есть максимально уменьшить его размер.

Если нет желания возиться с командной строкой, то можете скачать уже максимально опустошенный мною файл boot.wim (2.44 KB). Информацию о том, как уменьшить размер файла boot.wim, и в принципе любого другого *.wim архива, можно прочесть в этом разделе.

После того, как у нас на руках есть уменьшенный в размере файл boot.wim, копируем его в папку sources.

Запускаем setup.exe и получаем сообщение — «Windows не удалось собрать данные для [OSImage], так как указанный файл образа [install.wim] не существует.».

Из текста сообщения понятно, что теперь все хорошо, не хватает лишь файла install.wim для осуществления установки.

На этом этапе никаких хитростей не понадобится. Ранее уже говорилось, что установщику можно указать с какого файла производить установку. Делается это с помощью запуска файла sources\setup.exe с параметром /installfrom:«путь_до_wim_или_esd_архива». Остальные параметры установщика можно посмотреть по адресу https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/windows-setup-command-line-options.

Так как у нас четыре установочных архива, создадим рядом с папкой sources четыре *.cmd скрипта, для запуска установки каждого из них. Перечислим их с описанием их содержимого, и примером запуска:

Win7x64.cmd — Запуск установки Windows 7 64-bit.

@echo off
@pushd %~dp0
cd sources
setup.exe /installfrom:..\WinImage\Win7Ult64.esd

Win8x64.cmd — Запуск установки Windows 8 64-bit.

@echo off
@pushd %~dp0
cd sources
setup.exe /installfrom:..\WinImage\Win81Pro64.wim

Win10x64.cmd — Запуск установки Windows 10 64-bit.

@echo off
@pushd %~dp0
cd sources
setup.exe /installfrom:..\WinImage\Win10Pro64.esd





Win10x86.cmd — Запуск установки Windows 10 32-bit.

@echo off
@pushd %~dp0
cd sources
setup.exe /installfrom:..\WinImage\Win10Pro86.esd

Все работает! Последнее, что можно сделать, это создать либо единый *.cmd скрипт, либо приложение с графическим интерфейсом, с возможностью выбора устанавливаемой версии Windows.

Пример графического меню созданного с помощью AutoIt.

Исходный код следующий:

#NoTrayIcon
#RequireAdmin

#include <buttonconstants.au3>
#include <guiconstantsex.au3>
#include <staticconstants.au3>
#include <windowsconstants.au3>

$MainWin = GUICreate("Install Menu", 297, 322,- 1, -1, BitOR($WS_CAPTION, $WS_POPUP, $WS_SYSMENU))

$b1 = GUICtrlCreateButton("Windows 7 64-bit", 8, 8, 281, 65)
$b2 = GUICtrlCreateButton("Windows 8.1 64-bit", 8, 80, 281, 65)
$b3 = GUICtrlCreateButton("Windows 10 64-bit", 8, 152, 281, 65)
$b4 = GUICtrlCreateButton("Windows 10 32-bit", 8, 224, 281, 65)

$link = GUICtrlCreateLabel("http://www.BootDev.ru/", 88, 296, 121, 17)
GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")

GUICtrlSetBkColor(-1, 0xFFFFFF)

GUISetIcon("icon.ico")

GUISetState(@SW_SHOW)

FileChangeDir(@ScriptDir)

Global $setup = "sources\setup.exe /installfrom:"

While 1
 $nMsg = GUIGetMsg()
 Switch $nMsg
  Case $GUI_EVENT_CLOSE
   Exit

  Case $b1 ; Windows 7 64-bit
   Run($setup & "WinImage\Win7Ult64.esd")

  Case $b2 ; Windows 8.1 64-bit
   Run($setup & "WinImage\Win81Pro64.wim")

  Case $b3 ; Windows 10 64-bit
   Run($setup & "WinImage\Win10Pro64.esd")

  Case $b4 ; Windows 10 32-bit
   Run($setup & "WinImage\Win10Pro86.esd")

  Case $link
   ShellExecute("http://www.bootdev.ru")
 EndSwitch
WEnd

Скрипт скомпилирован в исполняемый файл WinSetup.exe. Располагаться он должен рядом с папкой sources.

Созданное меню более удобно для использования, и заменяет по функционалу все написанные ранее *.cmd скрипты. Особенно, данное удобство будет заметно при интеграцию его в среду предустановки, немного доработав поиск установочных архивов на поиск их на внешнем носителе. В общем, какой вариант запуска использовать, это дело конкретной потребности.

Уменьшение Размера WIM-архива

Единственный способ уменьшить размер wim-архива, это избавиться от ненужного содержимого в нем. Но здесь есть один подвох. При удалении данных, они физически не удаляются, а как бы перемещаются в раздел удаленных. Размер wim-файла при этом даже немного увеличивается. Разберем все более подробно на примере файла boot.wim. Текущая цель создать пустой wim-файл.

Создадим папку (это скорее для удобства), в моем случае это папка E:\WIM, и поместим в нее оригинальный файл boot.wim.

Размер его на данный момент составляет 336 MB. Запустим командную, строку от имени администратора, и перейдем в ней в каталог с нашим файлом boot.wim.

Посмотрим информацию о файле boot.wim, выполнив команду dism /get-wiminfo /wimfile:boot.wim.

Видим, что архив содержит две версии Windows — первая Microsoft Windows PE размером ~1395 MB (среда предустановки), вторая Microsoft Windows Setup размером ~1580 MB (среда предуставновки + установщик).

Через 7-Zip, boot.wim на данный момент выглядит так:

Удалим второй индекс, вместе со всем его содержимым. Выполним для этого команду dism /delete-image /imagefile:boot.wim /index:2.

Снова выведем информацию о boot.wim, и проверим содержимое через 7-Zip.

Командная строка показывает то что индекса 2 больше нет. Размер boot.wim при этом вырос на 1 MB. И только 7-Zip показывает, что удаленные данные, размером в ~100 MB, находятся в секции [DELETED].

Индекс 1 удалить невозможно (наша цель, напомню, уменьшить максимально файл boot.wim), потому что он обязательно должен присутствовать в wim-архиве. Поэтому остается только смонтировать 1-й индекс, и удалить файлы вручную с сохранением проделанных изменений.

Для монтирования нам потребуется какая-нибудь папка. Содержимое смонтированного архива, будет отображено в ней. Создадим папку с именем mnt рядом с файлом boot.wim.

Смонтируем первый индекс в папку mnt, выполнив команду dism /mount-image /imagefile:boot.wim /index:1 /mountdir:mnt.

В папке mnt появится содержимое архива boot.wim.

Открываем Far Manager от имени администратор, переходим в папку mnt и удаляем ее содержимое. Именно он позволяет полностью, без проблем, удалить все файлы.

Закрываем Far Manager. Закрываем все окна, в которых открыта папка mnt. Возвращаемся в командную строку, выполняем размонтирование файла boot.wim с сохранением проделанных изменений. Вводим для этого команду dism /unmount-image /mountdir:mnt /commit.

Снова проверим информацию о boot.wim.

Размер первого индекса 0. Сам архив увеличился еще на 1 MB.

Последнее что нужно сделать, это экспортировать первый индекс в новый архив. Данное действие позволит избавится от так называемого раздела [DELETED], который хранит в себе удаленные данные.

Выполняем команду dism /export-image /sourceimagefile:boot.wim /sourceindex:1 /destinationimagefile:new_boot.wim.

Появится новый архив new_boot.wim размером 2.44 KB. Операция уменьшения boot.wim архива на этом, успешно выполнена.

Ручная Установка

Все рассказанное до этого момента, предполагало наличие установщика. То есть программы, которая за вас выполнит разметку диска, копирование файлов и установку загрузчика. В этой главе, и ее подглавах, мы рассмотрим как выполнить установку с *.wim или *.esd архива вручную.

Сразу напрашивается вопрос — А зачем нужна установка вручную, ведь много программ которые могут автоматизировать данный процесс, WinNTSetup или тот же стандартный установщик? Данный вариант можно рассматривать как «аварийный». Например, у вас нет под рукой необходимого ПО, или используемый вами WinPE не содержит его. Или вы находитесь в ситуации когда нет времени, а установку уже надо делать. Я это все к тому, что знать о ручной установке все же будет полезно.

Все дальнейшие действия будут проводиться на виртуальном жестком диске VHD. Так же, будет производиться загрузка данного VHD в виртуальной машине VirtualBox, для проверки корректности работы, после проделанных действий.

Разметка Диска

Возможные таблицы разделов на данный для дисков, это MBR или GPT. С MBR-диска можно загружаться как в BIOS, так и в UEFI системах (legacy mode). С GPT-диска, только в UEFI. Рассмотрим создание обоих типов таблиц разделов.

Diskpart

Рассмотрим создание таблицы разделов с помощью консольной утилиты diskpart. Предназначена она для выполнения различных манипуляций с дисками и разделами. Присутствует в Windows с 2000-й версии.

Все дальнейшие действия в данной программе, будут проводиться для диска под номером 2 (виртуальный жесткий диск, о котором говорилось выше).

Узнать номер целевого диска можно командой list disk, а командой select disk X, где X номер диска, можно выбрать указанный диск для выполнения дальнейших манипуляций над ним.

MBR

Для диска в формате MBR потребуется 2 раздела. Первый системный, размером в 100 MB, на котором будут располагаться файлы загрузчика. И второй основной, для операционной системы. Хотя можно обойтись и одним разделом для всего.

Запускаем diskpart  (Win+R, вводим diskpart и нажимаем ENTER) и выполняем следующую последовательность команд:

rem Выбираем целевой диск
select disk 2

rem Очищаем выбранный диск от таблицы разделов
clean

rem Создаем первый раздел размером в 100 MB
create partition primary size=100

rem Помечаем раздел как активный
active

rem Форматируем раздел в файловую систему NTFS и выставляем метку System
format quick fs=ntfs label="System"

rem Присваиваем разделу букву S
assign letter="S"

rem Создаем второй раздел занимающий все оставшееся пространство диска
create partition primary

rem Форматируем раздел в файловую систему NTFS и выставляем метку Windows
format quick fs=ntfs label="Windows"

rem Присваиваем разделу букву W
assign letter="W"

GPT

Для диска в GPT формате потребуется 3 раздела. Первый EFI раздел, с файловой системой FAT32, размером 100 MB. В нем будет располагаться загрузчик. Второй MSR раздел, размером в 128 MB. Служебный раздел для ОС Windows, не предназначен для хранения данных. И последний основной раздел, для операционной системы.

Запускаем diskpart  (Win+R, вводим diskpart и нажимаем ENTER) и выполняем следующую последовательность команд:

rem Выбираем целевой диск
select disk 2

rem Очищаем выбранный диск от таблицы разделов
clean

rem Конвертируем таблицу разделов в GPT формат
convert gpt

rem Создаем EFI раздел размером в 100 MB
create partition efi size=100

rem Форматируем раздел в файловую систему FAT32 и выставляем метку System
format quick fs=fat32 label="System"

rem Присваиваем разделу букву S
assign letter="S"

rem Создаем служебный раздел MSR размером в 128 MB
create partition msr size=128

rem Создаем третий раздел занимающий все оставшееся пространство диска
create partition primary

rem Форматируем раздел в файловую систему NTFS и выставляем метку Windows
format quick fs=ntfs label="Windows"

rem Присваиваем разделу букву W
assign letter="W"

Пару слов по поводу MSR раздела, команда create partition msr size=128. При выполнении команды convert gpt, MSR раздел создается автоматически.

Как можно заметить, до выполнения команды convert gpt, разделы на жестком диске отсутствовали. А после выполнения, появился раздел размером в 128 MB.

Вывод детальной информации о созданном разделе, только подтверждает, что это MSR раздел.
Возможно, я не уверен, старые версии diskpart не обладали таким поведением. Хотя в Windows 7 поведение полностью аналогичное, но ОС при этом была обновленная. Поэтому команду в списке я все же оставил.

Извлечение Файлов

Данный шаг, является следующим после разметки диска. Выполнять извлечение установочного архива будем выполнять с помощью консольной утилиты DISM.

Можно попробовать использовать для этих целей 7-Zip. Собственно я планировал добавить далее описание данного процесса. Но при тестировании выявил, что операционная система  Windows 10, распакованная таким образом, выдавала ошибку при первом старте. Поэтому от вариантов распаковки установочного образа с помощью архиваторов и файл менеджеров, было решено отказаться.

Сам процесс извлечения состоит из двух этапов. Определение извлекаемой версии архива. Как известно *.wim/*.esd архивы могут содержать несколько версий содержимого, разбитого по индексам. И последний этап, извлечение выбранного индекса в указанный раздел.

DISM

Для работы dism нужны права администратора, поэтому все дальнейшие действия необходимо выполнять в командной строке запущенной с соответствующими правами.

В командной строке, переходим в директорию, в которой расположен установочный архив. В моем случае это директория WinSetup\WinImage.

Выполнив команду dir, выводим список файлов, чтобы посмотреть имя архива с которым будем работать далее.

Выводим информацию о выбранном архиве введя команду dism /get-wiminfo /wimfile:Win10Pro64.esd, чтобы определить индекс извлекаемого содержимого.

Выполняем извлечение выбранного индекса командой dism /apply-image /imagefile:Win10Pro64.esd /index:4 /applydir:W:\. W:\ в данном случае, это раздел, который создавался в предыдущей главе, и предназначался для размещения ОС Windows.

Извлечение файлов на этом завершено. Содержимое диска W:\ представлено на скриншоте ниже.

Установка Загрузчика

Перед установкой загрузчика, в системе должны быть подключены, оба созданных ранее раздела S:\ и W:\. Подключить разделы можно с помощью программы diskpart, либо в оснастке Управление дисками.

Для diskpart, делается с помощью следующих команд:

rem Узнаем номер необходимого диска
list disk

rem Выбираем необходимый диск
select disk 2

rem Выводим список разделов выбранного диска
list partition

rem Выбираем первый раздел диска
select partition 1

rem Монтируем первый раздел под буквой S
assign letter=S

rem Выыбираем второй раздел диска
select partition 2

rem Монтируем второй раздел под буквой W
assign letter=W

rem Выходим из diskpart
exit

В оснастке Управление дисками, все делается через контекстное меню нужного раздела.

Процесс довольно простой и понятный, поэтому не нуждается в подробном описании.

Теперь, когда подключены оба раздела, можно приступать к установке загрузчика. Возможны два варианта, в зависимости от используемой таблицы разделов — установка BIOS версии (MBR), или установка EFI версии (GPT).

BIOS

Для дисков размеченных в стиле MBR, потребуется установить MBR-запись, и выполнить копирование файлов загрузчика на раздел S:\. Делается это довольно просто, с помощью консольных программ bootsect и bcdboot. Сами команды будут иметь следующий вид, выполнять их нужно в командной строке, запущенной от имени администратора:

:: Устанавливаем загрузочный код Windows Boot Manager в MBR область диска
bootsect /nt60 S: /mbr

:: Переходим в раздел W:\ с распакованными файлами Windows
W:

:: Переходим в директорию System32 распакованной системы
cd W:\Windows\System32

:: Устанавливаем BIOS версию загрузчка Windows Boot Manager в раздел S:\
bcdboot W:\Windows /s S: /f BIOS

Загрузчик установлен. На диске S:\ появятся файлы загрузчика.

UEFI

Для дисков с таблице разделов GPT, для установки загрузчика достаточно выполнить только копирование файлов загрузчика на раздел S:\. Выполняется эта операция с помощью консольной утилиты bcdboot. Выполнять ее запуск нужно в командной строке запущенной от имени администратора. Полный пример команд будет выглядеть так:

:: Переходим в раздел W:\ с распакованными файлами Windows
W:

:: Переходим в директорию System32 распакованной системы
cd W:\Windows\System32

:: Устанавливаем BIOS версию загрузчка Windows Boot Manager в раздел S:
bcdboot W:\Windows /s S: /f UEFI

Загрузчик установлен. На диске S:\ появится папка с UEFI загрузчиком.

Тестовый Запуск

Проверим ручную установку, подключив подготовленный VHD-образ в виртуальную машину VirtualBox.

Результат загрузки.

Операционная система успешно установилась и загрузилась.

Итог

Процесс установки Windows, достаточно многогранен. Реализовать данную процедуру можно различными способами. Сегодня мы рассмотрели, несколько нестандартное, применение стандартных средств установки, а так же целиком ручную установку. Оба метода по своему интересны, и в зависимости от ситуации, обязательно найдут применение в реальных задачах.

Создание загрузочной флешки Windows To Go в Dism++Windows To Go — загрузочная USB флешка, с которой возможен запуск и работа Windows 10 без установки на компьютер. К сожалению, встроенные средства «домашних» версий ОС не позволяют создать такой накопитель, но это можно сделать с помощью сторонних программ.

В этой инструкции — пошаговый процесс создания загрузочной флешки для запуска Windows 10 с неё в бесплатной программе Dism++. Существуют и другие способы, описанные в отдельной статье Запуск Windows 10 с флешки без установки.

Процесс развертывания образа Windows 10 на флешку

Бесплатная утилита Dism++ имеет много применений, среди них — и создание накопителя Windows To Go путем развертывания образа Windows 10 в формате ISO, ESD или WIM на USB-флешку. О других возможностях программы можно почитать в обзоре Настройка и оптимизация Windows в Dism++.

Для того, чтобы создать флешку для запуска Windows 10 вам потребуется образ, флешка достаточного объема (не менее 8 Гб, но лучше от 16) и очень желательно — быстрая, USB 3.0. Также следует учитывать, что загрузка с созданного накопителя будет работать только в режиме UEFI.

Шаги для записи образа на накопитель будут следующими:

  1. В Dism++ откройте пункт «Дополнительно» — «Восстановление». Дополнительные утилиты Dism++
  2. В следующем окне в верхнем поле укажите путь к образу Windows 10, при наличии нескольких редакций в одном образе (Домашняя, Профессиональная и т.д.) выберите нужную в пункте «Система». Во втором поле укажите вашу флешку (она будет отформатирована). Установка Windows 10 на флешку в Dism++
  3. Отметьте пункты Windows ToGo, Доб. Загр., Формат. При желании, чтобы Windows 10 занимала меньше места на накопителе, отметьте пункт «Compact» (в теории, при работе с USB это также может положительно сказаться на скорости).
  4. Нажмите Ок, подтвердите запись загрузочной информации на выбранный USB накопитель.
  5. Дождитесь завершения развертывания образа, что может занять достаточно продолжительное время. По завершении вы получите сообщение о том, что восстановление образа было успешно выполнено. Запись Windows 10 на флешку завершена

Готово, теперь достаточно загрузить компьютер с этой флешки, выставив загрузку с нее в БИОС или используя Boot Menu. При первом запуске также потребуется подождать, а затем пройти первоначальные этапы настройки Windows 10 как при обычной установке.

Скачать программу Dism++ вы можете с официального сайта разработчика https://www.chuyu.me/en/index.html

Дополнительная информация

Несколько дополнительных нюансов, которые могут быть полезны после создания накопителя Windows To Go в Dism++

  • В процессе на флешке создается два раздела. Старые версии Windows не умеют полноценно работать с такими накопителями. Если вам потребуется вернуть исходное состояние флешки, используйте инструкцию Как удалить разделы на флешке.
  • На некоторых компьютерах и ноутбуках загрузчик Windows 10 с флешки может «сам» оказаться в UEFI на первом месте в параметрах устройств загрузки, что приведет к тому, что после её извлечения компьютер перестанет загружаться с вашего локального диска. Решение простое: зайти в БИОС (UEFI) и вернуть порядок загрузки в исходное состояние (поставить Windows Boot Manager/Первый жесткий диск на первое место).

  • Установка windows с загрузочной флешки через bios
  • Установка wireguard на windows server
  • Установка windows по сети в домене
  • Установка windows с sata hdd
  • Установка windows через usb с телефона