Làm thế nào để sửa chữa Windows và Linux Hiển thị thời gian khác nhau khi khởi động kép

Mục lục:

Làm thế nào để sửa chữa Windows và Linux Hiển thị thời gian khác nhau khi khởi động kép
Làm thế nào để sửa chữa Windows và Linux Hiển thị thời gian khác nhau khi khởi động kép
Anonim
Máy tính của bạn lưu trữ thời gian trong một đồng hồ phần cứng trên bo mạch chủ của nó. Đồng hồ theo dõi thời gian, ngay cả khi máy tính tắt. Theo mặc định, Windows giả định thời gian được lưu trữ trong thời gian cục bộ, trong khi Linux giả định thời gian được lưu trữ trong thời gian UTC và áp dụng một bù đắp. Điều này dẫn đến một trong các hệ điều hành của bạn hiển thị sai thời gian trong tình huống khởi động kép.
Máy tính của bạn lưu trữ thời gian trong một đồng hồ phần cứng trên bo mạch chủ của nó. Đồng hồ theo dõi thời gian, ngay cả khi máy tính tắt. Theo mặc định, Windows giả định thời gian được lưu trữ trong thời gian cục bộ, trong khi Linux giả định thời gian được lưu trữ trong thời gian UTC và áp dụng một bù đắp. Điều này dẫn đến một trong các hệ điều hành của bạn hiển thị sai thời gian trong tình huống khởi động kép.

Để khắc phục điều này, bạn có hai tùy chọn: Làm cho Linux sử dụng thời gian cục bộ hoặc làm cho Windows sử dụng thời gian UTC. Không làm theo cả hai bước hướng dẫn hoặc họ sẽ không nói cùng một ngôn ngữ! Chúng tôi khuyên bạn nên sử dụng Linux để sử dụng giờ địa phương, nếu có thể.

Tùy chọn một: Làm cho Linux sử dụng giờ địa phương

Làm cho Linux sử dụng thời gian cục bộ giống như cách Windows thực hiện có lẽ là lựa chọn tốt nhất. Windows có cài đặt đăng ký buộc nó lưu trữ thời gian dưới dạng UTC, nhưng báo cáo không được hỗ trợ tốt và có thể gây ra sự cố với một số ứng dụng của bên thứ ba luôn cho rằng đồng hồ phần cứng là giờ địa phương. Nó cũng không tương thích với dịch vụ đồng bộ hóa thời gian Internet của Windows.

Các bước để làm cho hệ thống Linux của bạn sử dụng thời gian cục bộ có thể thay đổi từ phân phối Linux sang phân phối Linux. Tuy nhiên, trên bất kỳ phân phối Linux nào với systemd, bạn có thể sử dụng

timedatectl

lệnh để thực hiện thay đổi này. Điều này sẽ làm việc trên các phiên bản hiện đại của Ubuntu, Fedora, Red Hat, Debian, Mint và các bản phân phối Linux khác sử dụng systemd.

Để thực hiện thay đổi này, trước tiên hãy mở một cửa sổ Terminal trên hệ thống Linux của bạn. Chạy lệnh sau để đặt đồng hồ thời gian thực trên bo mạch chủ vào giờ địa phương. Linux sẽ lưu trữ thời gian theo giờ địa phương, giống như Windows.

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

Để kiểm tra cài đặt hiện tại của bạn, hãy chạy:
Để kiểm tra cài đặt hiện tại của bạn, hãy chạy:

timedatectl

Nếu bạn thấy “RTC trong TZ cục bộ: có”, Linux được đặt để sử dụng múi giờ địa phương thay vì UTC. Lệnh cảnh báo bạn rằng chế độ này không được hỗ trợ đầy đủ và có thể gây ra một số vấn đề khi thay đổi giữa các múi giờ và với thời gian tiết kiệm ánh sáng ban ngày. Tuy nhiên, chế độ này có lẽ được hỗ trợ tốt hơn tùy chọn UTC trong Windows. Nếu bạn khởi động kép với Windows, Windows sẽ xử lý thời gian tiết kiệm ánh sáng ban ngày cho bạn.

Nếu bạn muốn hoàn tác thay đổi này, hãy chạy lệnh sau:
Nếu bạn muốn hoàn tác thay đổi này, hãy chạy lệnh sau:

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

Image
Image

Tùy chọn hai: Sử dụng thời gian UTC của Windows

Làm cho Windows sử dụng thời gian UTC như Linux có lẽ không phải là lựa chọn tốt nhất. Bạn có thể chỉnh sửa registry để làm cho Windows sử dụng thời gian UTC, nhưng điều này có khả năng có thể gây ra nhiều vấn đề hơn là chỉ làm cho Linux sử dụng thời gian cục bộ.

Nếu bạn muốn thực hiện việc này, trước tiên bạn sẽ muốn tắt tính năng cập nhật thời gian Internet trên Windows. Điều này đảm bảo Windows sẽ không đặt đồng hồ không chính xác khi cố gắng đồng bộ hóa thời gian hiện tại từ Internet. Trên Windows 10, đi tới Cài đặt> Thời gian và ngôn ngữ và tắt "Đặt thời gian tự động". Trên Windows 7, nhấp chuột phải vào đồng hồ hệ thống trên thanh tác vụ và chọn “Điều chỉnh ngày / giờ”. Nhấp vào tab "Thời gian Internet", nhấp vào nút "Thay đổi cài đặt", bỏ chọn tùy chọn "Đồng bộ hóa với máy chủ thời gian Internet" và nhấp vào "OK".

Image
Image

Làm cho Windows sử dụng thời gian UTC bằng cách chỉnh sửa Registry

Bây giờ bạn sẽ cần thêm giá trị thích hợp vào Windows registry. Đây là cảnh báo tiêu chuẩn của chúng tôi: Registry Editor là một công cụ mạnh mẽ và lạm dụng nó có thể khiến hệ thống của bạn không ổn định hoặc thậm chí không thể hoạt động. Đây là một hack khá dễ dàng và bạn không nên gặp bất kỳ vấn đề nào miễn là bạn làm theo hướng dẫn. Điều đó nói rằng, nếu bạn chưa bao giờ làm việc với nó trước đây, hãy xem xét đọc về cách sử dụng Registry Editor trước khi bạn bắt đầu. Và chắc chắn sao lưu Registry (và máy tính của bạn!) Trước khi thực hiện thay đổi.

Đầu tiên, mở Registry Editor bằng cách kích Start, đánh “regedit” và nhấn Enter. Đồng ý với lời nhắc bảo mật xuất hiện.

Điều hướng đến khóa sau trong ngăn bên trái của trình chỉnh sửa đăng ký:
Điều hướng đến khóa sau trong ngăn bên trái của trình chỉnh sửa đăng ký:

HKEY_LOCAL_MACHINESystemCurrentControlSetControlTimeZoneInformation

Trên các phiên bản mới nhất của Windows 10, bạn có thể sao chép và dán dòng trên vào hộp địa chỉ. Tuy nhiên, bản hack này cũng sẽ hoạt động trên Windows 7.

Nhấn chuột phải vào khóa “TimeZoneInformation” và chọn New> DWORD (32-bit) Value.
Nhấn chuột phải vào khóa “TimeZoneInformation” và chọn New> DWORD (32-bit) Value.
Đặt tên cho giá trị mới của bạn
Đặt tên cho giá trị mới của bạn

RealTimeIsUniversal

Nhấp đúp vào
Nhấp đúp vào

RealTimeIsUniversal

giá trị bạn vừa tạo, đặt là dữ liệu giá trị

1

và nhấp vào “OK”.

Bạn đã hoàn tất và bạn có thể đóng Trình chỉnh sửa đăng ký. Windows sẽ lưu trữ thời gian trong UTC, giống như Linux.

Nếu bạn muốn hoàn tác thay đổi này, hãy quay lại vị trí này trong sổ đăng ký, nhấp chuột phải vào
Nếu bạn muốn hoàn tác thay đổi này, hãy quay lại vị trí này trong sổ đăng ký, nhấp chuột phải vào

RealTimeIsUniversal

giá trị bạn đã thêm và xóa nó khỏi sổ đăng ký của bạn.

Tải xuống One-Click Registry Hack của chúng tôi

Nếu bạn không muốn tự mình chỉnh sửa đăng ký, bạn có thể sử dụng bản đăng ký có thể tải xuống của chúng tôi. Chúng tôi đã tạo một bản hack khiến Windows sử dụng thời gian UTC và một bản khôi phục lại thời gian địa phương. Cả hai đều được bao gồm trong tệp ZIP sau. Chỉ cần tải xuống tệp, nhấp đúp vào bản hack bạn muốn sử dụng và đồng ý thêm thông tin vào sổ đăng ký của bạn.
Nếu bạn không muốn tự mình chỉnh sửa đăng ký, bạn có thể sử dụng bản đăng ký có thể tải xuống của chúng tôi. Chúng tôi đã tạo một bản hack khiến Windows sử dụng thời gian UTC và một bản khôi phục lại thời gian địa phương. Cả hai đều được bao gồm trong tệp ZIP sau. Chỉ cần tải xuống tệp, nhấp đúp vào bản hack bạn muốn sử dụng và đồng ý thêm thông tin vào sổ đăng ký của bạn.

Sử dụng thời gian UTC của Windows

Các hacks trên làm điều tương tự chúng tôi mô tả ở trên. Việc sử dụng Windows UTC Time hack của Windows sẽ tạo ra mục nhập “RealTimeIsUniversal” với giá trị “1”, trong khi việc sử dụng Windows Time Local Hack sẽ xóa mục nhập “RealTimeIsUniversal”.

Nếu bạn muốn xem tập tin.reg hoặc bất kỳ tệp.reg nào khác, hãy bấm chuột phải vào nó và chọn "Chỉnh sửa" để xem tệp trong Notepad. Bạn có thể dễ dàng tạo các hacks đăng ký của riêng mình, chỉ bao gồm danh sách các mục đăng ký để thêm, chỉnh sửa và xóa trong danh sách được định dạng đúng.

Điều gì về Windows khởi động kép trên máy Mac?

Mặc dù MacOS của Apple sử dụng thời gian UTC như Linux, bạn không cần phải làm bất cứ điều gì đặc biệt khi chạy Windows trong Boot Camp trên máy Mac. Trình điều khiển Boot Camp của Apple xử lý mọi thứ. (Tuy nhiên, hai máy khởi động Hackintosh là một câu chuyện khác và sẽ phải thử sử dụng tinh chỉnh Windows registry ở trên.)

Nếu bạn tự hỏi tại sao Windows sử dụng thời gian cục bộ thay vì UTC như các hệ điều hành khác, blog chính thức của Microsoft The Old New Thing giải thích tại đây. Tóm lại, nó là để bảo vệ tính tương thích ngược với các hệ thống Windows 3.1 và để ngăn chặn mọi người bối rối khi họ đặt thời gian trong BIOS của máy tính. Tất nhiên, các nhà sản xuất PC đã chọn thời gian địa phương để tương thích với Windows và Windows chọn thời gian địa phương để tương thích với các nhà sản xuất PC quyết định đã chọn, vì vậy chu kỳ trở nên tự tăng cường.

Hiện tại không có tiêu chuẩn để ghi nhãn cho dù thời gian được lưu trữ dưới dạng UTC hay giờ địa phương trong phần vững BIOS hay UEFI, đây có thể là giải pháp hợp lý nhất. Nhưng nó sẽ đòi hỏi một số công việc, và hầu hết mọi người sẽ không bao giờ nhận thấy các hệ điều hành khác nhau sử dụng các định dạng thời gian khác nhau - ngoại trừ trong cấu hình khởi động kép.

Đề xuất: