علت خاموشی ویندوز سرور

خاموشی و ری‌استارت غیرمنتظره ویندوز سرور معمولا به دلایلی مانند خطاهای نرم‌افزاری، کمبود منابع، یا برنامه‌ریزی آپدیت‌های خودکار رخ می‌دهد. برای ریشه‌یابی دقیق این مشکل، باید لاگ‌های سیستم را از طریق ابزار Event Viewer یا محیط خط فرمان PowerShell بررسی کنید.

عیب‌یابی از طریق ابزار Event Viewer

ابزار Event Viewer گزارش تمام رخدادهای سیستم‌عامل را لاگ می‌کند. برای بررسی لاگ‌های مربوط به خاموشی مراحل زیر را طی کنید:

  1. با فشردن کلیدهای ترکیبی Windows + R محیط Run را باز کنید.
  2. عبارت eventvwr را وارد کرده و OK را بزنید.
  3. از منوی سمت چپ، به مسیر Windows Logs > System بروید.
  4. از منوی سمت راست روی گزینه Filter Current Log کلیک کنید.
  5. در بخش <All Event IDs>، شناسه‌های مربوط به خاموشی (که در بخش بعدی معرفی شده‌اند) را وارد کرده و OK را بزنید تا لاگ‌ها فیلتر شوند.
  6. با کلیک روی هر لاگ، جزئیات آن و کاربری که درخواست را صادر کرده در کادر پایینی (بخش General) نمایش داده می‌شود.

شناسه‌های کلیدی خاموشی (Event IDs)

هنگام فیلتر کردن لاگ‌ها، به دنبال این شناسه‌های اصلی باشید:

  • شناسه 41: نشان‌دهنده ری‌استارت شدن سرور بدون خاموشی صحیح است (مانند قطعی ناگهانی اتصال یا کرش کردن هسته سیستم‌عامل در اثر مصرف بیش از حد منابع).

  • شناسه 1074: نشان‌دهنده ثبت درخواست Shutdown یا Restart توسط یک کاربر یا نرم‌افزار است. با بررسی جزئیات این لاگ متوجه می‌شوید کدام کاربر یا پروسه این دستور را صادر کرده است. نمونه لاگ ثبت‌شده برای این شناسه (خاموشی ناگهانی توسط کاربر):

The process C:WindowsSystem32RuntimeBroker.exe has initiated the power off of computer WIN-TEST on behalf of user WIN-TESTAdministrator for the following reason: Other (Unplanned)
Reason Code: 0x5000000
Shutdown Type: power off

  • شناسه 1076: زمانی ثبت می‌شود که پس از یک خاموشی غیرمنتظره، ادمین وارد سرور شده و ویندوز از او علت خاموشی قبلی را جویا می‌شود. پاسخ کاربر در این شناسه ذخیره می‌گردد. نمونه لاگ ثبت‌شده برای این شناسه:

The reason supplied by user WIN-TESTAdministrator for the last unexpected shutdown of this computer is: Other (Unplanned)

  • شناسه 6005: نشان‌دهنده استارت‌آپ سیستم و روشن شدن سرویس Event Log است.

  • شناسه 6006: نشان‌دهنده خاموش شدن صحیح و کنترل‌شده سرور است.

  • شناسه 6008: نشان‌دهنده خاموشی در شرایط غیرعادی است (معمولا بلافاصله بعد از لاگ‌های شناسه 41 ثبت می‌شود).

مشاهده رخدادها در PowerShell

برای دسترسی سریع‌تر به لاگ‌های خاموشی بدون نیاز به درگیری با محیط گرافیکی، می‌توانید دستور زیر را در PowerShell اجرا کنید. این کامند آخرین رخدادهای حیاتی مربوط به خاموشی را به همراه جزئیات برای شما لیست می‌کند:

Get-WinEvent -FilterHashtable @{LogName='System'; ID=1074,41,6008,1076} | Format-List

دلایل رایج خاموشی سرور

با بررسی لاگ‌های استخراج شده، معمولا به یکی از نتایج زیر می‌رسید:

  • اپدیت خودکار ویندوز: ویندوز سرور به صورت پیش‌فرض اپدیت‌ها را دانلود کرده و در زمان کاهش بار ترافیکی، سرور را برای نصب ری‌استارت می‌کند. نمونه لاگ ثبت‌شده برای ری‌استارت ناشی از اپدیت:

The process C:Windowssystem32svchost.exe (WIN-TEST) has initiated the restart of computer WIN-TEST on behalf of user NT AUTHORITYSYSTEM for the following reason: Operating System: Service pack (Planned)
Reason Code: 0x80020010
Shutdown Type: restart

  • خطای سیستم‌عامل در پی مشکل منابع: اگر نرم‌افزاری تمام منابع CPU یا RAM را درگیر کند، سیستم برای جلوگیری از آسیب بیشتر کرش کرده و به اجبار ری‌استارت می‌شود. این مورد با شناسه 41 لاگ می‌شود.

  • اشتباهات عملیاتی: اجرای کامندهای مخرب در خط فرمان، تغییرات غیراصولی رجیستری یا کلیک تصادفی ادمین روی گزینه Shutdown.

  • اختلالات زیرساخت: در موارد بسیار نادر، در صورتی که در لاگ‌ها اثری از خطاهای نرم‌افزاری یا آپدیت نبود، لاگ‌ها را استخراج کرده و از طریق تیکت برای بررسی بیشتر به پشتیبانی فنی پارس‌پک ارسال کنید.