Серверная (www.it-simple.ru)

Финальная версия Windows XP


* Данная заметка предназначена для корпоративных версий Windows XP и для корпоративных системных администраторов. Если вы не корпоративный системный администратор — не повторяйте написанного ниже, вы можете нарушить лицензионное соглашение микрософта.

Итак, поддержка Windows XP заканчивается 8 апреля 2014 года. С этого момента обновления для системы больше не будут приходить, несмотря на то, что система используется и будет использоваться ещё долгое время — как минимум, в качестве быстрой винды внутри виртуальных машин.

Допустим, у нас есть лицензионный диск (диски) с Windows XP, купленный хрен знает когда. То есть, очень многих важных и нужных обновлений на нём попросту нет. Каждый раз после очередной установки нам нужно будет эти обновления выкачивать, забивая мусором систему и генерируя трафик. Это плохо, долго, затратно и никому не нужно. Гораздо интереснее сделать "финальную версию" системы, в которую будут внедрены все выпущенные обновления.

Вкратце, план действий такой:
1. Ставим винду начисто, с диска.
2. Определяем, каких обновлений нет и скачиваем их.
3. Внедряем скачанные обновления в исходный дистрибутив.

1

Снимаем образ с лицензионного компакт-диска Microsoft Windows XP Corporate Edition.

dd if=/dev/cdrom of=wxp.iso bs=2048

Или с помощью программы UltraISO, которая в виндах и платная.

Образ понадобится нам в целях резервного копирования, для установки на виртуальную машину (не будем же мы страдать хернёй, возясь с реальным железом) и для последующей интеграции в него обновлений.

Создаём виртуальную машину (например, в VirtualBox), подключаем образ и устанавливаем с него систему.

После установки не надо качать обновления через штатный Виндуз Апдейт, это бесполезно: микрософт позаботилась, чтобы такие обновления было невозможно внедрить в дистрибутив.

2

Для поиска и скачивания обновлений, недостающих в сырой системе, будем использовать утилиту MBSA ("Анализатор Microsoft Baseline Security Analyzer", как сказано на сайте микрософта). Утилита определяет, что нужно обновить и даёт прямые ссылки на то, откуда это сделать. В отличие от официального сайта микрософта, где вообще ничего невозможно найти. Кто сомневается — может убедиться сам (http://technet.microsoft.com/ru-ru/security/dn481339). Итак,

Анализатор Microsoft Baseline Security Analyzer (MBSA) – это простое в использование средство, разработанное для ИТ-специалистов и помогающее мелким и средним предприятиям определять их состояние безопасности в соответствии с рекомендациями Microsoft и предлагать конкретные рекомендации по его улучшению. Усовершенствуйте процесс управления безопасностью, используя MBSA для обнаружения распространенных неверных настроек безопасности и отсутствующих обновлений безопасности в своих компьютерных системах.

Анализатор Microsoft Baseline Security Analyzer (MBSA) (http://technet.microsoft.com/ru-ru/security/cc184924.aspx)

Нам нужна версия не больше 2.0.1. В более поздних версиях микрософт позаботилась, чтобы прямых ссылок на скачивание не было.
Взять версию 2.0.1 можно здесь (http://www.oldversion.com.ru/windows/microsoft-baseline-security-analyzer-2-0-1).

Устанавливаем, запускаем, давим ссылку «Scan a computer», расставляем галки так, как показано на картинке ниже и жмём «Start scan».

Пока идёт сканирование — делаем папку "C:\KB". Сюда будем качать обновления.
И копируем в корень "C:\" каталог "i386" с лицензионного образа лицензионного компакт-диска. Должно получиться "C:\I368".

Из открывшегося после сканирования окна скачиваем обновления. Поштучно, иначе никак. Микрософт позаботилась о том, чтобы все файлы нельзя было скачать одним кликом. И ещё — скачивание будет идти через IE, независимо от того, установлен у вас другой браузер или нет. Об этом микрософт тоже позаботилась.

Кстати, читать описания заплаток — одно удовольствие. Очень рекомендую.
Произвольный код злоумышленников в разное время выполняли: пейнт, днс-резолвер, муви мейкер, вордпад, десяток системных кодеков, директ шоу, "редактор титульных страниц факсов", тысячи их.

3

Теперь самое интересное.
Напоминаю: в каталоге "C:\I386" у нас лежит копия такого же каталога с компакт-диска, а в каталоге "C:\KB" — файлы с обновлениями.

Внедряем обновления. Из командной строки:

cd c:\kb
for %i in (*.exe) do start /wait %i /integrate:c:\ /nobackup /passive /log:c:\sp4.log

Лог — на всякий случай. Как оказалось, там нет ничего полезного.

В результате этой процедуры у нас:
— файлы дистрибутива ("C:\I386") заменятся своими обновлёнными версиями
— внутри дистрибутива появится новая папка по имени "svpack", в которой — внимание! — будут лежать копии всех обновлений. И если всё оставить как есть, во время установки системы (за 13 минут до её окончания) эти обновления будут установлены во второй раз, на себя же, и сгенерировав тот установочный мусор, которого мы старались избежать. Время такой установки, естественно, увеличится. Как и объём дистрибутива.

Чтобы этого не произошло — удаляем каталог "C:\I386\svpack", ищем файл "C:\I386\svpack.inf" и возвращаем его в исходное состояние. А именно:

[Version]
Signature="$Windows NT$"

[SetupData]
CatalogSubDir="i386\hotfixes"

[ProductCatalogsToInstall]

[SetupHotfixesToRun]

Также можно поиграться с файлом "C:\I386\DOSNET.INF". Он отвечает за "синюю" установку, и там тоже есть что поредактировать.

После всех манипуляций осталось засунуть наш "i386" обратно в образ компакт-диска. Сделать это можно с помощью той же UltraISO (из виндов), ISO Master (из графики в Linux) либо genisoimage (без графики в Linux).

3*

А ещё лучше для этих же целей воспользоваться утилитой nLite (http://nliteos.pcrpg.org/nlite/nLite-1.4.9.3.setup.exe) — ничего не придётся делать руками.
Заодно можно внедрить и драйвера SATA (ссылки можно найти на этой странице (http://acerfans.ru/faq/163-ahci-na-win-xp.html)), чтобы было совсем всё хорошо (http://www.it-simple.ru/?p=5185).