כיצד להתקין עדכונים או תיקונים חמים מרובים של מערכת Windows בפעולת אתחול מחדש אחת בלבד

מספר מאמר: 296861 - הצג מוצרים שמאמר זה מתייחס אליהם.
הרחב הכל | כווץ הכל

בעמוד זה

תקציר

מאמר זה מתאר כיצד להתקין עדכוני מוצר מרובים של Windows (לדוגמה, עדכונים קריטיים, תיקוני אבטחה או תיקונים חמים) המשתמשים ב- Hotfix.exe ?(Microsoft Windows NT 4.0) או ב- Update.exe ?(Microsoft Windows 2000,? Microsoft Windows XP או Microsoft Windows Server 2003) עם הפעלה מחדש אחת בלבד. מאמר זה מיועד למנהלי מערכת ולמומחי IT. באפשרותך להתקין עדכוני מוצר של Windows המשתמשים ב- Hotfix.exe או ב- Update.exe הן לבד והן בשילוב עם Windows (עם או בלי Service Pack).

הערה ההליך המתואר במאמר זה לא פועל עבור עדכוני מוצר שאינם משתמשים ב- 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 כתוכנית ההתקנה, ניתן להשתמש בהליך זה כדי להתקין אותם.

לקבלת מידע נוסף אודות נושאים אלה, בקר באתרי האינטרנט הבאים של Microsoft:

Windows 2000
התקנת תיקונים חמים ומדריך פריסה של Microsoft Windows 2000 (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
http://www.microsoft.com/technet/archive/security/tools/hfdeploy.mspx
Windows XP
התקנת תיקונים חמים ומדריך פריסה של Microsoft Windows XP (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
http://www.microsoft.com/windowsxp/downloads/updates/sp1/hfdeploy.mspx
המדריך להתקנה ופריסה של עדכונים עבור Microsoft Windows XP Service Pack 2 (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
http://technet.microsoft.com/en-us/library/bb457071.aspx
Windows Server 2003 ו- Windows XP Professional x64 Edition
המדריך להתקנה ופריסה של עדכונים עבור Microsoft Windows Server 2003 ועבור Windows XP 64-Bit Edition Version 2003 (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
http://www.microsoft.com/technet/security/guidance/patchmanagement/hfdeploy.mspx
Windows Server 2003 Service Pack 1
התקנה ופריסה של עדכונים עבור Microsoft Windows Server 2003 Service Pack 1 (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
http://technet2.microsoft.com/windowsserver/en/library/0e02a953-aca7-4dad-b3e2-c94ea72bbc3d1033.mspx

מידע נוסף

עדכון מוצר של Windows (לדוגמה, עדכון קריטי, תיקון אבטחה או תיקון חם) הוא קובץ הפעלה (?.exe) שמכיל קובץ מערכת אחד או יותר שאותם ניתן להחיל על Windows כדי לפתור בעיה ספציפית. שירותי התמיכה במוצר של Microsoft מפיצים תיקונים חמים ללקוחות שהושפעו באופן רציני על-ידי בעיה ספציפית. עדכונים קריטיים ותיקוני אבטחה הם עדכונים ש- Microsoft ממליצה עבור כל הלקוחות. באפשרותך להשיג עדכונים קריטיים ותיקוני אבטחה מאתר האינטרנט Windows Update, אתר האינטרנט Microsoft Update ומרכז ההורדות של Microsoft, או מאתרי אינטרנט אחרים של Microsoft.

עדכונים של Windows XP x64 Edition ועדכונים של Windows Server 2003 או עדכונים של Windows XP ושל Windows 2000 שנוצרו לאחר דצמבר 2002

הערה כדי לקבוע מתי נוצר עדכון, הצג את תאריך השינוי בתוכנית ההתקנה Update.exe או Hotfix.exe בחבילת העדכונים.

כדי להתקין עדכון מוצר של Windows במחשב יחיד, הפעל את תוכנית עדכון המוצר במחשב שברצונך לעדכן. כדי להתקין עדכוני מוצר מרובים בלי להפעיל מחדש את המחשב בין כל התקנה, השתמש בבבורר ?/z .

אפשרויות שורת הפקודה עבור התוכנית Update.exe

הטבלה הבאה מזהה את אפשרויות שורת הפקודה (או הבוררים) הנתמכים על-ידי Update.exe:
Switch Description ------ ----------- 
?/f Forces other programs to close at shutdown. ?/n Does not back up files for removing hotfixes. ?/z Does not restart the computer after the installation is completed. ?/q Uses quiet mode; no user interaction is required. ?/m Uses unattended Setup mode (Windows 2000). ?/u Uses unattended Setup mode (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 כלולה בכל עדכוני המוצר של Windows XP x64 Editions,? Windows Server 2003,? Windows XP ו- Windows 2000 המשתמשים ב- Update.exe ופורסמו מאז 18 במאי 2001. עם זאת, קיימת בעיה בעדכוני מוצר שפורסמו לפני דצמבר 2002 שבנסיבות מסוימות עלולים להחיל קובץ בינארי שגוי במחשב שלך. במרץ 2003, Microsoft פרסמה גירסה מעודכנת של QChain.exe כדי לפתור בעיה זו. לקבלת מידע נוסף אודות בעיה זו או כדי להשיג את הכלי Qchain.exe המעודכן, לחץ על מספר המאמר הבא כדי להציגו מתוך מאגר הידע Microsoft Knowledge Base:
815062 לא מותקן הקובץ הנכון בעת שרשור תיקונים חמים מרובים (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)

כל העדכונים של Windows NT 4.0 או העדכונים של Windows XP ושל Windows 2000 שנוצרו לפני דצמבר 2002

הערה כדי לקבוע מתי נוצר עדכון מוצר, בדוק את תאריך השינוי בתוכנית ההתקנה Update.exe או Hotfix.exe בחבילת העדכונים.

Microsoft פרסמה כלי שורת פקודה שנקרא QChain.exe. באמצעות QChain.exe, מנהלי מערכת יכולים לשרשר עדכונים יחד. בעת שרשור עדכונים, התקן עדכונים מרובים בלי להפעיל מחדש את המחשב בין התקנה להתקנה. ללא כלי זה, השיטה הנתמכת היחידה היא להפעיל מחדש את המחשב לאחר כל התקנת עדכון. הכלי QChain.exe מציע את היתרונות הבאים:
  • הוא מגדיל את זמן הפעולה של שרתים מאחר שמחשבים אינם מופעלים מחדש בין כל התקנת עדכון.
  • הוא מאפשר התקנות מהירות יותר של עדכונים מרובים במחשב יחיד.
  • הוא פועל הן ב- Windows 2000 והן ב- Windows NT 4.0.
הערה פונקציונליות QChain.exe כלולה בכל העדכונים של Windows XP ושל Windows 2000 שפורסמו מאז 18 במאי 2001, אך קיימת בעיה בעדכונים שפורסמו לפני דצמבר 2002, שעלולים לגרום להצבה של קובץ בינארי שגוי במחשב שלך בנסיבות מסוימות. במרץ 2003, Microsoft פרסמה גירסה מעודכנת של QChain.exe כדי לפתור בעיה זו. לקבלת מידע נוסף אודות בעיה זו או כדי להשיג את הכלי Qchain.exe המעודכן, לחץ על מספר המאמר הבא כדי להציגו מתוך מאגר הידע Microsoft Knowledge Base:
815062 לא מותקן הקובץ הנכון בעת שרשור תיקונים חמים מרובים (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)

שרשור התקנות עדכונים ללא QChain.exe אינו בטוח

בעת התקנת עדכונים, אם קובץ ננעל או נמצא בשימוש, לא ניתן להחליפו. כתוצאה מכך, הקובץ ממוקם בתור להמתנה לשינוי שמות קבצים ומוחלף לאחר שהמחשב מופעל מחדש. הבעיה מתרחשת בתרחיש הבא:
  • התקנת את עדכונים A ו- B בלי להפעיל מחדש את המחשב בין ההתקנות.
  • שתי החבילות מכילות את הקובץ X. קובץ X של חבילה A הוא בגירסה 3; קובץ X של חבילה B הוא בגירסה 2. הגירסה של קובץ X במחשב היא גירסה 1.
  • כאשר חבילה A מותקנת, היא מציבה את הגירסה שלה של קובץ X בתור ההמתנה לשינוי שם קובץ.
  • כאשר חבילה B מותקנת, היא מציבה את הגירסה שלה של קובץ X בתור ההמתנה לשינוי שם קובץ.
  • כאשר המחשב מופעל מחדש, מאחר שחבילה B הותקנה אחרונה, הגירסה של השל קובץ X מותקנת (בתור ההמתנה לשינוי שם, הקובץ האחרון הוא הקובץ שנמצא בשימוש). כתוצאה מכך, גירסה 2 מותקנת במקום גירסה 3 הדרושה.

כאשר עדכונים ששורשרו בעבר מותקנים ללא הפעלה מחדש

על אף שתרחיש זה נדיר, מומלץ לוודא שהמחשב כולל את כל התיקונים שאתה חושב שמותקנים. כדי לבדוק זאת, השתמש בכלי Qfecheck.exe. לקבלת מידע נוסף אודות Qfecheck.exe, לחץ על מספר המאמר שלהלן כדי להציגו מתוך מאגר הידע Microsoft Knowledge Base:
282784 Qfecheck.exe מוודא שהתיקונים החמים עבור Windows 2000 ועבור Windows XP הותקנו (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)
QChain.exe מנקה את המפתח Pending File Rename Operations ברישום כדי לוודא שרק הגירסה האחרונה של קובץ תהיה מותקנת לאחר הפעלה מחדש של המחשב.

כדי להתקין עדכונים מרובים עם הפעלה מחדש אחת בלבד

  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, Microsoft פרסמה גירסה מעודכנת של QChain.exe כדי לפתור בעיה זו. לקבלת מידע נוסף אודות בעיה זו או כדי להשיג את הכלי Qchain.exe המעודכן, לחץ על מספר המאמר הבא כדי להציגו מתוך מאגר הידע Microsoft Knowledge Base:
815062 לא מותקן הקובץ הנכון בעת שרשור תיקונים חמים מרובים (ייתכן שקישור זה מפנה לתוכן שחלק ממנו או כולו מופיע באנגלית)

תחביר הפקודה QChain.exe

qchain [logfilename]?
הפרמטר [logfilename] האופציונלי יוצר קובץ עם תמונה של מפתח הרישום Pending File Rename Operations לפני ואחרי.

פלט לדוגמה של QChain.exe

---- Old Information In The Registry ------
Source:C:\WINNT\inf\acpi.inf
Version: 5.0.2183.1
Destination:d:\ntsust\testregchech\1394.inf
Version: 5.0.2183.1

Source:C:\WINNT\inf\adm_mult.inf
Version: 5.0.2184.1
Destination:d:\ntsust\testregchech\1394.inf
Version: 5.0.2183.1

Source:C:\WINNT\inf\banshee.inf
Version: 5.0.2080.1
Destination:d:\ntsust\testregchech\1394.inf
Version: 5.0.2183.1

---- New Information In The Registry ------
Source:C:\WINNT\inf\adm_mult.inf
Version: 5.0.2184.1
Destination:d:\ntsust\testregchech\1394.inf
Version: 5.0.2183.1

המגבלות של QChain.exe

על אף ש- QChain פועל עם רוב העדכונים של Windows NT 4.0 ושל Windows 2000, ייתכן ש- QChain.exe אינו פועל עם עדכונים שמכילים קבצים בינאריים המפורטים במפתח הרישום הבא:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDLLs
קבצים בינאריים המפורטים במפתח רישום זה נטענים לזיכרון במהלך האתחול. כאשר מתקין העדכונים קורא לפונקציה GetFileVersionInfo בקובץ בינארי מתוך רשימה זו, מתקין העדכונים מפנה לקובץ הבינארי שכבר נטען במקום לקובץ הבינארי שנמצא בפועל במיקום היעד.

מאחר שהקבצים הבינאריים המפורטים במפתח הרישום
KnownDLLs
נטענים לזיכרון במהלך האתחול, מתקין העדכונים חייב להחליף את הקובץ הבינארי המשמש כיעד עם הקובץ הבינארי הקבוע לפני שהמחשב מופעל מחדש. לכן, מתקין העדכונים לא יוצר מפתח Pending File Rename Operation כדי להחליף את הקובץ הבינארי במהלך ההפעלה מחדש. במקום זאת, העדכון מעביר את הקובץ הבינארי הנוכחי למיקום זמני, ממקם את הקובץ הבינארי הקבוע במקום שבו היה הקובץ הבינארי הנוכחי ולאחר מכן יוצר מפתח Pending File Rename Operation כדי למחוק את הקובץ הבינארי הנוכחי כאשר המחשב מופעל מחדש.

QChain משפיע רק על מפתח Pending File Rename Operations שבמצע פעולות החלפה של קבצים בינאריים. הוא אינו מבצע כל פעולה במפתח Pending File Rename Operations שמבצע פעולות מחיקה.

כל העדכונים של Windows NT 4.0 וכל העדכונים של Windows 2000 מלפני SP2 משתמשים בפונקציה GetFileVersionInfo לזיהוי הגירסה של קובץ. אם תתקין שני עדכונים או יותר של Windows NT 4.0 או עדכונים של Windows 2000 טרום SP2, והעדכונים מכילים 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 במחשב למיקום זמני ויוצר מפתח Pending File Rename Operation למחיקת הקובץ Kernel32.dll מהמיקום הזמני בפעם הבאה שהמחשב יופעל מחדש.
    • קובץ Kernel32.dll גירסה 3 של חבילה A מועתק למחשב.
  • כאשר חבילה B מותקנת, הפונקציה GetFileVersionInfo עדיין מדווחת כי Kernel32.dll גירסה 1 מותקן במחשב מאחר שהפונקציה GetFileVersionInfo קוראת את פרטי הגירסה מהקובץ Kernel32.dll שנטען בזיכרון. חבילה B כוללת את גירסה 2, ולכן התיקון החם מזהה שקיים צורך בהחלפת קובץ.
    • מתקין העדכונים מעביר את Kernel32.dll שנמצא כעת במחשב (קובץ Kernel32.dll של חבילה A גירסה 3) למיקום זמני ויוצר מפתח Pending File Rename Operation למחיקת הקובץ Kernel32.dll (גירסה 3) מהמיקום הזמני בפעם הבאה שהמחשב יופעל מחדש.
    • קובץ Kernel32.dll גירסה 2 של חבילה B מועתק למחשב.
  • QChain מופעל, אך לא קיים Pending File Rename Operations להחלפת קובץ ולכן QChain לא מבצע כל פעולה.
  • מאחר שחבילה B הותקנה אחרונה, Kernel32.dll גירסה 2 של חבילה B נמצא במיקום הנכון במחשב. לכן, הוא נטען לזיכרון כאשר המחשב מופעל מחדש. המפתח Pending File Rename Operations מוחק הן את קובץ Kernel32.dll גירסה 1 המקורי והן את קובץ Kernel32.dll גירסה 3 של חבילה A. כתוצאה מכך, במחשב מותקן כעת קובץ Kernel32.dll גירסה 2 במקום גירסה 3.
קיים תיקון ל- Windows 2000 שפורסם לאחר SP2 שבו לא נעשה עוד שימוש בפונקציה GetFileVersionInfo ברשימה KnownDLLs הנטענת לזיכרון. במקום זאת, מתקין העדכונים ממפה את הקובץ שנמצא בפועל במיקום היעד ולאחר מכן קורא לפונקציה GetFileVersionInfo בקובץ הממופה. לכן, באפשרותך להשתמש ב- QChain.exe כדי לשרשר יחד עדכונים ל- Windows 2000 שפורסמו לאחר SP2. כאשר תעשה זאת, הגירסה האחרונה של הקובץ מותקנת, ללא תלות בסדר שבו העדכונים מותקנים.

אם תפעיל שוב את התרחיש הקודם, ותשתמש בעדכונים של Windows 2000 שפורסמו לאחר SP2, התיקון החם בחבילה B ימפה את הקובץ Kernel32.dll של חבילה A ויזהה את גירסה 3. גירסה 3 מאוחרת יותר מגירסה 2 של קובץ Kernel32.dll של חבילה B. לכן, חבילה B לא מחליפה את Kernel32.dll שנמצא במערכת, והקובץ Kernel32.dll גירסה 3 של חבילה A הוא הגירסה שבה המחשב משתמש כראוי לאחר שהמחשב מופעל מחדש.

מאפיינים

מספר מאמר: 296861 - סקירה אחרונה: יום שלישי 14 ספטמבר 2010 - עדכון: 16.0
המידע במאמר זה חל על:
  • Microsoft Windows Update
  • Microsoft Update
מילות מפתח 
kbproductlink kbhotfixserver kbqfe kbwindowsupdatev6 kbwindowsupdatev3 kbfile kbgraphxlinkcritical kbinfo KB296861

ספק משוב