Sửa lỗi lệch giờ khi cài dual bôt năm 2024

Lỗi thời gian trên hệ điều hành chạy sai giờ xuất hiện khi bạn cài đặt hai hệ điều hành song song, cụ thể trong trường hợp này là Ubuntu song song với Windows 10. Đồng hồ trên hệ điều hành Windows 10 bị sai lệch khi bạn chuyền từ Ubuntu sang.

Nguyên nhân xuất hiện tình trạng này là do 2 hệ điều hành sử dụng hệ thống giờ khác nhau. Cụ thể trong Windows sử dụng thời gian theo giờ địa phương. Còn trong Linux [Ubuntu] thời gian được tính theo múi giờ quốc tế UTC.

Để khắc phục tình trạng này bạn có hai cách để thực hiện: đó là thiết đặt cho một trong hai hệ điều hành sử dụng thời gian địa phương [Local Time] hoặc quốc tế UTC.

Lưu ý: Bạn chỉ nên sử dụng một trong hai cách bên dưới thôi nhé. Ưu tiên cách chỉnh sửa giờ bên Linux.

Thiết đặt Windows sử dụng giờ quốc tế UTC

Để thực hiện cách này bạn phải vô hiệu hóa tính năng cập nhật thời gian qua internet của Windows 10. Đi đến setting => Time & Language => tắt 2 tùy chọn Set time automatically và Set time zone atumatically

Sau đó tạo một file registry bằng cách mở Notepad nhập vào nội dụng bên dưới và lưu lại với tên bất kỳ, phần mở rộng .reg

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESystemCurrentControlSetControlTimeZoneInformatio] "RealTimeIsUniversal"=dword:00000001

Mở file .reg vừa tạo và chọn Yes khi có thông báo xuất hiện

Sau đó khởi động lại máy tính là bạn đã fix lỗi sai giờ thành công.

Nếu muốn hoàn nguyên lại sự thay đổi trong thiết đặt múi giờ cho Windows, bạn có thể tạo một file .reg tương tự và thay đổi nội dung như sau:

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINESystemCurrentControlSetControlTimeZoneInformation] "RealTimeIsUniversal"=-

Thiết đặt cho Linux [Ubuntu] sử dùng giờ địa phương [Local Time]

Để thiết đặt cho Linux, cụ thể ở đây là Ubuntu sử dụng giờ địa phương [Local Time], áp dụng cho các phiên bản Ubuntu 15.04 trở lên. Đầu tiên hãy mở Terminal trên Ubuntu bằng cách nhấn tổ hợp phím Ctrl + Alt + T. Sau đó nhập vào dòng lệnh sau:

timedatectl set-local-rtc 1

Bạn có thể kiểm tra xem đã thành công chưa bằng lệnh:

timedatectl

Nếu dòng RTC in local TZ là yes thì bạn đã thiết lập thành công.

Sau cùng hãy khởi động lại máy tính và vào Windows trước để cập nhật thời gian. Nếu thời gian vẫn sai, bạn hãy vào setting => Time & Language => tắt và bật lại 2 tùy chọn Set time và Set time zone để Windows cập nhật.

Cái này là do Win mặc định hiểu giờ trong BIOS là theo múi giờ set trong Control Panel thay vì UTC nên sang Mac/Linux sẽ bị lệch giờ

Cách Fix:

Tắt đồng bộ thời gian qua Internet trong Windows [Control Panel -> Date & Time -> Internet Time -> Change Settings] – Đặt chính xác đồng hồ Windows, lưu thiết lập. Khi đó thời gian sẽ được thiết lập vào BIOS. – Chuyển sang Mac, thời gian sẽ bị thay đổi [do Time Zone Việt Nam GMT+07 sẽ thay đổi giờ trong BIOS khiến cho giờ không đúng]. Lúc này vào System Preferences -> Date & Time – Tắt Set Date & Time automatically – Sang mục Time Zone, chỉnh Time Zone sao cho đồng hồ thay đổi về thời gian đúng [mình chỉnh là Ponta Delgada – Portugal, hình như là GMT-01] – Chuyển sang mục Date & Time, bấm Save. Từ đó thời gian trên Mac và Windows sẽ giống với thời gian trong BIOS.

Nếu không được thì dùng cách này:

//www.tonymacx86.com/threads/fix-incorrect-time-in-windows-osx-dual-boot.133719/

Hoặc:

Thủ thuật để đảm bảo giờ trên Windows và Mac luôn chính xác, thậm chí không ảnh hưởng đến nhau khi thay đổi thời gian.

– Trước tiên, khởi động Windows, mở Run gõ Regedit, tìm đến đường dẫn sau:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation.

– Tạo 01 DWORD đặt tên là RealTimeIsUniversal và đặt giá trị là 1. – Sau đó khởi động lại bằng Mac OS X, điều chỉnh thời gian, múi giờ.

Bây giờ quay trở lại Windows, sẽ thấy thời gian trên Windows và Mac giống nhau. Từ giờ bạn sẽ ko phải lo lắng về sai lệch thời gian trên hệ điều hành, thậm chí có thay đổi múi giờ thì cũng ko ảnh hưởng gì cả.

Khi khởi động kép Windows và Linux, bạn có thể nhận thấy rằng không thể đồng bộ hóa đồng hồ hệ thống giữa hai hệ điều hành này. Mặc dù bạn đã thay đổi đồng hồ ở một hệ điều hành nhưng vẫn không khắc phục được vấn đề trên hệ điều hành còn lại. Điều này là do hai hệ điều hành này sử dụng phương pháp định thời thời gian khác nhau. Bài viết này sẽ hướng dẫn các bạn cách khắc phục lỗi Windows và Linux hiển thị thời gian khác nhau khi khởi động kép.

Cách sửa lỗi lệch giờ khi khởi động kép Windows và Linux

Tại sao hai hệ điều hành lại hiển thị thời gian khác nhau?

Máy tính lưu trữ thời gian hiện tại trên đồng hồ trong bo mạch chủ. Điều này cho phép máy tính theo dõi thời gian ngay cả khi tắt máy. Để tính các múi giờ, các hệ điều hành khác nhau sử dụng các phương pháp khác nhau. Windows giả định thời gian máy tính được lưu trữ trong bo mạch chủ, vì vậy nó không áp dụng bất kỳ loại múi giờ nào cả. Mặt khác, Linux sẽ diễn giải thời gian trên bo mạch chủ như UTC [còn gọi là Giờ trung bình tại Greenwich] và áp dụng một múi giờ để hiển thị thời gian trên máy tính.

Cả hai hệ điều hành này hoạt động hoàn toàn độc lập. Vấn đề xảy ra khi người dùng khởi động kép hệ thống, chạy Windows và Linux trên cùng một bo mạch chủ. Khi các hệ điều hành buộc phải chia sẻ một kho thời gian, các đồng hồ sẽ không đồng bộ.

Cách khắc phục lỗi Windows và Linux hiển thị thời gian khác nhau khi khởi động kép

Cách 1: Điều chỉnh để Linux sử dụng thời gian trên máy tính

Phương pháp an toàn nhất để Linux và Windows hiển thị cùng một thời gian là thay đổi phương pháp định thời gian của Linux. Nó hoạt động trên tất cả các bản phân phối của Linux sử dụng systemd, bao gồm Ubuntu, Fedora, Red Hat, Debian và Mint. Thay đổi thời gian của Windows thường hoạt động tốt, nhưng đôi khi nó có thể dẫn đến sự không ổn định trong phần mềm của bên thứ ba.

Mở cửa sổ Terminal và chạy lệnh sau:

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

Lệnh này sẽ nói cho hệ thống sử dụng thời gian lưu trữ của bo mạch chủ như giờ trên máy tính. Linux sẽ không còn áp dụng điều chỉnh múi giờ cho thời gian lưu trữ trên bo mạch chủ. Kết quả là đồng hồ sẽ được đồng bộ. Nếu muốn đảo ngược lệnh, chỉ cần thay đổi 1 thành 0:

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

Cách 2: Điều chỉnh để Windows sử dụng UTC

Bạn cũng có thể thay đổi cách mà Windows xem hệ thống thời gian. Điều chỉnh này sẽ khiến Windows sử dụng thời gian được lưu trữ trên bo mạch chủ như là UTC. Mặc dù phương pháp này nói chung hoạt động tốt, nhưng một số ứng dụng dựa trên thời gian của bo mạch chủ có thể bị ảnh hưởng, do đó, đôi khi khó khăn để theo dõi lỗi.

Bước 1. Vô hiệu hoá "Set time automatically" trong "Time & Language" trong ứng dụng Settings. Điều này sẽ ngăn không cho Windows xóa những thay đổi mà chúng ta sắp thực hiện.

Bước 2. Mở Registry Editor bằng cách gõ regedit vào menu Start.

Bước 3. Tìm key đăng ký sau trong ngăn bên trái của Registry Editor bằng cách dán dòng sau vào thanh địa chỉ của registry editor:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation

Bước 4. Nhấp chuột phải vào key "TimeZoneInformation" trong khung bên trái và chọn "New -> DWORD [32-bit] Value" từ trình đơn ngữ cảnh.

Bước 5. Đặt tên cho giá trị mới là "RealTimeIsUniversal".

Bước 6. Nhấp đúp vào giá trị vừa tạo, đặt giá trị là "1" và nhấp vào "OK".

Cách an toàn nhất để đồng bộ đồng hồ hệ thống trong một hệ thống khởi động kép là điều chỉnh cách Linux sử dụng thời gian. Nếu cách này không hiệu quả [hoặc nếu đang sử dụng macOS thay vì Linux], bạn cũng có thể chỉnh sửa Windows registry để thay đổi cách Windows sử dụng thời gian của bo mạch chủ.

Chủ Đề