نحوه پیکربندی منطقه زمانی در ویندوز #
ویندوز سرور فرض میکند که ساعت بایوس سیستم به طور پیشفرض روی local time تنظیم شده است. با این حال، بسیاری از پلتفرمهای مجازیسازی، از جمله پلتفرمهای مبتنی بر لینوکس یا هایپروایزرها، ساعتهای بایوس را طوری پیکربندی میکنند که به جای آن از UTC استفاده کنند. این عدم تطابق میتواند باعث شود ویندوز تنظیمات زمانی نادرست، مهرهای زمانی نادرست و خرابیهای مربوط به زمان را پس از راهاندازی مجدد اعمال کند.
این مقاله نحوه جلوگیری از رانش زمان را با اعمال یک وصله در سطح رجیستری که به ویندوز میگوید ساعت بایوس را به عنوان UTC در نظر بگیرد، همراه با نکاتی برای هماهنگسازی مناسب زمان توضیح میدهد.
چرا اختلاف زمانی رخ میدهد؟ #
وقتی ویندوز انتظار دارد که بایوس زمان محلی را تنظیم کند اما ساعت سختافزاری روی UTC تنظیم شده باشد، به طور نادرست جبران میکند. این باعث بروز علائمی مانند موارد زیر میشود:
- ساعت بعد از ریبوت شدن به جلو یا عقب میپرد
- وظایف برنامهریزیشده در زمان نامناسب اجرا میشوند
- خطاهای احراز هویت (Kerberos، SSL)
- مهرهای زمانی متناقض در گزارش ها
منطقه زمانی صحیح را تنظیم کنید #
قبل از پچ کردن، میتوانید منطقه زمانی محلی مناسب را با استفاده از رابط گرافیکی تنظیم کنید:
- کلیدهای
Win + R,را فشار دهید، عبارتtimedate.cpl, را تایپ کنید و Enter را بزنید. - روی Change time zone کلیک کنید.
- منطقه زمانی محلی خود را انتخاب کنید و درخواست دهید.
اگر بایوس در حالت UTC باقی بماند، این کار از تغییر ساعت جلوگیری نمیکند.
فعال کردن پشتیبانی از ساعت UTC در بایوس #
برای حل دائمی مشکل، با تغییر رجیستری، پشتیبانی پنهان ویندوز سرور را برای ساعتهای بایوس مبتنی بر UTC فعال کنید.
- Notepad را باز کنید و محتوای زیر را در آن قرار دهید:ini
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation] "RealTimeIsUniversal"=dword:00000001
- فایل را با نام
utc-clock.regذخیره کنید. - روی فایل کلیک راست کرده و Merge را انتخاب کنید.
- برای اعمال تغییر رجیستری، اعلان کنترل حساب کاربری (UAC) را تأیید کنید.
- برای اعمال تنظیمات، سرور را مجدداً راهاندازی کنید.
پیکربندی همگام سازی زمان #
پس از اعمال وصله رجیستری بایوس UTC، ویندوز را طوری پیکربندی کنید که با یک سرور NTP قابل اعتماد همگامسازی شود.
- Command Prompt را به عنوان مدیر (Administrator) باز کنید.
- یک سرور زمان دستی تنظیم کنید.pwsh
w32tm /config /manualpeerlist:"time.windows.com,0x1" /syncfromflags:manual /reliable:yes /update
- سرویس زمان ویندوز را مجدداً راه اندازی کنید.pwsh
net stop w32time && net start w32time
- همگام سازی فوری زمان را اجباری کنید.pwsh
w32tm /resync
- وضعیت همگامسازی را تأیید کنید.pwsh
w32tm /query /status
time.windows.comرا با یک سرور NTP قابل اعتماد مانندpool.ntp.orgیا منبع زمان داخلی سازمان خود جایگزین کنید.
نتیجه گیری #
در این مقاله، شما مشکل تغییر زمان در ویندوز سرور را با روشهای زیر برطرف کردید:
- تنظیم منطقه زمانی صحیح از طریق رابط گرافیکی
- اعمال یک وصله رجیستری برای فعال کردن پشتیبانی از ساعت UTC BIOS
- پیکربندی همگامسازی زمان با یک سرور NTP قابل اعتماد
این تغییرات، زمانبندی ثابت را در طول راهاندازیهای مجدد تضمین میکنند، از مشکلات زمانبندی و احراز هویت جلوگیری میکنند و رفتار ویندوز را با پیکربندیهای BIOS مبتنی بر UTC که اغلب توسط هایپروایزرها یا پلتفرمهای ابری استفاده میشوند، هماهنگ میکنند.