کامپیوتر شما زمان را در یک ساعت سخت افزاری برروی مادربرد خود ذخیره می‌کند. ساعت حتی وقتی کامپیوتر خاموش است، زمان را دنبال می‌کند. به طور پیش فرض، ویندوز ساعت خود را براساس زمان محلی تنظیم و ذخیره می‌کند، در حالی که لینوکس براساس ساعت جهانی UTC تنظیم و ذخیره می‌نماید و سپس تفاوت آن را با ساعت محلی اعمال می‌کند. این باعث می‌شود در وضعیت بوت دوگانه، زمان اشتباه را نشان دهد.

 

این مطلب نیز ممکن است برای شما مفید باشد: نصب ابونتو در کنار ویندوز

 

برای رفع این مشکل، دو گزینه دارید: کاری کنید که Linux از ساعت محلی استفاده کند یا اینکه کاری کنید که ویندوز از ساعت جهانی UTC استفاده کند. دقت کنید که فقط یکی از این دو گزینه را باید اجرا کنید در غیر اینصورت همچنان مشکل پابرجا خواهد ماند. در این جا ما توصیه می‌کنیم در صورت امکان تنظیمات ساعت لینوکس را تغییر دهید.

 

گزینه اول: ساعت لینوکس براساس زمان محلی تنظیم کنید

تنظیم ساعت لینوکس بر مبنای زمان محلی (همان روشی که ویندوز انجام می‌دهد) بهترین گزینه است. اگرچه ویندوز یک تنظیم رجیستری دارد؛ که باعث می‌شود، ویندوز هم بتواند زمان را به صورت UTC ذخیره کند؛ ولیکن این مبنا طبق گزارش‌ها، توسط تمام برنامه‌های نصب شده در ویندوز پشتیبانی نمی‌شود و می‌تواند در برخی برنامه‌های شخص ثالث که همیشه فرض می‌کنند، ساعت سخت افزاری بر مبنای زمان محلی است، مشکل ایجاد کند. علاوه بر این، با سرویس همگام سازی زمان اینترنت در ویندوز سازگار نیست.

مراحل تغییر مبنای ساعت سیستم لینوکس می‌تواند از یک توزیع لینوکس تا توزیع دیگر لینوکس متفاوت باشد. با این حال، در هر توزیع لینوکس با  استفاده از systemd، می‌توانید از دستور timedatectl برای ایجاد این تغییر استفاده کنید. این کار، روی نسخه‌های جدید Ubuntu، Fedora، Red Hat، Debian، Mint و سایر توزیع‌های لینوکسی که از systemd استفاده می‌کنند، کار خواهد کرد.

برای اعمال این تغییر، ابتدا یک پنجره ترمینال در سیستم لینوکس خود باز کنید. دستور زیر را اجرا کنید؛ تا زمان واقعی در مادربرد برروی زمان محلی تنظیم شود. در این صورت، لینوکس دقیقا همانند ویندوز، زمان را به وقت محلی ذخیره می‌کند.

timedatectl set-local-rtc 1 --adjust-system-clock

برای بررسی تنظیمات فعلی خود، دستور زیر را اجرا نمایید:

timedatectl

اگر عبارت “RTC in local TZ: yes” نمایش داده شد، ساعت لینوکس بدین صورت تنظیم شده است؛ که به جای UTC از منطقه زمانی محلی استفاده کند. با این حال، این دستور به شما هشدار می‌دهد؛ که این حالت به طور کامل پشتیبانی نمی‌شود و می‌تواند هنگام تغییر بین مناطق زمانی و یا در زمانی که حالت Daylight Saving فعال است، باعث رخداد مشکلاتی شود. با این حال، این حالت احتمالاً بهتر از اعمال گزینه UTC در ویندوز عمل می‌کند؛ چراکه در حالتی که برروی سیستم شما هر دو سیستم عامل ویندوز و لینوکس قرار دارد، زمانی که ویندوز بوت می‌شود، حالت Daylight Saving برای شما تنظیم می‌شود.

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

timedatectl set-local-rtc 0 --adjust-system-clock

گزینه دوم: ساعت ویندوز را براساس زمان UTC تنظیم کنید

تنظیم ساعت ویندوز براساس زمان UTC به خوبی گزینه اول نیست. در این روش، شما می‌توانید رجیستری را ویرایش کنید تا ویندوز از زمان UTC استفاده کند، اما این کار می‌تواند باعث ایجاد مشکلات بیشتری نسبت به مشکلات اجرای گزینه اول شود.

با این حال اگر می‌خواهید این کار را انجام دهید، ابتدا باید ویژگی بروزرسانی زمان اینترنت را در ویندوز غیرفعال کنید. این تضمین می‌کند که ویندوز هنگام تلاش برای همگام سازی زمان فعلی از اینترنت، ساعت را براساس زمان محلی تنظیم نکند. برای این کار، در ویندوز 10، در تنظیمات، به بخش زمان و زبان (Time & language) بروید و گزینه "تنظیم خودکار زمان (Set time automatically)" را غیرفعال کنید. در ویندوز 7، روی ساعت سیستم در نوار وظیفه راست کلیک کرده و گزینه "تنظیم تاریخ/زمان (Adjust date/time)" را انتخاب کنید. سپس بخش "زمان اینترنت (Internet Time)" را انتخاب نموده، بر روی دکمه "تغییر تنظیمات (Change Settings)" کلیک کنید، تیک گزینه "همگام سازی با سرور ساعت اینترنت (Synchronize with an Internet time serve)" را بردارید و بر روی گزینه "OK" کلیک کنید.

تغییر مبنای ساعت ویندوز به زمان UTC با ویرایش رجیستری

اکنون باید مقدار مناسب را به رجیستری ویندوز اضافه کنید. دقت کنید که ویرایشگر رجیستری یک ابزاری قدرتمندی است و سوء استفاده از آن می‌تواند سیستم شما را ناپایدار یا حتی غیرقابل استفاده کند. این یک ترفند بسیار آسان است؛ ولیکن تا زمانی که دستورالعمل‌ها را دنبال می‌کنید، مشکلی پیش نخواهد آمد. اگر قبلاً با ویرایشگر رجیستری کار نکرده اید، قبل از شروع فرایند، در مورد نحوه استفاده از ویرایشگر رجیستری مطالعه نمایید و قطعاً قبل از اعمال تغییرات، از رجیستری و کامپیوتر خود یک نسخه پشتیبان تهیه کنید.

برای شروع فرآیند، ابتدا با کلیک بر روی Start، ویرایشگر رجیستری را باز کرده، عبارت “regedit” را تایپ نمایید و Enter را فشار دهید. سپس قوانین امنیتی نشان داده شده را قبول کنید.

به کلید زیر در کادر سمت چپ ویرایشگر رجیستری بروید:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation

در جدیدترین نسخه‌های ویندوز 10، می‌توانید خط بالا را در کادر آدرس کپی کنید.

این ترفند در ویندوز 7 نیز قابل اجرا است. برای انجام آن به صورت زیر عمل نمایید.

بر روی کلید "TimeZoneInformation" راست کلیک کرده وگزینه New و سپس DWORD(32-bit) Value انتخاب کنید.

مقدار جدید خود را RealTimeIsUniversal نامگذاری کنید.

روی مقدار RealTimeIsUniversal که اخیراً ایجاد کرده اید، دو بار کلیک کرده و پارامتر Value data را با 1 مقداردهی نمایید. سپس"OK" را کلیک کنید.

اکنون کار شما تمام شده است و می‌توانید ویرایشگر رجیستری را ببندید. ویندوز زمان را براساس UTC ذخیره می‌کند، دقیقاً مانند کاری که سیستم عامل لینوکس انجام می‌دهد.

برای اینکه این تغییر را به حالت قبل برگردانید، باید به این مکان در رجیستری برگردید، روی مقدار RealTimeIsUniversal که اضافه کردید، راست کلیک کنید و آن را از رجیستری خود حذف نمایید.

تغییر مبنای ساعت با دانلود یک فایل رجیستری آماده

اگر نمی‌خواهید رجیستری را خودتان ویرایش کنید، می‌توانید از یک فایل رجیستری آماده استفاده کنید. در این جا یک فایل رجیستری آماده ارائه شده است؛ که فرآیند لازم برای تغییر مبنای ساعت ویندوز به وقت جهانی UTC را اجرا می‌نماید و یک فایل دیگر نیز وجود دارد؛ که آن را به زمان محلی بازیابی می‌کند. برای این کار، فایل زیپ آن دو را دانلود کرده و برروی فایل رجیستری مورد نظر خود دوبار کلیک نمایید. سپس با اضافه کردن اطلاعات به رجیستری خود موافقت کنید.

آن‌ها همان کاری را انجام می‌دهند، که در بالا توضیح دادیم. فایل رجیستری تغییر دهنده به ساعت جهانی UTC پارامتر "RealTimeIsUniversal" ایجاد کرده و آن را با مقدار "1" مقداردهی می‌نماید، در حالی که فایل رجیستری تغییر دهنده به ساعت محلی، پارامتر "RealTimeIsUniversal" را حذف می‌کند.

اگر زمانی بخواهید ببینید که این فایل‌های رجیستری یا هر فایل با پسوند reg. چه کاری انجام می‌دهد، روی آن کلیک راست کرده و "Edit" را انتخاب کنید؛ تا آن را در Notepad مشاهده نمایید. شما می‌توانید به راحتی فایل‌های رجیستری خود را شامل لیستی از پارامترهای رجیستری ایجاد کنید؛ تا بتوانید در یک لیست با فرمت واضح آن‌ها را اضافه، ویرایش و حذف کنید.

حل مشکل اختلاف زمان برای بوت دوگانه ویندوز و Mac

اگرچه سیستم عامل macOS اپل؛ مانند لینوکس از مبنای زمان UTC استفاده می‌کند؛ ولیکن لازم نیست هنگام اجرای ویندوز در بوت Mac، کار خاصی انجام دهید. درایورهای Boot Camp اپل همه چیز را کنترل می‌کند.

 

 

منبع:

howtogeek