Автоустановка обновлений это удобно, но можно создать дистрибутив с уже интегрированными обновлениями, и дополнительно сэкономить время при установке системы. Мне известны два способа интеграции:
- С помощью DISM (встроена в Windows 7)
- C помощью ImageX (входит в состав WAIK)
Оба способа расписаны в Интернете с разной степенью подробности, вкратце суть первого - пакеты обновлений интегрируются напрямую в установочный образ, второго - обновления устанавливаются на тестовой системе, с которой впоследствии снимается образ.
Метод DISM выглядит более простым в реализации, но к сожалению, не даёт 100% гарантии установки всех обновлений (например, нельзя интегрироать NET Framework).
Остаётся метод ImageX, который помимо обновлений также позволяет интегрировать любые приложения (кроме тех, которые имеют собственные драйверы: антивирусы, эмуляторы дисководов и т.п.). Этот метод будет рассмотрен в статье пошагово.
Что нам понадобится:
Этап I. Подготовка WAIK
Установим VMware Workstation 12 Pro, триальную версию. WAIK рекомендуется запускать на системе с архитектурой x86, поскольку моя рабочая система x64, я буду использовать виртуальную x86.
Создадим виртуальную машину (ВМ) Windows 7 x86, назовём её WAIK
Настроим оптический привод ВМ - эмулятор (можно и физический или ISO-файл).
Вставляем дистрибутив Windows 7 x86 в "дисковод" и устанавливаем по умолчанию
Установим виртуальные драйверы
Подключим папку для обмена с хост-машиной, папку назовём Share
Установим пакет WAIK на виртуальную машину
Этап II. Подготовка WinPE
WinPE -
Windows Preinstallation Environment это среда предустановки - минимальная версия операционной системы, предназначенная для установки полной версии. Для работы с x86 и x64 версиями ОС понадобятся две версии WinPE.
Запустим ВМ с установленным WAIK.
Запустим Командную строку средств развертывания от имени администратора.
Совет: для того, чтобы не набирать текст в командной строке, выделите его, скопируйте и вставьте в окно виртуальной машины ПКМ "вставить"
Создадим рабочую папку x86:
Скопируем загрузочный образ:
copy c:\winpe\winpe.wim c:\winpe\ISO\sources\boot.wim
Скопируем утилиту ImageX в корень будущего диска:
copy "c:\Program Files\Windows AIK\Tools\x86\imagex.exe" c:\winpe\ISO\
Запишем команду захвата образа на наш будущий диск в виде текстового файла, чтобы потом не набирать. Команда будет такая:
e:\imagex /capture d: d:\install.wim "Windows 7 ULTIMATE" "Windows 7 ULTIMATE (x86) Upd" /compress maximum /boot /verify
Захватить образ диска D:, записать на диск D: в файл install.wim, имя образа, описание образа, сжатие максимальное, образ загрузочный, проверить при создании.
*При установке по умолчанию, Windows создаёт скрытый раздел, при загрузке в WinPE он получит букву C:, системный получит букву D:
Соберем загрузочный диск WinPE:
oscdimg -n -bc:\winpe\etfsboot.com c:\winpe\ISO c:\winpe\winpe.iso
Теперь проделаем тоже самое для x64 версии:
Создадим рабочую папку x64:
Скопируем загрузочный образ:
copy c:\winpe64\winpe.wim c:\winpe64\ISO\sources\boot.wim
Скопируем утилиту ImageX в корень диска:
copy "c:\Program Files\Windows AIK\Tools\amd64\imagex.exe" c:\winpe64\ISO\
Запишем команду захвата образа в текстовый файл
e:\imagex /capture d: d:\install.wim "Windows 7 ULTIMATE" "Windows 7 ULTIMATE (x64) Upd" /compress maximum /boot /verify
Соберем загрузочный диск WinPE x64:
oscdimg -n -bc:\winpe64\etfsboot.com c:\winpe64\ISO c:\winpe64\winpe64.iso
Теперь скопируем оба образа в папку Share:
Можно закрыть все окна и завершить работу ВМ "WAIK"
Этап III. Подготовка и захват установочного образа
Этот этап будем рассматривать на примере x86. Для x64 все действия будут идентичны.
Создадим новую ВМ Windows 7 x86, назовём её Tune86 - настроечная.
Загрузим ВМ в BIOS и установим приоритет загрузки с оптического привода:
Вставим исходный дистрибутив Windows в "дисковод" и установим ОС с настройками по умолчанию до экрана приветствия:
Ничего не набираем, нажимаем сочетание CTRL+SHIFT+F3 - система перезагрузится в режиме аудита, появится окно sysprep. Это окно НЕ ЗАКРЫВАЕМ во время последующих операций! Драйверы VMware устанавливать не нужно.
Скачиваем и устанавливаем обновления, как написано в
этой статье.
*Чтобы скопировать папку в виртуальную машину, можно использовать флешку (попеременно подключая её к ВМ и к хосту), или записать в ISO-образ.
Когда обновления будут установлены, можно дополнительно установить нужные вам приложения. После установки нужно будет очистить системный диск от ненужных файлов (пакетов обновлений, дистрибутивов программ и т.д.), также можно запустить программу "Очистка диска" и дополнительно освободить место.
НЕ РЕКОМЕДУЮ запускать Центр обновления Windows и устанавливать самые свежие, это может привести к очень долгому поиску обновлений при последующей установке с захваченного образа!
Совет: можно заархивировать папку с файлами настроечной ВМ, на случай ошибки при захвате или для возможности внесения изменений.
Теперь нужно настроить sysprep на подготовку к использованию, и завершить работу.
После подготовки система не должна ЗАГРУЖАТЬСЯ ДО ЗАХВАТА образа!
Вставим winpe.iso в эмулятор (для захвата x64 системы понадобится winpe64.iso) и загрузимся с него. Важно не пропустить сообщение "Press any key...", иначе загрузится подготовленная система!
Запустим Блокнот из командной строки
Проверим буквы дисков: C: "зарезервировано системой" D: системный диск Windows (его будем захватывать и на него же писать образ), X: RAM-диск с образом WinPE, E: оптический дисковод.
Теперь найдём наш текстовик с командой в корне диска E:, скопируем команду и вставим в командную строку:
Захват образа займет примерно 30 минут.
После захвата нужно выключить настроечную ВМ через меню VMware.
Теперь нам нужно скопировать захваченный install.wim в ВМ WAIK. Для этого подключим виртуальный диск одной машины к другой в режиме чтения:
Этап IV. Сборка дистрибутива
Запустим WAIK, убедимся, что второй диск от настроечной ВМ подключен:
Перейдём в папку C:\winpe, очистим папку ISO. Скопируем содержимое исходного дистрибутива Windows в папку ISO:
Удалим исходные ei.cfg, все файлы каталогов *.clg, и install.wim:
Файл каталога описывает каждую редакцию, находящуюся в install.wim. Файл ei.cfg "задаёт" устанавливаемую редакцию, если его удалить из исходного образа, появится возможность выбора редакции при установке. Каталоги удалять нужно в любом случае, так как мы заменяем исходный install.wim.
Скопируем захваченный install.wim в нашу папку ISO:
Создадим каталог. Запускаем Диспетчер от администратора:
Открываем наш install.wim:
Ждём несколько минут:
Каталог создан, закрываем диспетчер образов:
Можно приступать к сборке дистрибутива.
Запускаем командную строку средств развертывания от администратора:
Выполним команду сборки ISO дистрибутива:
oscdimg -u2 -lW7USP1UPD -m -o -bc:\winpe\etfsboot.com c:\winpe\iso c:\winpe\w7usp1upd.iso
Ключи:
-u2 - файловая система только UDF
-l - метка диска
-m - игнорировать ограничение максимального размера диска
-o - параметр оптимизации
-b - файл загрузочного сектора
- обрабатываемая папка
- имя и расположение готового ISO
ISO будет собран за пару минут:
Скопируем готовый дистрибутив в папку Share, закроем все окна, выключим WAIK, отмонтируем диск настроечной ВМ от WAIK:
Для дистрибутива x64 рабочая папка будет c:\winpe64
Команда сборки ISO будет выглядеть так:
oscdimg -u2 -lW7USP1UPD -m -o -bc:\winpe64\etfsboot.com c:\winpe64\iso c:\winpe64\w7usp1upd64.iso
Наш дистрибутив готов!
Этап V. Проверка дистрибутива
Установим систему с нашего дистрибутива на ВМ Tune86, в процессе установки удалим все существующие разделы и установим по умолчанию:
Установка продлится несколько дольше, чем с оригинального дистрибутива. Ускорить установку можно, задав параметр /compress fast при захвате образа, также это значительно сократит время захвата, но увеличит размер образа. Для современных флеш-накопителей размер уже не имеет значения, можете поэкспериментировать с этим параметром самостоятельно.
После установки настроим центр обновления Windows и выполним поиск обновлений:
Выберем актуальные, скроем нежелательные, устанавливаем:
Система полностью обновлена:
На этом всё! Вопросы задавайте в комментариях.