Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Новый участник


Сообщения: 35
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Indester:
Доброго времени суток!
Подскажите пожалуйста, есть ли способ сделать универсальный файл автоответов Windows 10 для Legacy BIOS и UEFI? Или под каждый тип загрузки нужен свой файл автоответов? »
Спустя много лет, может вам или кому-либо ещё актуально:
Можно сделать установку Win10-11Pro для Legacy BIOS или UEFI из одного дистрибутива, но с помощью файла ответов и cmd-скриптов. Принцип такой:
  1. Правите файл ответов Autounattend.xml под себя
  2. В корень ISO-образа добавляется(например, через утилиту UltraISO) файл Autounattend.xml, format-MBR.txt, format-UEFI.txt, mbr_gpt_tpm.cmd и, если необходимо - по корневому пути \sources\$OEM$\$$\setup\scripts кладётся cmd-файл с командами, которые будут исполнены при первом входе пользователя в ОС - например, настройка файрволла или silent-установка каких-либо программ
  3. Новый образ сохраняется(можно также через UltraISO) и разворачивается через виртуальную машину(ВМ) или на физической машине, как вам необходимо.
  4. Если этот образ будет разворачиваться в ВМ на старый тип систем(с Legacy BIOS), то тип контроллера для диска нужно выбирать IDE. Например, в MS Hyper-V при выборе контроллера SCSI установка ОС валится на ошибке невозможности установки диск с таким контроллером. В ВМ, настроенной на UEFI-режим такой проблемы нет.

Autounattend.xml

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
<settings pass="windowsPE">
<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<SetupUILanguage>
<UILanguage>en-US</UILanguage>
</SetupUILanguage>
<InputLocale>0409:00000409</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UserLocale>en-US</UserLocale>
</component>
<component name="Microsoft-Windows-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<UserData>
<ProductKey>
<!-- Здесь прописывается ключ под необходимую редакцию ОС. Это необходимо в том случае, если данная ОС будет вводится в домен для её автоматической активации -->
<Key>W269N-WFGWX-YVC9B-4J6C9-T83GX</Key>
</ProductKey>
<AcceptEula>true</AcceptEula>
</UserData>
<RunSynchronous>
<RunSynchronousCommand wcm:action="add">
<Order>1</Order>
<!-- Этот исполняемый файл запускается первым делом после загрузки установщика ОС и переразбивает имеющегося диска в зависимости от типа BIOS: Legacy BIOS или UEFI -->
<Path>cmd /q /c "FOR %i IN (C D E F G H I J K L N M O P Q R S T U V W X Y Z) DO IF EXIST %i:\mbr_gpt_tpm.cmd cmd /k %i:\mbr_gpt_tpm.cmd"</Path>
</RunSynchronousCommand>
</RunSynchronous>
<ImageInstall>
<OSImage>
<InstallFrom>
<MetaData wcm:action="add">
<Key>/IMAGE/INDEX</Key>
<!-- Здесь необходимо правильно указать индекс ОС
цифра 6 - является индексом для выбора редакции Windows 10 Pro ENG
цифра 4 - является индексом для выбора редакции Windows 10 Pro RUS
чтобы узнать необходимый номер редакции для других версий, используйте команду:
Dism /Get-WimInfo /WimFile:<path_to_install.wim>
-->
<Value>6</Value>
</MetaData>
</InstallFrom>
<InstallTo>
<DiskID>0</DiskID>
<PartitionID>3</PartitionID>
</InstallTo>
</OSImage>
</ImageInstall>
</component>
</settings>
<settings pass="specialize">
<component name="Microsoft-Windows-Deployment" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<RunSynchronous>
<RunSynchronousCommand wcm:action="add">
<Order>2</Order>
<Path>%windir%\system32\net.exe accounts /lockoutthreshold:0</Path>
</RunSynchronousCommand>
</RunSynchronous>
</component>
<component name="Microsoft-Windows-TerminalServices-LocalSessionManager" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<fDenyTSConnections>false</fDenyTSConnections>
</component>
</settings>
<settings pass="oobeSystem">
<component name="Microsoft-Windows-International-Core" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<InputLocale>0409:00000409</InputLocale>
<SystemLocale>en-US</SystemLocale>
<UILanguage>en-US</UILanguage>
<UserLocale>en-US</UserLocale>
</component>
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
<UserAccounts>
<LocalAccounts>
<LocalAccount wcm:action="add">
<Name>admin</Name>
<Group>Administrators</Group>
<Password>
<Value>MQBQAGEAcwBzAHcAbwByAGQA</Value>
<PlainText>false</PlainText>
</Password>
<DisplayName>admin</DisplayName>
</LocalAccount>
</LocalAccounts>
</UserAccounts>
<OOBE>
<ProtectYourPC>3</ProtectYourPC>
<HideEULAPage>true</HideEULAPage>
<HideWirelessSetupInOOBE>true</HideWirelessSetupInOOBE>
</OOBE>
<TimeZone>Novosibirsk Standard Time</TimeZone>
<AutoLogon>
<Password>
<Value>MQBQAGEAcwBzAHcAbwByAGQA</Value>
<PlainText>false</PlainText>
</Password>
<Enabled>true</Enabled>
<LogonCount>1</LogonCount>
<Username>admin</Username>
</AutoLogon>
<FirstLogonCommands>
<SynchronousCommand wcm:action="add">
<CommandLine>netsh advfirewall firewall set rule group="remote desktop" new enable=Yes</CommandLine>
<Order>1</Order>
<RequiresUserInput>false</RequiresUserInput>
</SynchronousCommand>
<SynchronousCommand wcm:action="add">
<Order>4</Order>
<RequiresUserInput>false</RequiresUserInput>
<!-- После первого входа в ОС автоматически запустится данный файл, который скопируется сюда из папки sources\$OEM$\$$\setup\scripts, если мы туда его положили -->
<CommandLine>cmd /C C:\Windows\Setup\Scripts\FirstStep.cmd</CommandLine>
</SynchronousCommand>
<SynchronousCommand wcm:action="add">
<Order>10</Order>
<CommandLine>cmd /C wmic useraccount where name="admin" set PasswordExpires=false</CommandLine>
</SynchronousCommand>
<SynchronousCommand wcm:action="add">
<CommandLine>reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System" /v EnableFirstLogonAnimation /t REG_DWORD /d 0 /f</CommandLine>
<Order>2</Order>
<RequiresUserInput>false</RequiresUserInput>
</SynchronousCommand>
<SynchronousCommand wcm:action="add">
<CommandLine>reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Policies\System" /v EnableFirstLogonAnimation /t REG_DWORD /d 0 /f</CommandLine>
<Order>3</Order>
</SynchronousCommand>
</FirstLogonCommands>
</component>
</settings>
<cpifflineImage cpi:source="wim:d:/w10pro_22h2_x64_en/sources/install.wim#Windows 10 Pro" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>

mbr_gpt_tpm.cmd

wpeinit && echo wpeinit
powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

for %%A in (D E F G H I J K L M N O P Q R S T U V W X Y Z) do if exist %%A:\format-MBR.txt set DRIVE=%%A
wpeutil UpdateBootInfo > NUL && echo wpeutil UpdateBootInfo
for /f "tokens=2* delims= " %%A in ('reg query HKLM\System\CurrentControlSet\Control /v PEFIRMWAREType') do set FIRMWARE=%%B
if %FIRMWARE%==0x1 (diskpart /s %DRIVE%:\format-MBR.txt) else (diskpart /s %DRIVE%:\format-UEFI.txt)

rem == Команда ниже отключает проверку в Windows 11 по совместимости оборудования с самой ОС
cmd /c for %%a in (CPU TPM RAM SecureBoot Storage) do reg add HKLM\SYSTEM\Setup\LabConfig /t REG_DWORD /v Bypass%%aCheck /d 1 /f
cmd /c schtasks /Delete /TN Microsoft\Windows\CloudExperienceHost\CreateObjectTask /F
exit

format-MBR.txt

rem == CreatePartitions-BIOS.txt ==
rem == These commands are used with DiskPart to
rem create three partitions
rem for a BIOS/MBR-based computer.
rem Adjust the partition sizes to fill the drive
rem as necessary. ==
select disk 0
clean
rem == 1. System partition ======================
create partition primary size=100
format quick fs=ntfs label="System"
assign letter="S"
active

rem == 2. Dummy partition =====================
create partition primary size=100
set id = 17 override
rem == 3. Windows partition =====================
rem == a. Create the Windows partition =======
create partition primary
rem == b. Create space for the recovery tools
rem ** Update this size to match the size of
rem the recovery tools (winre.wim)
rem plus some free space.
shrink minimum=500
rem == c. Prepare the Windows partition ======
format quick fs=ntfs label="OS"
assign letter="W"
rem == 4. Recovery partition ====================
create partition primary
format quick fs=ntfs label="Recovery image"
assign letter="R"
set id=27
list volume
exit

format-UEFI.txt

rem == CreatePartitions-UEFI.txt ==
rem == These commands are used with DiskPart to
rem create four partitions
rem for a UEFI/GPT-based PC.
rem Adjust the partition sizes to fill the drive
rem as necessary. ==
select disk 0
clean
convert gpt
rem == 1. System partition =========================
create partition efi size=100
rem ** NOTE: For Advanced Format 4Kn drives,
rem change this value to size = 260 **
format quick fs=fat32 label="System"
assign letter="S"
rem == 2. Microsoft Reserved (MSR) partition =======
create partition msr size=16
rem == 3. Windows partition ========================
rem == a. Create the Windows partition ==========
create partition primary
rem == b. Create space for the recovery tools ===
rem ** Update this size to match the size of
rem the recovery tools (winre.wim)
rem plus some free space.
shrink minimum=500
rem == c. Prepare the Windows partition =========
format quick fs=ntfs label="OS"
assign letter="W"
rem === 4. Recovery partition ======================
create partition primary
format quick fs=ntfs label="Recovery"
assign letter="R"
set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
gpt attributes=0x8000000000000001
list volume
exit

Отправлено: 13:00, 21-03-2024 | #1727