Як встановити Windows Server 2012 R2 і не отримати 200 оновлень навздогін

Windows Server 2012 R2 вийшов 18 жовтня 2013 року. З тих пір на цю серверну операційну систему Microsoft випущено кілька сотень оновлень виправляють уразливості і дефекти продукту, а так само поліпшують функціонал.

Величезна кількість оновлень — джерело головного болю. Найбільш актуальний дистрибутив сервера, так званий «Update2», в який інтегровані оновлення по листопад 2014 року, безнадійно застарів. Встановивши з нього операційну систему, ви отримаєте навздогін ще 200+ оновлень, які будуть встановлюватися 2-4 години.

У цій короткій інструкції ми освіжимо листопадовий дистрибутив, інтегрувавши в нього все кумулятивні оновлення й оновлення безпеки.

Крім дистрибутива ми освіжимо пам'ять адміністратора, згадавши як оновлюється носій для установки, навіщо виконується кожен крок, і які нас може чекати каверзи на різних етапах.

Робити будемо максимально просто, використовуючи штатні інструменти.

Всі роботи краще проводити на сервері вже розгорнутому Windows Server 2012 R2, щоб не було накладок з версією утиліти DISM. Так само на ньому зручно підключати ISO файли, не розпаковуючи їх.

Готуємо робочі директорії

Для роботи знадобляться наступні каталоги:

ISO — до цього каталогу копіюються файли дистрибутива. У скопіюйте в нього вміст дистрибутива SW_DVD9_Windows_Svr_Std_and_DataCtr_2012_R2_64Bit_English_-4_MLF_X19-82891.ISO попередньо змонтувавши образ, а потім размонтировав.


MOUNT — порожній каталог, в нього будуть монтуватися образи з wim-файлу.
CU — в цей каталог помістимо кумулятивні оновлення
SU — в цьому каталозі будуть перебувати оновлення безпеки та інші оновлення

mkdir D:\WS2012R2\ISO
mkdir D:\WS2012R2\MOUNT
mkdir D:\WS2012R2\CU
mkdir D:\WS2012R2\SU


Завантажуємо кумулятивні оновлення

Tip & Trick #1. Microsoft випускає Windows Server 2012 R2 кумулятивні пакети оновлень, але в них входять тільки оновлення, які виправляють помилки і поліпшують функціонал. Оновлення безпеки не включені. При цьому оновлення і не особливо кумулятивны. Частіше вони не включають в себе попередні, і треба ставити за кожен місяць. А деякі включають. Бардак. У жовтні ця ситуація зміниться на краще.

Зі списком кумулятивних оновлень ви можете ознайомитися на цієї wiki сторінці.

З листопада 2014 року нам потрібно інтегрувати наступні оновлення:

1. December 2014 Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2. KB3013769 завантажити.

2. July 2016 Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2. KB3172614 завантажити.

Пакети за травень і червень поглинуті цим липневим пакетом.
Але перед установкою обов'язково оновлення April 2015 servicing stack update for Windows 8.1 and Windows Server 2012 R2. KB3021910 завантажити.

3. August 2016 Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2. KB3179574 завантажити.

4. Для порядку інтегруємо оновлений клієнт Windows update від березня 2016 року.KB3138615, завантажити.

Tip & Trick #2. В різних статтях для інтеграції оновлень пропонується винести з msu cab-файл. Робити це необов'язково — інтегрувати msu без розпакування.

В папку CU розмістіть згадані вище msu файли — Windows8.1-KB3013769-x64.msu, Windows8.1-KB3021910-x64.msu, Windows8.1-KB3138615-x64.msu, Windows8.1-KB3172614-x64.msu, Windows8.1-KB3179574-x64.msu.

Завантажуємо оновлення безпеки

Крім кумулятивних оновлень інтегруємо оновлення, які здатна завантажити утиліта WSUS Offline Update.
Для цього:
  1. Завантажуємо програму download.wsusoffline.net
  2. Вибираємо оновлення для Windows Server 2012 R2
  3. Після скачування відкриваємо каталог wsusoffline\client\w63-x64\glb і *.cab копіюємо файли в каталог C:\WS2012R2\SU
Оновлення готові, приступимо до інтеграції.

Інтеграція оновлень

Для інтеграції оновлень нам буде потрібно:
  1. Змонтувати вміст одного з образів у install.wim
    dism /mount-wim /wimfile:{шлях до wim файлу} /Index:{N} /mountdir:{шлях до директорії монтування}
    

  2. Інтегрувати в offline установку кожне оновлення
    dism /image:{шлях до директорії монтування} /add-package /packagepath:{шлях до *.msu або *.cab файлу}
    

  3. Зберегти зміни
    dism /Unmount-WIM /MountDir:{шлях до директорії монтування} /Commit
    

Цей процес легко наступним автоматизувати командним файлом:
for /l %%N in (1,1,4) do (
dism /mount-wim /wimfile:"D:\WS2012R2\ISO\sources\install.wim" /Index:%%N /mountdir:D:\WS2012R2\MOUNT
for %%f in (D:\WS2012R2\CU\*.*) DO (dism /image:D:\WS2012R2\MOUNT /add-package /packagepath:%%f)
for %%f in (D:\WS2012R2\SU\*.*) DO (dism /image:D:\WS2012R2\MOUNT /add-package /packagepath:%%f)
dism /unmount-WIM /MountDir:D:\WS2012R2\MOUNT /Commit
)

В результаті ми отримаємо файл D:\WS2012R2\ISO\sources\install.wim розміром в 6.15 Gb.
Чи можемо ми його зменшити? Так, за допомогою експорту можна отримати оптимізований файл розміром в 5.85 Gb.

Економія невелика, крім того після цього не дуже красиво виглядає діалог вибору операційної системи при установці, тому наступний крок опційний.
Що треба зробити?Для отримання стисненого образу необхідно:
  1. Експортувати перший образ оригінального wim-файлу в новий файл
    dism /export-image /sourceimagefile:{шлях до вихідного файлу wim} /sourceindex:1 /destinationimagefile:{шлях до нового файлу wim} /compress:max
    

  2. Підключити наступний образ оригінального wim-файлу у точку монтування
    dism /mount-wim /wimfile:"D:\WS2012R2\ISO\sources\install.wim" /Index:2 /mountdir:{директорія для монтированния образу}
    
  3. Додати новий файл наступний спосіб методом «захоплення»
    dism /append-image /imagefile:{шлях до нового файлу wim} /captureDir:{директорія з змонтованим чином} /name:{оригінальне ім'я} /description:{оригінальне опис}
    
  4. Розмонтувати образ, повторити ітерацію додавання для кожного додаткового способу
    dism /unmount-WIM /MountDir:{директорія з змонтованим чином} /Discard
    


Автоматизуємо скриптом:
dism /export-image /sourceimagefile:D:\WS2012R2\ISO\sources\install.wim /sourceindex:1 /destinationimagefile:D:\WS2012R2\ISO\sources\install1.wim /compress:max

dism /mount-wim /wimfile:"D:\WS2012R2\ISO\sources\install.wim" /Index:2 /mountdir:D:\WS2012R2\MOUNT

dism /append-image /imagefile:D:\WS2012R2\ISO\sources\install1.wim /captureDir:mount /name:"Windows Server 2012 R2 SERVERSTANDARD" /description:"Windows Server 2012 R2 SERVERSTANDARD"

dism /unmount-WIM /MountDir:D:\WS2012R2\MOUNT /discard

dism /mount-wim /wimfile:"D:\WS2012R2\ISO\sources\install.wim" /Index:3 /mountdir:D:\WS2012R2\MOUNT

dism /append-image /imagefile:D:\WS2012R2\ISO\sources\install1.wim /captureDir:mount /name:"Windows Server 2012 R2 SERVERDATACENTERCORE" /description:"Windows Server 2012 R2 SERVERDATACENTERCORE"

dism /unmount-WIM /MountDir:D:\WS2012R2\MOUNT /discard

dism /mount-wim /wimfile:"D:\WS2012R2\ISO\sources\install.wim" /Index:4 /mountdir:D:\WS2012R2\MOUNT

dism /append-image /imagefile:D:\WS2012R2\ISO\sources\install1.wim /captureDir:mount /name:"Windows Server 2012 R2 server datacenter" /description:"Windows Server 2012 R2 server datacenter"

dism /unmount-WIM /MountDir:D:\WS2012R2\MOUNT /discard


Видаліть оригінальний install.wim, а сформований install1.wim перейменуйте в install.wim



Збірка ISO файлу

Для складання нам знадобиться утиліта oscdimg.exe з комплекту <a href=«developer.microsoft.com/ru-ru/windows/hardware/windows-assessment-deployment-kit>Windows ADK. Якщо у вас її не виявилося, можна просто завантажити утиліту посилання (не використовуйте з цього комплекту нічого, крім самої утиліти).

Tip & Trick #3. Для того, щоб не було проблем із завантаженням образу, слід розташувати завантажувальні файли у межах перших 4 гігабайт способу. Для цього використовуємо файл bootorder.txt

boot\bcd
boot\boot.sdi
boot\bootfix.bin
boot\bootsect.exe
boot\etfsboot.com
boot\memtest.exe
boot\en-us\bootsect.exe.mui
boot\fonts\chs_boot.ttf
boot\fonts\cht_boot.ttf
boot\fonts\jpn_boot.ttf
boot\fonts\kor_boot.ttf
boot\fonts\wgl4_boot.ttf
sources\boot.wim

Шляхи в цьому файлі вказуються щодо кореневої директорії з образом, тому підлаштовувати шляху на ваші фактичні не потрібно.

Tip & Trick #4. Якщо install.wim має розмір більше 4700Mb, то інсталятор вилетить з помилкою Windows cannot open the file required D:\sources\install.wim. Error code: 0x8007000D».

Нас вчили що життя — це бій, тому розділимо вихідний install.wim на два командою
dism /split-Image /imagefile:D:\WS2012R2\ISO\sources\install.wim /swmfile:D:\WS2012R2\ISO\sources\install.swm /filesize:4096

Оригінальний файл install.wim можна видалити.

Tip & Trick #5. Взагалі Microsoft говорить, що пити так робити не можна.
In Windows 8.1 and Windows 8, Windows Setup does not support installing a split .wim file.
Ми говоримо, що будемо! Інсталятор чудово підхоплює swm-файл. Проблем з установкою не буде.

Збираємо образ командою:
oscdimg -m -n -yoD:\WS2012R2\bootorder.txt -bD:\WS2012R2\ISO\BOOT\etfsboot.com -lIR5_SSS_X64FREV_EN-US_DV9 D:\WS2012R2\ISO en_windows_server_2012R2_August_2016.iso

Все вийшло?
Вітаю!


Але проблему повністю? Для ідеалу необхідно інтегрувати ще сотню «опціональних» і «рекомендованих» оновлень, але з цим не будемо поспішати. Дамо Microsoft шанс самим розібратися в тому бардаку, який вони влаштували з оновленнями.

PS. Навіщо ми все це робили? Для того, щоб освіжити пам'ять, зробити роботу трохи зручніше і отримати кілька простих командних файлів, за допомогою яких в подальшому можна практично автоматизовано інтегрувати оновлення в серверний дистрибутив, заощаджуючи час введення сервера в експлуатацію. Тим більше є надія, що починаючи з жовтня інтегрувати оновлення стане набагато простіше.
Точно так само ви зможете інтегрувати Windows 7 convenience rollup і не наступити на граблі розпакування оновлень, неможливість завантаження з образу, перевищення розміру install.wim.

Спасибі за увагу і до нових зустрічей, друзі.

Якщо є можливість поділитися досвідом — чекаю вас в коментарях.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.