Інсталяція кількох оновлень або поточних виправлень Windows із виконанням лише одного перезавантаження

Переклади статей Переклади статей
Номер статті: 296861 - Показ продуктів, яких стосується ця стаття.
Розгорнути все | Згорнути все

На цій сторінці

Підсумки

У цій статті описано спосіб інсталяції кількох оновлень продуктів Windows (наприклад, ключові оновлення, оновлення безпеки або поточні виправлення) з використанням файлу Hotfix.exe (Microsoft Windows NT 4.0) або Update.exe (Microsoft Windows 2000, Microsoft Windows XP або Microsoft Windows Server 2003) і тільки одним перезавантаженням. Цю статтю призначено для адміністраторів і фахівців з інформаційних технологій. Можна інсталювати оновлення продукту Windows, за яких використовується Hotfix.exe або Update.exe окремо або у сполученні з Windows (з пакетом оновлень або без нього).

Примітка. Процедура, описана у цій статті, не працює з оновленнями продукту, які не використовують Hotfix.exe або Update.exe як програму інсталяції. Наприклад, оновлення Internet Explorer для Windows NT 4.0, Windows 2000 та Windows XP використовують INF-файли інсталяції, а не Update.exe. У результаті цього неможливо використовувати цю процедуру, щоб інсталювати кілька оновлень Microsoft Internet Explorer із виконанням лише одного перезавантаження у Windows NT 4.0, Windows 2000 або Windows XP. У зв'язку з тим, що оновлення Internet Explorer для Windows Server 2003 використовують Update.exe як програму інсталяції, для їх інсталяції можна використовувати цю процедуру.

Щоб отримати додаткові відомості щодо цих тем, відвідайте такий веб-сайт корпорації Майкрософт:

Windows 2000
Посібник із розгортання та інсталяції виправлень для Microsoft Windows 2000
http://technet.microsoft.com/uk-ua/library/cc750542.aspx
Windows XP
Посібник з інсталяції та розгортання оновлень для ОС Microsoft Windows XP з пакетом оновлень 2 (SP2)
http://technet.microsoft.com/uk-ua/library/bb457071.aspx
Windows Server 2003 та Windows XP Professional x64 Edition
Посібник з інсталяції та розгортання оновлень для ОС Microsoft Windows Server 2003 та 64-розрядних випусків ОС Windows XP 2003
http://technet.microsoft.com/uk-ua/library/cc700814.aspx
Windows Server 2003 з пакетом оновлень 1 (SP1)
Інсталяція та розгортання оновлень для Microsoft Windows Server 2003 з пакетом оновлень 1 (SP1)
http://technet.microsoft.com/uk-ua/library/cc706993(WS.10).aspx

Додаткові відомості

Оновлення продукту Windows (наприклад, ключові оновлення, оновлення безпеки або поточні виправлення) є виконуваним файлом (.exe), який містить один або кілька системних файлів, які використовуються у Windows з метою вирішення конкретної проблеми. Служба технічної підтримки продуктів корпорації Майкрософт поширює поточні виправлення клієнтам, в яких виникають конкретні проблеми, що завдають серйозної шкоди. Ключові оновлення та оновлення безпеки є оновленнями, які корпорація Майкрософт рекомендує всім своїм клієнтам. Ключові оновлення та оновлення безпеки можна отримати на веб-сайтах Windows Update, Microsoft Update, центрі завантаження Майкрософт або на інших веб-сайтах корпорації Майкрософт.

Оновлення 64-розрядної версії Windows XP та Windows Server 2003 або оновлення Windows XP та Windows 2000, створені після грудня 2002

Примітка. Щоб визначити дату створення оновлення, перегляньте дату змінення в пакеті оновлень програми інсталяції Update.exe або Hotfix.exe.

Щоб інсталювати пакет оновлень Windows на одному комп'ютері, запустіть програму оновлення продукту на комп'ютері, який потрібно оновити. Щоб інсталювати кілька оновлень продукту без перезавантаження комп'ютера між кожною інсталяцією, використайте параметр /z.

Параметри командного рядка для програми Update.exe

Нижченаведена таблиця містить параметри командного рядка (або перемикачі), які підтримує програма Update.exe:
Опис параметра ------ ----------- /f Закрити інші програми за умови завершення роботи. /n Не створювати резервні копії файлів під час видалення поточних виправлень. /z Не перезавантажувати комп'ютер після завершення інсталяції. /q Використовувати прихований режим; втручання користувача не потрібне. /m Використовувати автоматичний режим інсталяції (Windows 2000). /u Використовувати автоматичний режим інсталяції (Windows XP). /l Надати перелік інстальованих поточних виправлень. 
Нижченаведений зразок коду є пакетним файлом, який інсталює кілька оновлень продукту та забезпечує заміну правильних файлів після перезавантаження комп'ютера.
@echo off
setlocal
set PATHTOFIXES=E:\hotfix

%PATHTOFIXES%\Q123456_w2k_sp4_x86.exe /Z /M
%PATHTOFIXES%\Q123321_w2k_sp4_x86.exe /Z /M
%PATHTOFIXES%\Q123789_w2k_sp4_x86.exe /Z /M
Примітка. Функції QChain.exe входять до складу всіх оновлень продукту для 64-розрядної версії Windows XP , Windows Server 2003, Windows XP та Windows 2000, які використовують Update.exe і були випущені після 18 травня 2001 р. Однак, в оновленнях продукту, які було випущено до грудня 2002 р., можуть виникати проблеми - за деяких умов на комп'ютері може використовуватися хибний двійковий файл. З метою вирішення цієї проблеми у березні 2003 р. корпорація Майкрософт випустила оновлену версію QChain.exe. Щоб отримати додаткові відомості про цю проблему або про те, як отримати оновлений інструмент Qchain.exe, клацніть номер статті в базі знань Microsoft Knowledge Base:
815062 Правильний файл не інстальовано під час підключення кількох поточних виправлень, об'єднаних у ланцюг (Це посилання може вказувати на вміст, повністю або частково викладений англійською мовою.)

Усі оновлення Windows NT 4.0 або Windows XP та оновлення Windows 2000, які було створено до грудня 2002 р.

Примітка. Щоб визначити дату створення оновлення продукту, перевірте дату змінення в пакеті оновлень програми інсталяції Update.exe або Hotfix.exe.

Корпорація Майкрософт випустила інструмент командного рядка із назвою QChain.exe. За допомогою QChain.exe системні адміністратори можуть об'єднати оновлення в ланцюги. Завдяки об'єднанню оновлень у ланцюги можна інсталювати кілька оновлень без виконання перезавантаження комп'ютера між кожною інсталяцією. Без цього інструмента єдиним підтримуваним способом є перезавантаження комп'ютера після виконання кожної інсталяції оновлення. Інструмент QChain.exe має такі переваги:
  • Завдяки відсутності потреби у перезавантаженні комп'ютерів між кожною інсталяцією збільшується час безперервної роботи серверів.
  • Інструмент дозволяє за коротший термін виконати інсталяції кількох оновлень на одному комп'ютері.
  • Він працює на Windows 2000 та Windows NT 4.0.
Примітка. Функції QChain.exe входять до складу всіх оновлень продукту Windows XP та Windows 2000, які було випущено після 18 травня 2001 р. Але в оновленнях продукту, які було випущено до грудня 2002 р., можуть виникати проблеми - за деяких умов на комп'ютері може використовуватися хибний двійковий файл. З метою вирішення цієї проблеми у березні 2003 р. корпорація Майкрософт випустила оновлену версію QChain.exe. Щоб отримати додаткові відомості про цю проблему або про те, як отримати оновлений інструмент Qchain.exe, клацніть номер статті в базі знань Microsoft Knowledge Base:
815062 Правильний файл не інстальовано під час підключення кількох поточних виправлень, об'єднаних у ланцюг (Це посилання може вказувати на вміст, повністю або частково викладений англійською мовою.)

Інсталяція об'єднаних у ланцюг оновлень без QChain.exe є небезпечною

Якщо під час інсталяції оновлень файл заблоковано або використовується, його неможливо замінити. У результаті цього файл розташовується в черзі очікування на перейменування файлу та заміняється після перезавантаження комп'ютера. Проблема виникає в таких випадках:
  • Виконується інсталяція оновлень A та B без перезавантаження комп'ютера між інсталяціями.
  • Обидва пакети містять файл file X. Файл X пакета A належить до версії 3; файл X файлу B належить до версії 2. Файл X на комп'ютері належить до версії 1.
  • Під час інсталяції пакета A він розташовує свою версію файлу X у черзі очікування на перейменування файлу.
  • Під час інсталяції пакета B він розташовує свою версію файлу X у черзі очікування на перейменування файлу.
  • За перезавантаження комп'ютера інсталюється версія файлу X пакета В (у черзі очікування на перейменування файлу останнім файлом є той, який використовувався останнім). У результаті цього інсталюється версія 2, а не версія 3, як очікувалося.

Якщо оновлення, які було попередньо об'єднано в ланцюг, інстальовано без виконання перезавантаження

Ця ситуація виникає доволі рідко, але бажано перевірити, що на комп'ютері існують всі виправлення, які вважаються інстальованими. Щоб перевірити це використовуйте інструмент Qfecheck.exe. Щоб отримати додаткові відомості про Qfecheck.exe, клацніть номер статті в базі знань Microsoft Knowledge Base:
282784 Qfecheck.exe перевіряє інсталяцію поточних виправлень Windows 2000 та Windows XP (Це посилання може вказувати на вміст, повністю або частково викладений англійською мовою.)
QChain.exe очищує розділ операцій очікування на перейменування файлу в реєстрі, щоб забезпечити інсталяцію лише останньої версії файлу після перезавантаження комп'ютера.

Щоб інсталювати кілька оновлень із виконанням лише одного перезавантаження

  1. Запустіть програму інсталяції оновлення з параметром -z, щоб програма інсталяції не виконувала перезавантаження після інсталяції. Додайте параметр -m (для прихованого режиму), якщо відображати підказки або повідомлення під час інсталяції не потрібно.

    Програмою інсталяції оновлень може бути:
    • Програмний файл саморозпаковуваного архіву (наприклад, Qnnnnnn_w2k_spx_x86_en.exe).
    • Hotfix.exe (якщо з архіву витягнуто всі файли).
  2. Після інсталяції всіх поточних виправлень запустіть QChain.exe.
  3. Перезавантажте комп'ютер.
Для цього також можна створити пакетний файл. Нижченаведений зразок пакетного файлу демонструє цей спосіб:
@echo off
setlocal
set PATHTOFIXES=some path
%PATHTOFIXES%\Q123456_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\Q123321_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\Q123789_w2k_sp2_x86.exe -z -m
%PATHTOFIXES%\qchain.exe

Як отримати QChain.exe

Функції QChain.exe входять до складу всіх оновлень продукту Windows XP та Windows 2000, які було випущено після 18 травня 2001 р. Але в оновленнях продукту, які було випущено до грудня 2002 р., можуть виникати проблеми - за деяких умов на комп'ютері може використовуватися хибний двійковий файл. З метою вирішення цієї проблеми у березні 2003 р. корпорація Майкрософт випустила оновлену версію QChain.exe. Щоб отримати додаткові відомості про цю проблему або про те, як отримати оновлений інструмент Qchain.exe, клацніть номер статті в базі знань Microsoft Knowledge Base:
815062 Правильний файл не інстальовано під час підключення кількох поточних виправлень, об'єднаних у ланцюг (Це посилання може вказувати на вміст, повністю або частково викладений англійською мовою.)

Синтаксис команди QChain.exe

qchain [logfilename]
Додатковий параметр [logfilename] створює файл із виконанням знімку розділу операцій очікування на перейменування файлу до і після.

Приклад виконання QChain.exe

---- Застарілі відомості в реєстрі ------
Вихідний файл:C:\WINNT\inf\acpi.inf
Версія: 5.0.2183.1
Призначення:d:\ntsust\testregchech\1394.inf
Версія: 5.0.2183.1

Джерело:C:\WINNT\inf\adm_mult.inf
Версія: 5.0.2184.1
Призначення:d:\ntsust\testregchech\1394.inf
Версія: 5.0.2183.1

Джерело:C:\WINNT\inf\acpi.inf
Версія: 5.0.2080.1
Призначення:d:\ntsust\testregchech\1394.inf
Версія: 5.0.2183.1

---- Нові відомості в реєстрі ------
Джерело:C:\WINNT\inf\adm_mult.inf
Версія: 5.0.2184.1
Призначення:d:\ntsust\testregchech\1394.inf
Версія: 5.0.2183.1

Обмеження QChain.exe

Хоча програма QChain працює з більшістю оновлень для систем Windows NT 4.0 і Windows 2000, вона може не працювати з оновленнями, які містять двійкові файли з цього розділу реєстру:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDLLs
Двійкові файли, наведені в цьому розділі реєстру, завантажуються в пам’ять під час запуску. Якщо програма інсталяції оновлень викликає функцію GetFileVersionInfo для двійкового файлу з цього списку, програма інсталяції оновлень посилається на двійковий файл, який вже завантажено, а не на двійковий файл, який дійсно існує в кінцевому розташуванні.

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

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

З метою визначення версії файлу усі оновлення Windows NT 4.0 та Windows 2000 більш ранніх версій, ніж пакет оновлень 2 (SP2), використовують GetFileVersionInfo. Якщо інсталюється два або більше оновлень Windows NT 4.0 або попередні версії пакета оновлень 2 (SP2) Windows 2000 і оновлення містять перекривання KnownDLLs, використання QChain під час об'єднання цих оновлень у ланцюги під час інсталяції не забезпечує інсталяцію виправлення останньої версії.

Така ситуація свідчить про те, що QChain не розмістив правильний двійковий файл у системі:
  • Виконується інсталяція пакетів оновлень A та B і між інсталяціями перезавантаження не виконується.
  • Обидва пакети містять Kernel32.dll, файл зі списку KnownDLLs. Пакет A містить Kernel32.dll версії 3, пакет B містить Kernel32.dll версії 2, а на комп'ютері інстальовано Kernel32.dll версії 1.
  • За інсталяції пакета A GetFileVersionInfo відображає повідомлення про те, що на комп'ютері інстальовано Kernel32.dll версії 1. Оскільки пакет A містить версію 3, програма інсталяції оновлень визначає, що потрібно виконати заміну.
    • Програма інсталяції оновлень переміщує Kernel32.dll версії 1 до тимчасового розташування на комп'ютері та створює операцію очікування на перейменування файлу, щоб вилучити файл Kernel32.dll з тимчасового розташування під час наступного перезавантаження комп'ютера.
    • Kernel32.dll версії 3 пакета А скопіюється на комп'ютер.
  • Під час інсталяції пакета B функція GetFileVersionInfo продовжує відображати повідомлення про те, що на комп’ютері інстальовано Kernel32.dll версії 1, оскільки GetFileVersionInfo зчитує відомості про версію з Kernel32.dll, який завантажено до пам'яті. Пакет B містить версію 2, а поточне виправлення таким чином визначає, що потрібно здійснити заміну файлу.
    • Програма інсталяції оновлень переміщує Kernel32.dll поточний на комп'ютері (Kernel32.dll версії 3 пакета А) до тимчасового розташування та створює операцію очікування на перейменування файлу, щоб видалити Kernel32.dll (версії 3) з тимчасового розташування під час наступного перезавантаження.
    • Kernel32.dll версії 2 пакета B скопійовано на комп'ютер.
  • QChain запущено, але для заміни файлу не здійснюються операції очікування на перейменування файлу і таким чином QChain не виконує ніяких дій.
  • Оскільки інстальовано останню версію пакета B, пакет B Kernel32.dll версії 2 міститься у правильному розташуванні на комп'ютері. Таким чином, він завантажується до пам'яті під час перезавантаження комп'ютера. Операції очікування на перейменування файлу видаляють Kernel32.dll початкової версії 1 і Kernel32.dll версії 3 пакета А. Як наслідок, тепер на комп'ютері інстальовано Kernel32.dll версії 2, а не версії 3.
Існує виправлення, випущене після пакета оновлень 2 (SP2) для ОС Windows 2000, де функція GetFileVersionInfo більше не використовується для KnownDLLs, які завантажено в пам'ять. Натомість програма інсталяції оновлень підключає файл, який дійсно наявний в кінцевому розташуванні, а потім викликає GetFileVersionInfo для мережного файлу. Таким чином, можна використовувати QChain.exe , щоб об'єднати оновлення версій, випущених після пакета оновлень 2 (SP2) Windows 2000. Під час виконання таких дій інсталюється остання версія файлу, незалежно від послідовності, в якій інстальовано файли.

Під час повторного виконання вищезазначеної ситуації та застосування оновлень, які належать версіям після пакета оновлень 2 (SP2) Windows 2000, поточне виправлення в пакеті B підключає Kernel32.dll пакета А та розпізнає версію 3. Версія 3 є пізнішою версією, ніж версія 2 Kernel32.dll, яка міститься в пакеті В. Таким чином, пакет B не заміняє Kernel32.dll, який міститься в системі, і після перезавантаження комп'ютер правильно використовує лише Kernel32.dll версію 3 пакета A.

Властивості

Номер статті: 296861 - Востаннє переглянуто: 26 вересня 2013 р. - Редакція: 17.0
Застосовується до:
  • Microsoft Windows Update
  • Microsoft Update
Ключові слова: 
kbproductlink kbhotfixserver kbqfe kbwindowsupdatev6 kbwindowsupdatev3 kbfile kbgraphxlinkcritical kbinfo KB296861

Надіслати відгук

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com