[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
"Возвращается мужик из командировки, а у него дома винда переставлена."-*** WInst ***-
Назначение проекта:
    Установка Windows 7-10 через:
  • Автоматизацию запуска стандартной программы установки Windows setup.exe с ключами командной строки. Для установки новых редакций Windows 10 применяется метод подмены стандартной библиотеки winsetup.dll.
  • Развёртывание Windows на жёсткий диск (как с возможностью его разметки, так и на уже подготовленный) или в контейнер VHD с помощью программы wimlib-imagex.exe и последующим добавлением в список загрузки.

Представляет собой:
    Командный бат-файл.

Область применения:
  • Операционная система:
    • установка через setup.exe: WinPE 7-10
    • развёртывание через wimlib-imagex.exe: Win7-10, WinPE 7-10
  • Разрядность: x86/x64

Загрузочная среда BootMedia

Содержимое папки:
  • Загрузочные образы (x86 и x64) на базе Windows 1909, 2009, 2022
  • Загрузочный образ на базе Windows 8 x86
  • Загрузочный образ на базе Windows 7 x86 с комплектом драйверов USB3/SATA-RAID/NVMe
  • Обновлённый скрипт создания загрузочного образа
При старте происходит поиск (и запуск, в случае успеха) по всем дискам скрипта "$:\programs\WInst\*.cmd" или "$:\WInst\*.cmd".Загрузить BootMedia

readme.txt

0. Назначение
----------
Установка Windows 7-10 через:
- автоматизацию запуска стандартной программы установки Windows setup.exe с ключами
командной строки. Для установки новых редакций Windows 10 применяется метод
подмены стандартной библиотеки winsetup.dll
- развёртывание Windows на жёсткий диск (как с возможностью его разметки, так и на
уже подготовленный) или в контейнер VHD с помощью программы wimlib-imagex.exe и
последующим добавлением в список загрузки.
1. Терминология
------------
Папка дистрибутива (ПД)
~~~~~~~~~~~~~~~~~~~~~~~
Папка, в которой содержатся:
- установочный файл с расширением WIM, ESD, SWM. Обычно это "install.esd"
- файл описания (необязательно) {формат файла описания см. в "Примечания"}
- папка $OEM$ (необязательно)
- файл ответов unattend.xml (необязательно)
- установочный комплект setup.exe (необязательно)
Допускается наличие в ПД множественных установочных файлов с файлами описаниями.
Общая папка (ОП)
~~~~~~~~~~~~~~~~
Папка, в которой содержатся:
- папки дистрибутивов
- папка $OEM$ (необязательно)
- файл(-ы) ответов unattend.xml (<любое_имя>.xml)
2. Концепция
---------
Возможны три варианта расположения ПД:
Классический
~~~~~~~~~~~~
ОП находится в произвольном месте флешки. Например:
F:\
ОП\
ПД\
ПД\
ПД\
...
Портативный
~~~~~~~~~~~
ОП называется "WInstall" и находится в папке с установочным скриптом WInst
"WInst.cmd". Например:
F:\
Folder\
WInst\
WInstall\
ПД\
ПД\
ПД\
...
WInst.cmd
Произвольный
~~~~~~~~~~~~
Папка ОП отсутствует, ПД располагаются в любом месте флешки. Например:
F:\
Folder\
ПД
Folder1\
Folder2\
ПД
ПД
Folder3\
ПД
3. Выполнение
----------
Поиск и отображение
~~~~~~~~~~~~~~~~~~~
Сначала выполняется поиск ПД, расположенных в варианте "классический".
Для указания расположения ОП служит файл dirlist.txt
Например, у нас есть флешка с такой структурой папок:
F:\
Install\
Windows\
Win7x86\
Win81x64\
Win10x64\
В данном примере ОП - это F:\Install\Windows\
Отбрасываем букву диска с двоеточием и завершающий слэш, получаем "\Install\Windows"
Именно это и записываем в файл dirlist.txt:
\Install\Windows
Если ОП больше одной, то добавляем в dirlist.txt соответствующие строки.
Допускается указание в dirlist.txt непосредственно ПД (это целесообразно, если ПД
содержит множественные установочные файлы). Если брать структуру папок из примера выше,
то записываем в dirlist.txt:
\Install\Windows\Win7x86\@
\Install\Windows\Win81x64\@
\Install\Windows\Win10x64\@
Далее выполняется поиск ПД, расположенных в варианте "портативный" (папка WInstall).
Если поиск в вариантах "классический" и "портативный" не дал результатов, и в папке
программы существует файл fudlist.txt (см. ниже), то информация о дистрибутивах берётся
из него.
Варианты отображения найденных дистрибутивов:
- если для установочного файла существует файл описания, то отображается его содержимое
- если файла описания нет, то берётся информация из первого индекса дистрибутива
Дополнительные возможности
~~~~~~~~~~~~~~~~~~~~~~~~~~
Переключить режим отображения: "версия/путь" - переключить вид с информации из
первого индекса на полный путь к
дистрибутиву.
Выбрать дистрибутив вручную - самостоятельно выбрать файл дистрибутива (файл с
расширением ESD, WIM, SWM).
Искать дистрибутивы на выбранных дисках - поиск на выбранных дисках файлов с
расширением WIM, ESD, SWM и размером
более 1 000 000 000 байт.
Предварительная разметка диска - разметить новый (или без сохранения данных)
накопитель с использованием сценариев diskpart.
Создать/Открыть VHD(X) - создать новый/открыть существующий VHD(X)-файл и
присоединить его к системе для последующей установки
в него Windows.
Техническое обслуживание - добавить раздел/VHD-контейнер в загрузчик Windows;
интегрировать драйверы/установочные пакеты;
удалить/откатить установленные драйверы;
восстановить загрузочные записи раздела/диска.
Поиск используется, в основном, при "произвольном" расположении ПД. Результаты
поиска записываются в файл fudlist.txt и могут быть использованны при последующих
запусках WInst (в отличие от dirlist.txt, содержит полные пути (без диска) к
найденным дистрибутивам). Файл fudlist.txt можно конвертировать в dirlist.txt. Для
этого переименуйте:
fudlist.txt -> fud2dir.txt (или просто fud2dir) для перезаписи dirlist.txt
fudlist.txt -> fud4dir.txt (или просто fud4dir) для добавления к dirlist.txt
и запустите WInst.
Предупреждение установщика о невозможности использовать раздел VHD для установки
Windows нужно игнорировать.
Опция "Fix boot":
* MBR/PBR (PBR) - обновить только загрузочные записи.
* MBR/PBR + update BCD - обновить загрузочные записи и BCD.
* Advanced Boot Options - включить при загрузке меню "Advanced Boot Options".
- для раздела "WINDOWS" обновляется загрузочная запись раздела;
- для раздела "BOOTLOADER" обновляется загрузочная запись раздела и MBR диска,
содержащего раздел "BOOTLOADER";
- после применения "Advanced Boot Options" в корне раздела "WINDOWS" создаётся
файл "AdvBootOpt_off.cmd" для отключения опции.
При интеграции драйверов средствами WInst в папке "\Windows\Temp" целевой системы
создаётся файл "WInst_Add_Drivers.bak", содержащий список драйверов, установленных
до интеграции. Таким образом, откат установленных драйверов - это удаление всех
драйверов, которых нет в данном списке.
Опции установки
~~~~~~~~~~~~~~~
Дистрибутив - переключение вида "версия/путь"
Папка $OEM$ - может располагаться в трех местах: ПД, ОП, WInstall. Соответственно,
будет отображаться как: $OEM$, ..\$OEM$, _WInst_\$OEM$
Если существуют все три варианта, нужный можно выбрать вручную.
Файл ответов - аналогично папке $OEM$. Будет отображаться как:
unattend.xml, ..\unattend.xml, _WInst_\unattend.xml
В папках ОП и WInstall может быть несколько файлов с расширением xml,
нужный можно выбрать вручную.
Установщик - Если в ПД существует setup.exe, то он будет предложен для запуска.
Выбрать встроенный setup.exe можно вручную.
Если в файле настроек определены переменные "setup_x86.exe" и/или
"setup_x64.exe", содержащие путь к setup.exe распакованного комплекта
установки, то именно этот комплект будет использован в качестве
встроенного установщика.
Проверка целостности - перед установкой будет запущена проверка установочного файла.
Перезагрузка - можно отменить перезагрузку после установки или развёртывания
дистрибутива.
Лицензия EI.cfg - переключение между Volume/Retail
Выбор языка - язык установки берётся из первого индекса дистрибутива или
может быть выбран вручную.
Выбор Winsetup.dll - по умолчанию "прямой". Если в процессе установки появляется
ошибка "Не найдено лицензионное соглашение", то можно сменить
на "обратный".
4. Развёртывание
-------------
Суть развёртывания состоит в:
- распаковке файла дистрибутива на раздел жёсткого диска (или в контейнер VHD)
- добавлении нового пункта в меню загрузки Windows (или создании этого меню)
Порядок действий:
1. Выбрать раздел, куда будет распакован дистрибутив;
2. Выбрать раздел, где находится (или будет создан) загрузчик;
3. Выбрать тип загрузки.
Разделы должны иметь файловую систему (нельзя использовать RAW)
Окно выбора раздела для распаковки дистрибутива содержит в "шапке" [ WINDOWS = ... ]
- если на разделе уже есть Windows, то будет предложено отформатировать раздел
Окно выбора раздела для установки загрузчика содержит в "шапке" [ BOOTLOADER = ... ]
- можно не устанавливать/не изменять загрузчик
Тип загрузки может быть:
* ALL - загружать систему и в режиме BIOS, и в режиме UEFI
* BIOS - загружать систему только в режиме BIOS
* UEFI - загружать систему только в режиме UEFI
Опции развёртывания
~~~~~~~~~~~~~~~~~~~
New BCD - создать новый файл конфигурации BCD (вместо добавления новой записи в
существующую конфигурацию) и обновить файлы загрузчика.
Drivers - операции с драйверами после выполнения развёртывания.
Reboot - перезагрузка после завершения развёртывания.
Операции с драйверами:
* Добавление - выбрать папку с распакованными драйверами, которые будут
интегрированы в развёрнутую Windows. Дополнительно папка может
содержать установочные пакеты Windows (файлы с расширением ".msu"
или ".cab"), которые также будут интегрированы.
* Удаление - удалить все сторонние драйверы из развёрнутой Windows.
* Удаление+добавление - комбинация предыдущих пунктов.
5. Состав:
------
docs - папка с файлами справки.
packs - папка с комплектами установки и вспомогательными утилитами.
schemes - папка со сценариями diskpart для "Предварительной разметки диска".
WInst.cmd - файл запуска.
Опционально:
~~~~~~~~~~~
dirlist.txt - список ОП и ПД для поиска по "классическому" варианту.
settings.txt - файл настроек для изменения значений параметров, используемых
по умолчанию.
WInstall - папка для размещения общих $OEM$, unattend.xml и ПД для "портативного"
варианта расположения ПД.
6. Примечания
----------
- предназначено для запуска:
* для установки через setup.exe: из-под WinPE 7-10 x86/x64
* для установки через развёртывание: из-под Win7-10 x86/x64 и WinPE 7-10 x86/x64
- поиск папок из dirlist.txt и файлов из fudlist.txt производится по всем дискам
- в случае "произвольного" расположения ПД, также можно пользоваться общими $OEM$ и
unattend.xml из папки WInstall
- при "Развёртывании" и "Техническом обслуживании" создаются резервные копии файла
конфигурации BCD в папках "\Boot\{WInst}.bak" и "\EFI\Microsoft\Boot\{WInst}.bak"
для BIOS и UEFI соответственно.
Формат файла описания:
- кодировка WIN-1251
- имя файла описания = имя установочного файла + расширение "txt"
Например: "install.esd.txt"
- содержание:
* первая строка - описание самой установки
* следующие строки - описания редакций (необязательно) в формате "N=Title"
Например, содержимое "install.esd.txt":
Windows 7 SP1 (x86-x64) Russian
1=Windows 7 (x86) Максимальная
2=Windows 7 (x86_64) Максимальная
7=Windows 7 (x86) Домашняя базовая
8=Windows 7 (x86_64) Домашняя базовая
При развёртывании редакции, для которой есть описание в файле описания, новый пункт
в меню загрузки Windows будет называться как описание редакции, а не стандартно
"Windows 7" или "Windows 10". Если такая редакция будет развёрнута на одном ПК
несколько раз, то к названию будет добавляться индекс [N], где N=2,3 и.т.д.

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

    Установщик Windows (ver. 10.0.10586) взят из комплекта WinSetup2k10 от korsak7 с добавлением всех языковых пакетов.

Благодарности

    dimo70 за тестирование и выявление всякого.
    goga8686 за тестирование и видеролик про "Развёртывание".
    BalAngel за английские переводы файлов справки и настроек.
    Всем камрадам, кто принимал участие в тестировании и подкидывал идеи.

Видеоролики

Развёртывание
DriverPack для 7/8.1/10
NVMe/SATA-RAID/USB3
Загрузить WInst


Последний раз редактировалось: Ander_73 (2021-07-31 22:25), всего редактировалось 33 раз(а)

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Ander_73,
Протестировал FullInstPrep. Заметил только одна проблема. В dirlist.txt стоит \distro . Тем не менее исчет дистро повсюду.
Иначе пока других проблем не установил.

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
60223Тем не менее исчет дистро повсюду
Хотел сказать "выражайся по-русски", потом как-то передумал... ag
1. Папку \distros ищет по ВСЕМ дискам, это и в readme написано
2. Если папка \distros пуста, то включается общий поиск по всем дискам и папкам вообще, это и в readme написано. Ты положи в \distros хотя бы один дистрибутив (по всем правилам, разумеется) - и никаких общих поисков больше не будет.
... или конкретизируй вопрос, плз.

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Сегодня сделал флешку с FullInstPrep. Все нормально прошло. Загружает быстро. В дистро установил через FullInstPrep Windows 10 1809 BG.
Как ядро для установки флешки проект очень понравился. Ничего лишнего, быстрая загрузка. Работает нормально.
Тоже из меню Extras пункт explorer++, HDDARTs и memtest установил.
Что хотел сказать еще:
1. Проблема если например закрою окно explorer++ или Tоtal Commander. Потом не знаю как открыть сного.
2. Можно в меню Extras кроме explorer++ добавить возможность установить наиболее важный системный софт. Программы как например:
для проверки диска CrystalDiskInfo (есть 32 и 64 бита разрядность), для разделов например Partition Wizzard и другие.
3. Было бы хорошо если можно загружать другие ESD файлы и на английский язык. Я например скопировал все из папки sources на Windows_7-10_08.12.2018.iso Сергея Свирида (пользую их сейчас). Когда пробовал загрузку только руский язык доступен. Если через 78setup сделать, то там больше языков и английский доступен. Но думаю лишно ето пользоватся 78setup, при чем ваш инсталер думаю лучше и пользоватся им проще.
4. Возможно сделать пункт при добавлении дистро, чтоб было легче добавлять свои торент или линкс. Знаю что ето мозможно сделать ручками, но может быть есть возможность сделать етот процесс проще.
Иначе все отлично получается. aa

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
60244если например закрою окно explorer++ или Tоtal Commander. Потом не знаю как открыть сного.
Никак. Окно Explorer++ "болтается" внизу просто для удобства. Основная функция комплекта - установка/развёртывание Windows.
60244добавить возможность установить наиболее важный системный софт
Ты сам не можешь записать на флешку нужный софт? Заметь, нужный именно для тебя.
Насчет языка. Скрипт анализирует первый индекс и по нему выставляет язык. Если нужен иной язык, его можно выбрать руками. Почитай, наконец, readme.
60244сделать пункт при добавлении дистро, чтоб было легче добавлять свои торент или линкс. Знаю что ето мозможно сделать ручками, но может быть есть возможность сделать етот процесс проще.
Предполагается, что скачанный файл - это дистриб Виндовс. В нём ищется файл Sources\install.wim, который можно перепаковать в ESD. Каким боком тут линукс?

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Ander_73,
Проект по моему работает замечательно, как вы сказали установка/развертывание Windows.
Но "никак" ето не ответ. Можно например подумать, что можно сделать. Ну например если нажать на "Переключить режим отображения версия/путь", чтоб запускался сного. Если я мог, сказал бы как именно, то сделал ето сам. ab
Да, насчет языка все так. Получилось. Пробовал.
Ну хорошо, софт добавлю сам. Позаимствовал из MInst Стрелца. Там есть кое какие программы работают.
Имел в виду не "линукс", а чтоб через меню ставить свои торенты и Links. Линукс тут не причем. ab
А я все ето пишу, не для того, что искать проблемы в проект, а наоборот, потому что хочу помочь сделать проект доступный и удобный для каждого, даже для таких "умных" как я. ap
aa
PS: Если в shell загрузить Run-Command 3.15, то она не закрывается и можно всегда запустить с Win key+R aa Так что решил ету проблему.

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
60246Но "никак" ето не ответ. Можно например подумать, что можно сделать.
Даже не собираюсь ab
Ещё раз. Комплект - для установки Windows. Для запуска разнообразного софта существует куча сборок, "заточенных" именно для запуска софта.
Explorer (TotalCmd или что там прописано в shell.txt) "болтается" внизу на всякий случай. Если ты в него полез, значит этот случай произошёл.
60246а чтоб через меню ставить свои торенты и Links
Скачай нужный файл-торрент и положи в папку torrents. Какое ещё меню?
60246не для того, что искать проблемы в проект
Сейчас ты пытаешься сделать из инструмента по установке Винды универсальную сборку. И это действительно проблема ab

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Сейчас ты пытаешься сделать из инструмента по установке Винды универсальную сборку. И это действительно проблема ab
Ето не проблема. Разве не нужно именно универсальная сборка каждому из нас?
Подтверждаю все работает сейчас нормально. Сборка универсальна и справляется со всеми языками. Кроме того быстрее и легче по сравнению с других.
Большое спасибо! Професиональная работа как всегда! aa
PS: Run-Command 3.15 как шел вполне устраивает.


Последний раз редактировалось: dimo70 (2018-12-19 17:52), всего редактировалось 1 раз

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    korsak7
  • 107
  • Стаж: 9 лет 4 месяца
  • Сообщений: 1082
  • Репутация:62

    [+] [-]
именно универсальная сборка
это утопия, свойственная теоретикам.

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
60250Разве не нужно именно универсальная сборка каждому из нас?
Конечно нужна! Но я не умею их делать ab

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
korsak7,
А разве 2k10 не универсальная сборка? Я думаю да.
У Ander_73 получилось очень быстро и хорошо ето. Только нужно кое что еще сделать.
Ander_73,
Ето не так что не умеете, даже наоборот. Я думаю проект FullInstPrep замечательный. ab
Может быть очень скоро буду пользоваться только им.

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Ander_73,
Все работает нормально. Уже десятку ноутбуков с Windows 7 и Windows 10 на бг и ен переставил, проблем не было и делает все быстро.
Както с дополнительных программ и запуска через Shell.txt разобрался. Только один вопрос остался и не могу решить.
Можно запустить автоматически несколько программ через Shell.txt или как то по другому надо ето сделать? bc
Например хочу с запуском чтоб загружались CrystalDiskInfo, Run-command и т.д.

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
dimo70, напиши бат-ник. Типа:
\Programs\run.cmd
start \Programs\Crystal\CrystalDiskInfo
start \Programs\RunCmd\Run-command

И пропиши в shell.txt:
cmd /c "\Programs\run.cmd"
При запуске одновременно запустятся три программы: сам WInst и две из бат-ника (или сколько ты там пропишешь).
* (пути к файлам и названия программ я придумал, подставь свои, правильные)

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Ander_73,
Спасибо большое за помощь. az aa

_________________
Подпись отключена за нарушение правил форума

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3603
  • Репутация:127

    [+] [-]
dimo70, я сейчас соседний проект развиваю: Multi-loaders flash. Там WInst идёт как аддон ag

[Цитировать]

    dimo70
  • 17296
  • Стаж: 6 лет 4 месяца
  • Сообщений: 3990
  • Репутация:26

    [+] [-]
  • Откуда: BG
Сделал батник для автозапуска и все заработало класно сейчас. ay
60348dimo70, я сейчас соседний проект развиваю: Multi-loaders flash. Там WInst идёт как аддон ag
Ну ничего, я потом перейду на Multi-loaders flash. af Етот проект FullInstPrep пока нравится. Быстро, универсально и без многих лишних движении...

_________________
Подпись отключена за нарушение правил форума

Страница 15 из 44


Показать сообщения:    

Текущее время: 19-Апр 11:03

Часовой пояс: UTC + 3


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