Решил создать данную тему, т.к. пользователь usb с форума usbtor.ru попросил меня помочь ему с решением данного метода установки Windows.
Часть текста взята с форума usbtor.ru, вот сама тема [Внешняя ссылка удалена для гостей]
Пример буду описывать на образе Microsoft Windows 10.0.19041.450 Version 2004 (Updated Aug 2020) - Оригинальный образ от Microsoft MSDN [Ru]
Вариант первый
Что для этого нам потребуется:
- Образ windows
- Набор для изменения Boot.wim
- Флешка для проверки работоспособности после наших манипуляций
- Внимательность, терпение, понимание что делаешь и "прямые руки "
- Если на флешке есть нужна инфа то копируем ее на другой диск, форматируем флешку, устанавливаем загрузочную область
ПРИМЕЧАНИЕ: Установки показаны для примера(какие нужно для установки загрузочной области), это можно сделать при помощи bootice
[Внешняя ссылка удалена для гостей] - Скопировать из образа папки \boot, \efi, \sources и файл bootmgr
- Распаковать набор для изменения файла boot.wim, распаковать можно в корень любого локального раздела диска
- Нужно установить imagex(если у вас установлен Windows ADK, то этого делать не нужно), в папке \mu\imagex\x32(x64) запускаем файл Install.bat
- Из папки \sources копируем файл boot.wim в папку \mu из распакованного архива mu.7z
- Открываем файл mysetup.cmd при помощи текстового редактора(желательно NotePad++) и редактируем вот эти строку
вместо Win7 прописываем любое название папки, например: WinServer, т.е. будет выглядеть весь скрипт вот такSET DD=Win7и сохраняем измененияКод: [Удалена локальная ссылка для гостей]
@echo off setlocal enabledelayedexpansion SET DD=WinServer SET IN=NI for %%I in (C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( set IP=%%I:\!DD! dir /d !IP!\install.wim&&set IN=!IP!\install.wim dir /d !IP!\install.esd&&set IN=!IP!\install.esd dir /d !IP!\install.swm&&set IN=!IP!\install.swm IF !IN! NEQ NI goto :INST ) IF %IN% EQU NI ( echo ERROR - COULD NOT FIND INSTALL.WIM(ESD,SWM) in %DD%% folder! pause pause goto:RBT ) :INST echo %IP% if exist %IP%\unattend.xml SET UN=/unattend:%IP%\unattend.xml if exist %IP%\_unattend.xml SET UN=/unattend:%IP%\_unattend.xml if exist %IP%\OEM\nul SET OEM=/m:%IP%\OEM if exist %IP%\$OEM$\nul SET OEM=/m:%IP%\$OEM$ set ST=X:\Setup.exe if exist %IP%\Setup.exe set ST=%IP%\Setup.exe if not exist %ST% goto :BAD cd /d %IP% %ST% /installfrom:%IN% %OEM% %UN% goto :RBT :BAD dir X:\ /b echo Cannot find %ST% ! echo. :RBT exit @echo Press a key to reboot now... pause wpeutil reboot pause
- В папке \mu запускаем от админа файл pusk.cmd и ждем окончания всех процессов(должно закрыться окно консоли, после завершения всех процессов)
- Измененный boot.wim копируем в папку \sources
- Переименовываем папку \sources на \WinServer
- Во всех файлах BCD изменяем строку \sources\boot.wim на \WinServer\boot.wim, файлы BCD находятся в папке \boot и \efi\microsoft\boot
Всё!!!
Проверяем наши изменения, т.е. при помощи любой виртуальной машины например QemuBootTester, нужно загрузить нашу флешку
Таким образом можно добавить несколько папок \sources и переименовать их как вам угодно.
Минус такого способа в том что при каждой добавленной папки \sources у вас будет добавляться размер ~600 mb, а это ни есть гуд
И еще, использовав папку \sources от win 10 последней версии вы тем самым решаете вопрос с лицензионным соглашением , лично я проверил на Windows 8.1 Embedded Industry Enterprise
Вариант второй
Что для этого нам потребуется:
- Образ windows
- [Удалена локальная ссылка для гостей]
- Набор для изменения Boot.wim
- Флешка для проверки работоспособности после наших манипуляций
- Внимательность, терпение, понимание что делаешь и "прямые руки "
- Если на флешке есть нужна инфа то копируем ее на другой диск, форматируем флешку, устанавливаем загрузочную область
ПРИМЕЧАНИЕ: Установки показаны для примера(какие нужно для установки загрузочной области), это можно сделать при помощи bootice
[Внешняя ссылка удалена для гостей] - Скопировать из образа папки \boot, \efi, \sources и файл bootmgr
- Запускаем GImageX_v2.1.1 и монтируем boot.wim
- Распаковать архив любую папку на вашем hdd
- Файлы winpeshl.ini и winsetup.cmd копируем в монтированный boot.wim в папку \windows\system32
- Файл SetWin10.cmd копируем в корень boot.wim
- Демонтируем boot.wim и копируем его в папку \sources на вашей флешке
- Создать папку Win10 в корне флешки и скопировать в нее install.wim(esd)
- В файле \boot\bcd вот эту строку
[Внешняя ссылка удалена для гостей]
меняем на эту
[Внешняя ссылка удалена для гостей]
Для каждой версии виндовс создается папка и копируется в нее только файл install.wim(esd), ОЕМ и файл ответов
Теперь по скриптам:
В них нечего сложного нет, один скрипт от первого варианта и в нем только изменяется название папки где находиться файл install.wim(esd), вот эта строка SET DD=Win10
Во втором скрипте прописываются пункты меню и название cmd файла, для поиска и запуска установки, думаю вы разберетесь, если нет то пишите отвечу, вот в принципе и все, я думаю это самый удобный вариант, если кто хочет устанавливать такими способам
Скрипт для первого варианта(Обновление)
[Внешняя ссылка удалена для гостей]Переделал скрипт для первого варианта, теперь не требуется дополнительные программы и утилиты!!!
Задействован DISM
Требование: Windows 8-11(x86-x64bit)
Теперь консольные окна скрыты при запуске, как в boot.wim-х86 так и boot.wim-х64
Пропускает окно для ввода серийного ключа
Инструкция:
1)Архив распаковываем на любой диск(раздел)
2)В папку FileCopy_x86-x64bit копируем свой boot.wim
3)Файл filecopy.cmd запускаем от админа
4)Добавил функцию удаления первой редакции Index:1
ПРИМЕЧАНИЕ: Скрипт работает только с оригинальными BOOT.WIM, т.е. в нем должны присутствовать 2 редакции!!!
FileCopy_x86-x64bit (Portable version)
Создал Portable версиюВсе команды выполняются полностью в Windows 7
Требование: Windows 7-11(x86-x64bit)
Инструкция:
1)Архив распаковываем на любой диск(раздел)
2)В папку FileCopy_x86-x64bit копируем свой boot.wim
3)Файл filecopy.cmd запускаем от админа