Установка Windows Vista в unattended (автоматическом) режиме

Установка обновлений (updates)

Несомненно, установка обновлений это важный этап в развертывании любой операционной системы.

Здесь я буду производить установку следующих обновлений

Обновление Название Имя файла
KB929761 When you run Wusa.exe together with the /quiet option to try to install certain software packages on a Windows Vista-based computer, the installation fails Windows6.0-KB929761-x86.msu
KB929615 You may not receive audio in the desired language when you use Windows Media Center to view television in Windows Vista Windows6.0-KB929615-x86.msu
KB929762 You receive a Stop 0x9F error when you wake a Windows Vista-based computer that is connected to an IEEE 1394-based device Windows6.0-KB929762-x86.msu
KB929763 Version 5.00 of the Mongolian Baiti font may be displayed incorrectly in Windows Vista Windows6.0-KB929763-x86.msu
KB930163 In Windows Vista, you cannot access any resources on a remote VPN server after you switch a network connection from one network adapter to another network adapter and then dial a VPN connection Windows6.0-KB930163-x86.msu
KB928089 The computer may respond very slowly as the Phishing Filter evaluates Web page contents in Internet Explorer 7 Windows6.0-KB928089-x86.msu
KB929427 The Windows Vista Application Compatibility Update Windows6.0-KB929427-x86.msu
KB925528 Reliability update for the USB stack in Windows Vista Windows6.0-KB925528-x86.msu
KB929685 A high definition audio device may no longer work after you resume Windows Vista from sleep or from hibernation and then restart the computer Windows6.0-KB929685-x86.msu
KB931573 You may be prompted to activate Windows Vista on a computer on which Windows Vista activation was not previously required Windows6.0-KB931573-x86.msu
KB929735 You may not find the file that you want when you use Advanced Search to search by date and you use a non-Gregorian calendar format in Windows Vista Windows6.0-KB929735-x86.msu
KB929777 Error message when you try to install Windows Vista on a computer that uses more than 3 GB of RAM: "STOP 0x0000000A" Windows6.0-KB929777-v2-x86.msu
KB930857 An update is available for Windows Error Reporting in Windows Vista to make sure that problem reports are sent only after you have granted permission Windows6.0-KB930857-x86.msu
KB930955 Moveuser.exe is incompatible with Windows Vista and is replaced by the new Win32_UserProfile WMI functionality Windows6.0-KB930955-x86.msu
RB929451 A client computer that is running Windows Vista registers an old IP address when the GUID of a network adapter changes Windows6.0-KB929451-x86.msu

Запускаю Windows System Image Manager (Windows SIM). Теперь необходимо создать дистрибутивный общий ресурс (Distribution Share) для этого в меню Tools выбираю Create Distribution Share. В появившемся окне указываю расположение дистрибутивного общего ресурса (Distribution Share), в моем случаи это C:\DISTRIBS (Рисунок 4).

Теперь настало время подготовить пакеты обновлений. Для этого их сначала необходимо разархивировать. Сделать это можно командой expand /F:* <имя файла MSU> <директория назначения>. Но их много и поэтому я создал командный файл extupd.cmd для упрощения этой задачи.

set src=%1
set dest=%2
mkdir %dest%
for %%i in (%src%\*.msu) do ( 
expand /F:* %%i %dest%
del /Q %dest%\*.txt
del /Q %dest%\WSUSSCAN.cab
)
		

Если запустить этот файл командой extupd.cmd d:\downloads c:\updates, то он извлечет файлы *.msu из каталога d:\downloads в каталог c:\updates при этом удалив ненужные файлы *.txt и wsusscan.cab.

Извлеченные обновления теперь необходимо поместить в дистрибутивный общий ресурс (Distribution Share). Для этого в Windows System Image Manager (Windows SIM) нажимаю Tools выбираю Import Packages. Далее выбираю директорию c:\updates, выделяю все обновления и нажимаю кнопку Open. В результате экран программы Windows System Image Manager (Windows SIM) примет вид изображенный на рисунке 5. Для того чтобы программа установки Windows Vista узнала, что необходимо установить пакеты обновлений необходимо в панели Distribution Share нажать правую кнопку мыши на Packages и выбрать Add to Answer File. После выполнения этой операции информация о всех обновления станет доступна во время установки Windows Vista (Рисунок 6).

Теперь осталось сформировать набор конфигурации (configuration set), нажимаю Tools и выбираю Create Configuration Set. В появившемся окне в поле Select the target folder for the configuration set указываю C:\2DVD (Рисунок 7). После всех вышеперечисленных действий в каталоге 2DVD (Рисунок 8) будет содержать файлы и каталоги необходимые для автоматической установки Windows Vista вместе с обновлениями в том числе и файл ответов autounattend.xml.

<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
    <servicing>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB930955" version="6.0.1.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\HotFix\x86_Package_1_for_KB930955_6.0.1.0_neutral_31bf3856ad364e35_\Windows6.0-KB930955-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB925528" version="6.0.1.2" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB925528_6.0.1.2_neutral_31bf3856ad364e35_\Windows6.0-KB925528-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929615" version="6.0.1.1" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929615_6.0.1.1_neutral_31bf3856ad364e35_\Windows6.0-KB929615-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929685" version="6.0.1.1" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929685_6.0.1.1_neutral_31bf3856ad364e35_\Windows6.0-KB929685-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929735" version="6.0.1.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929735_6.0.1.0_neutral_31bf3856ad364e35_\Windows6.0-KB929735-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929761" version="6.0.1.1" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929761_6.0.1.1_neutral_31bf3856ad364e35_\Windows6.0-KB929761-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929762" version="6.0.1.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929762_6.0.1.0_neutral_31bf3856ad364e35_\Windows6.0-KB929762-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929763" version="6.0.1.1" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929763_6.0.1.1_neutral_31bf3856ad364e35_\Windows6.0-KB929763-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929777" version="6.0.2.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB929777_6.0.2.0_neutral_31bf3856ad364e35_\Windows6.0-KB929777-v2-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB930163" version="6.0.1.1" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB930163_6.0.1.1_neutral_31bf3856ad364e35_\Windows6.0-KB930163-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB930857" version="6.0.1.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB930857_6.0.1.0_neutral_31bf3856ad364e35_\Windows6.0-KB930857-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB931573" version="6.0.1.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_1_for_KB931573_6.0.1.0_neutral_31bf3856ad364e35_\Windows6.0-KB931573-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_for_KB928089" version="6.0.1.1" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_for_KB928089_6.0.1.1_neutral_31bf3856ad364e35_\Windows6.0-KB928089-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_for_KB929427" version="6.0.1.10" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\Update\x86_Package_for_KB929427_6.0.1.10_neutral_31bf3856ad364e35_\Windows6.0-KB929427-x86.cab" />
        </package>
        <package action="install">
            <assemblyIdentity name="Package_1_for_KB929451" version="6.0.1.0" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" />
            <source location="%configsetroot%\AutoUnattend_Files\distribs\Packages\HotFix\x86_Package_1_for_KB929451_6.0.1.0_neutral_31bf3856ad364e35_\Windows6.0-KB929451-x86.cab" />
        </package>
    </servicing>
    <settings pass="windowsPE">
        <component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <SetupUILanguage>
                <UILanguage>en-US</UILanguage>
            </SetupUILanguage>
            <InputLocale>0409:00000409;0419:00000419</InputLocale>
            <LayeredDriver>1</LayeredDriver>
            <SystemLocale>ru-RU</SystemLocale>
            <UILanguage>en-US</UILanguage>
            <UILanguageFallback>en-US</UILanguageFallback>
            <UserLocale>ru-RU</UserLocale>
        </component>
        <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <DiskConfiguration>
                <WillShowUI>Always</WillShowUI>
            </DiskConfiguration>
            <UserData>
                <ProductKey>
                    <Key>12345-12345-12345-12345-12345</Key>
                    <WillShowUI>OnError</WillShowUI>
                </ProductKey>
                <AcceptEula>true</AcceptEula>
            </UserData>
            <UseConfigurationSet>true</UseConfigurationSet>
        </component>
    </settings>
    <settings pass="specialize">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <ComputerName>*</ComputerName>
        </component>
    </settings>
    <settings pass="oobeSystem">
        <component name="Microsoft-Windows-Shell-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <OOBE>
                <ProtectYourPC>1</ProtectYourPC>
            </OOBE>
            <TimeZone>Russian Standard Time</TimeZone>
            <UserAccounts>
                <LocalAccounts>
                    <LocalAccount wcm:action="add">
                        <Name>user</Name>
                        <Group>Administrators</Group>
                        <Password>
                            <Value>UABhAHMAcwB3AG8AcgBkAA==</Value>
                            <PlainText>false</PlainText>
                        </Password>
                    </LocalAccount>
                </LocalAccounts>
            </UserAccounts>
        </component>
    </settings>
    <cpi:offlineImage cpi:source="catalog://192.168.200.1/work/vista/install_windows vista ultimate.clg" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>

		

Для установки необходимо записать содержимое каталога 2DVD в корень инсталляционного диска Windows Vista.

P.S. Есть вопросы и замечания? Давайте обсудим на форуме.