פתרון בעיות באתחול מכונות של Compute Engine עם Windows

במאמר הזה נסביר למה מכונה של Windows Server ב-Compute Engine לא מצליחה לבצע הפעלה, ואיך לפתור בעיות נפוצות.

בדרך כלל, כשמכונה וירטואלית ב-Google Compute Engine שמריצה Windows לא מצליחה לבצע אתחול, מופיעים התסמינים הבאים:

  • מכונת החישוב במצב RUNNING, אבל אי אפשר להתחבר אליה באמצעות RDP.
  • ביציאה טורית 1 מוצגים רק קווים של קושחה וסוכן אורח, והסוכן האורח אף פעם לא מדווח שהוא מוכן.
  • בשיטה Serial port 2 מוצג מסך שגיאה של Windows Boot Manager או שגיאת STOP.

אם המכונה הווירטואלית מסיימת את האתחול אבל אי אפשר להתחבר אליה, כדאי לעיין במאמר בנושא פתרון בעיות ב-RDP.

לפני שמתחילים

  • מוודאים שמופע Compute כותב פלט ליציאות טוריות 1 ו-2. פלט של יציאה טורית זמין בזמן שהמכונה לחישובים פועלת. כדי לשמור אותו אחרי שהמכונה לחישובים מפסיקה לפעול, צריך להפעיל את הרישום ביומן של היציאה הטורית ב-Cloud Logging. מידע נוסף זמין במאמר בנושא צפייה בפלט של יציאה טורית.
  • אם עדיין לא עשיתם את זה, תצטרכו להגדיר אימות. אימות הוא תהליך שבו מאמתים את הזהות שלכם כדי לקבל גישה לממשקי API ולשירותים של Google Cloud . כדי להריץ קוד או דוגמאות מסביבת פיתוח מקומית, אפשר לבצע אימות ל-Compute Engine באחת מהדרכים האלה:
    1. התקינו את ה-CLI של Google Cloud. אחר כך, מאתחלים את ה-CLI של Google Cloud באמצעות הפקודה הבאה:

      gcloud init

      אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

    2. הגדרת אזור ותחום כברירת מחדל

זיהוי אוטומטי של הסיבה

מריצים את פקודת האבחון של האתחול. במכונה וירטואלית ב-Google Compute Engine שמריצה Windows, הכלי קורא את היציאה הטורית 2, מדווח על הסיבה הסבירה ביותר ומקשר לקטע התואם במסמך הזה:

כדי להשתמש בפקודה הזו, צריך לוודא שהתקנתם את הרכיב פקודות אלפא.

gcloud alpha compute diagnose boot INSTANCE_NAME --zone=ZONE

מחליפים את מה שכתוב בשדות הבאים:

  • ‫INSTANCE_NAME: השם של מכונת ה-Compute.
  • ‫ZONE: האזור שבו נמצאת המכונה של Compute Engine.

קריאת הפלט של המסוף הסדרתי

כדי לקרוא את המסך של מנהל האתחול או את שגיאת STOP בעצמכם, קוראים את יציאת הטורית 2:

המסוף

  1. נכנסים לדף VM instances במסוף Google Cloud .

    לדף VM instances

  2. בוחרים את המכונה שרוצים לראות את הפלט של היציאה הטורית שלה.

  3. בקטע Logs, לוחצים על Serial port 2 (console)‎.

gcloud

gcloud compute instances get-serial-port-output INSTANCE_NAME --zone=ZONE --port=2

מחליפים את מה שכתוב בשדות הבאים:

  • ‫INSTANCE_NAME: השם של מכונת ה-Compute.
  • ‫ZONE: האזור שמכיל את מכונת ה-Compute.

במסך Boot Manager יש שורה של Status: עם קוד כמו 0xc000000e, ושורה של Info: שמתארת את הכשל. שגיאת STOP מכילה את קוד ה-STOP ואת השם שלו, לדוגמה INACCESSIBLE_BOOT_DEVICE.

כדי לפתוח את התפריט Windows Boot Manager או את תפריט אפשרויות האתחול המתקדמות באתחול הבא, אפשר לעיין במאמר פתרון בעיות במכונות וירטואליות של Windows.

בעיות נפוצות בהפעלה

בקטעים הבאים מפורטות שגיאות נפוצות בהפעלה של מכונות וירטואליות ב-Google Compute Engine שמריצות Windows, החתימות שלהן ביציאה טורית 2 ואיך לפתור אותן. ברוב המקרים צריך לצרף את דיסק האתחול למכונת שחזור, כמו שמתואר במאמר תיקון הדיסק במצב אופליין.

אי אפשר להפעיל את Windows דרך מנהל האתחול של Windows

תיאור הבעיה: ב-יציאה טורית 2 מופיע מסך השגיאה של Windows Boot Manager:

Windows failed to start. A recent hardware or software change might be the cause.
Status: 0xc000000e
Info: A required device isn't connected or can't be accessed.

קוד הסטטוס מזהה את הסיבה הספציפית:

סטטוס משמעות
0xc000000e, 0xc0000001 נתוני ההגדרה של האתחול (BCD) מצביעים על מכשיר אתחול שהקושחה לא יכולה לגשת אליו. הבעיה הזו נפוצה אחרי שחזור דיסק, שיבוט דיסק או שינוי בהגדרת הדיסק.
0xc0000225, 0xc000000f טוען האתחול או רשומת ה-BCD שלו חסרים או לא תקינים.
0xc000014c,‏ 0xc0000034,‏ 0xc0000098,‏ 0xc0000102 מאגר ה-BCD חסר, לא שלם או פגום.

הסיבה: מנהל האתחול נטען, אבל ה-BCD לא מתאר התקנה של Windows שניתן לאתחל.

פתרון: צריך לצרף את הדיסק ל-VM לשחזור ולתקן את הגדרת האתחול באמצעות כלי התיקון של Windows, בהתאם לתיעוד של מיקרוסופט בנושא פתרון בעיות מתקדם בהפעלת Windows עבור קוד הסטטוס שמוצג. תוכלו לעיין במאמר בנושא תיקון הדיסק במצב אופליין. אם אי אפשר לבנות מחדש את הגדרות האתחול, צריך לשחזר את הדיסק מקובץ snapshot.

BOOTMGR is missing

התופעה: ביציאה טורית 2 מופיע BOOTMGR is missing. Press Ctrl+Alt+Del to restart. ההודעה הזו מופיעה רק בתמונות של מערכת הפעלה שמשתמשות באתחול BIOS.

הסיבה: קובץ מנהל האתחול חסר במחיצת המערכת.

פתרון: מצרפים את הדיסק למכונה וירטואלית לשחזור ומשחזרים את קובצי האתחול באמצעות כלי התיקון של Windows בזמן ההפעלה, בהתאם לתיעוד של מיקרוסופט בנושא פתרון בעיות מתקדם בהפעלה של Windows. תוכלו לעיין במאמר בנושא תיקון הדיסק במצב אופליין.

STOP 0x7B INACCESSIBLE_BOOT_DEVICE

התופעה: ביציאה טורית 2 מוצגת שגיאת STOP עם השם INACCESSIBLE_BOOT_DEVICE.

הסיבה: מערכת Windows מצאה את עוצמת האתחול, אבל אין לה גישה לעוצמה כי מנהל ההתקן של האחסון עבור בקר הדיסק חסר או מושבת. השגיאה הזו נפוצה אחרי שינוי בממשק הדיסק, למשל מ-SCSI ל-NVMe, אחרי עדכון של מנהל התקן של אחסון או אחרי שחזור ממופע שונה של מחשוב.

פתרון: מאפסים את מכונת החישוב פעם אחת. לרוב, כשל זמני נפתר. אם השגיאה חוזרת, צריך לצרף את הדיסק למכונה וירטואלית לשחזור ולהפעיל או להתקין מחדש את מנהל ההתקן של האחסון עבור ממשק הדיסק של מופע החישוב בהתקנה אופליין. הוראות לאיתור, להסרה או לעדכון של מנהל ההתקן בהתקנה במצב אופליין מופיעות במאמר פתרון בעיות מתקדם של שגיאות קוד עצירה או מסך כחול.

STOP 0xED UNMOUNTABLE_BOOT_VOLUME

הסימפטום: ביציאה הטורית 2 מוצגת שגיאת עצירה שנקראת UNMOUNTABLE_BOOT_VOLUME.

הסיבה: המטא-נתונים של NTFS בכרך האתחול פגומים, או שלא ניתן לקרוא את הדיסק.

פתרון: מחברים את הדיסק למכונת VM לשחזור, ובודקים ומתקנים את עוצמת הקול כמו שמתואר במאמר בנושא השלמת תיקון אופליין. אם אי אפשר לתקן את אמצעי האחסון, צריך לשחזר את הדיסק מתמונת מצב.

שגיאות STOP אחרות

תסמין: ביציאה טורית 2 מוצגת שגיאת עצירה, לדוגמה CRITICAL_PROCESS_DIED, SYSTEM_THREAD_EXCEPTION_NOT_HANDLED או קוד עצירה כמו *** STOP: 0x0000007E.

הסיבה: תהליך מערכת נדרש הסתיים, מנהל התקן העלה חריגה שהליבה לא הצליחה לטפל בה, או שהתרחשה שגיאת ליבה אחרת. בשורת ה-STOP בדרך כלל מופיע השם של קובץ מנהל ההתקן של .sys שגרם לשגיאה.

פתרון: מאפסים את מכונת החישוב פעם אחת. אם השגיאה חוזרת, צריך לקרוא את מעקב המחסנית המלא כפי שמתואר במאמר פתרון בעיות של שגיאות במסך הכחול, ואז לתקן את קובצי המערכת או להסיר את מנהל ההתקן או העדכון שמופיעים בשורה STOP ממכונה וירטואלית לשחזור, כפי שמתואר במאמר השלמת תיקון אופליין.

תיקון הדיסק במצב אופליין

כדי לתקן את רוב בעיות האתחול של Windows, צריך לצרף את דיסק האתחול למכונת שחזור וירטואלית כדיסק נתונים ולהריץ עליו את כלי התיקון של Windows. איך משלימים תיקון אופליין

הפתרונות שמופיעים במסמך הזה מניחים שדיסק האתחול המקורי מצורף למכונה וירטואלית לשחזור. לפני שמחליפים את הדיסק, כדאי ליצור snapshot כדי שתוכלו לשחזר אותו אם התיקון ייכשל. ההליך מפורט במאמר יצירת קובצי snapshot של דיסקים רגילים ושל דיסקים בארכיון.

אם אי אפשר לתקן את הדיסק, משחזרים את המכונה הווירטואלית

אם אף אחת מההצעות לפתרון לא עוזרת, צריך לשחזר את דיסק האתחול מ-snapshot, או ליצור מופע חדש של Compute מ-snapshot או מתמונה של מערכת הפעלה בהתאמה אישית ולהעביר אליו את הנתונים.

המאמרים הבאים