Technical Anshu Strona główna › Poradniki › Naprawa czasu Ubuntu
🕐 Poprawka czasu Ubuntu

Napraw problemy z czasem w Ubuntu — rozwiąż problemy z synchronizacją

Ubuntu pokazuje zły czas, a losowe ustawienia nie naprawiają tego na długo. Naucz się systemu dwóch zegarów, przeczytaj jeden ekran timedatectl, dopasuj swój wzór do prawdziwej przyczyny – podwójnego rozruchu, NTP, strefy czasowej lub wyczerpującej się baterii CMOS – i napraw to.

✍️ Technical Anshu🐧 Ubuntu🎧 Multi-Language Audio
Napraw problemy z czasem w Ubuntu — rozwiąż problemy z synchronizacją
🎧 Wielojęzyczny dźwięk: W odtwarzaczu wideo kliknij [Ustawienia] (⚙️) ➔ [Ścieżka dźwiękowa], aby wybrać język.

📑Rozdziały

  1. Dlaczego Ubuntu pokazuje zły czas – dwa zegary w komputerze
  2. Przeczytaj jeden ekran timedatectl, zanim cokolwiek zmienisz
  3. Dopasuj swój wzór do prawdziwej przyczyny – podwójnego rozruchu, NTP, strefy czasowej lub baterii CMOS
  4. Włącz internetową synchronizację czasu (NTP) i sprawdź, czy działa
  5. Ustaw prawidłowo strefę czasową, podając dokładną nazwę strefy
  6. Podwójny rozruch: zakończ walkę z zegarem Windows-Ubuntu, wybierając jedną regułę
  7. Wstaw prawidłowy czas z powrotem do zegara sprzętowego
  8. Kiedy rzeczywiście jest to bateria CMOS i jak synchronizacja ją obejmuje

📋Omówienie i przewodnik krok po kroku

1

Dwa zegary: znajdź, który kłamie

Każdy komputer przechowuje czas w dwóch miejscach. RTC (zegar czasu rzeczywistego) to mały zegar sprzętowy na płycie głównej, który odmierza czas pracy baterii, gdy komputer jest wyłączony. Zegar systemowy jest tym, co Ubuntu pokazuje podczas działania i jest korygowany przez Internet przez usługę synchronizacji zwaną NTP. Podczas rozruchu Ubuntu odczytuje RTC i buduje na jego podstawie zegar systemowy.

Zatem zły zegar oznacza jedną z trzech rzeczy: RTC miał niewłaściwą wartość, Ubuntu odczytał go z błędnym założeniem lub korekta internetowa nigdy nie nastąpiła. Najczęstszym błędem popełnianym przez większość ludzi jest naprawianie tarczy zegara zamiast przyczyny. Jedno polecenie oddziela wszystkie trzy przyczyny - to jest kolejny krok.

2

Przeczytaj timedatectl zanim cokolwiek zmienisz

Otwórz terminal i uruchom to polecenie. Nie potrzebujesz sudo, żeby spojrzeć:

Terminal
timedatectl

Pojawi się siedem linii; sześć z nich ma znaczenie. Czas lokalny to czas na tarczy zegara po konwersji strefy czasowej. Czas uniwersalny to ten sam moment w formacie UTC – jest to liczba, która sama w sobie musi się zgadzać. Czas RTC to aktualny zegar sprzętowy na płycie głównej. Strefa czasowa to strefa, na którą Ubuntu konwertuje, na przykład Asia/Kalkuta (IST, +0530). Zsynchronizowany zegar systemowy mówi „tak”, jeśli synchronizacja czasu w Internecie powiodła się przynajmniej po tym uruchomieniu. RTC w lokalnym TZ: nie oznacza, że ​​Ubuntu zakłada, że ​​RTC utrzymuje UTC - ta jedna linijka opisuje całą historię podwójnego rozruchu.

Na zdrowej maszynie czas RTC odpowiada uniwersalnej linii czasu, zsynchronizowana linia mówi „tak”, a usługa NTP jest aktywna. Zapisz, co widzisz na ekranie, zanim cokolwiek zmienisz — dwie minuty czytania tutaj oszczędzają godzinę przypadkowych poprawek.

3

Dopasuj wzór do prawdziwej przyczyny

Niewłaściwy czas to nie jeden problem. Rozmiar i kształt błędu niemal za każdym razem wskazuje winowajcę:

Błąd co do dokładnego przesunięcia strefy (5 godzin i 30 minut w Indiach) i zmienia się po uruchomieniu innego systemu operacyjnego – walka RTC z dwoma rozruchami. Windows i Ubuntu nie zgadzają się co do znaczenia zegara sprzętowego. Przejdź do kroku 6.

Błąd co do minut, rośnie powoli w ciągu tygodni – synchronizacja jest wyłączona lub nie działa, albo sam zegar RTC dryfuje. Sprawdź zsynchronizowaną linię i przejdź do kroku 4.

Poprawnie, gdy komputer działa, znowu źle po każdym wyłączeniu – zegar RTC traci czas lub błędnie odczytuje czas, gdy jest wyłączony. Na starym sprzęcie jest to bateria CMOS. Przejdź do kroku 7.

Właściwa nazwa strefy na ekranie, i tak zły czas – strefa to ustawienie wyświetlania, a nie sam czas. Twoja uniwersalna linia czasu również będzie błędna. Przejdź do kroku 5 i sprawdź ponownie.

Błąd tylko w maszynie wirtualnej, przeskakiwanie po przywróceniu lub wznowieniu - maszyna wirtualna zabiera czas swojemu hostowi i migawkom, a nie tylko NTP.

📌 Uwaga: każdy wzór ma poniżej własną poprawkę. Naprawienie niewłaściwego wzorca jest właśnie powodem, dla którego ten problem powraca u tak wielu osób.
4

Włącz internetową synchronizację czasu (NTP).

Większość jednorozruchowych maszyn Ubuntu leczy się samoczynnie, jeśli synchronizacja może zostać uruchomiona. Włącz go za pomocą tego polecenia (poprosi o podanie hasła):

Terminal
timedatectl set-ntp true

Wolisz graficzny interfejs użytkownika? Otwórz Ustawienia, następnie Data i godzina i włącz opcję Automatyczna data i godzina. Następnie poczekaj minutę na działającym połączeniu internetowym i ponownie uruchom timedatectl. Wiersz Zsynchronizowany zegar systemowy powinien teraz zawierać komunikat tak, a czas powinien osiągnąć prawidłową wartość.

✅ Wskazówka: Jeśli linia pozostaje na nie, oznacza to, że usługa synchronizacji lub sieć ją blokuje – jest to osobna usterka dotycząca usługi timesyncd i portu UDP 123, a nie samego zegara.
5

Ustaw prawidłowo strefę czasową

Jeśli sama strefa jest nieprawidłowa, wszystko inne wygląda na zepsute. Najpierw sprawdź bieżącą strefę w wierszu Strefa czasowa wyniku timedatectl. W nazwach stref rozróżniana jest wielkość liter i używane są ukośniki, np. Asia/Kalkuta. Wymień dokładne nazwy i ustaw swoje:

Terminal
timedatectl list-timezones
sudo timedatectl set-timezone Asia/Kolkata

Uruchom ponownie timedatectl i potwierdź, że wiersz Czas lokalny pokazuje teraz godzinę na zegarze ściennym, ze strefą oznaczoną jako Asia/Kalkuta (IST, +0530). Nadal się mylisz, wyświetlając właściwą strefę? Wtedy strefa nie była już problemem – wróć do listy wzorów w kroku 3.

6

Podwójny rozruch: wybierz jedną regułę zegara sprzętowego

Na maszynie z podwójnym rozruchem musisz wybrać jedną konwencję i uzgodnić oba systemy. Wartość domyślna Ubuntu jest rozsądna: RTC przechowuje UTC (RTC w lokalnym TZ: nie), a każdy system operacyjny jest konwertowany do wyświetlania. Domyślnie system Windows działa odwrotnie: traktuje RTC jako czas lokalny. Ta różnica zdań jest powodem, dla którego każdy przełącznik systemu operacyjnego przesuwa zegar dokładnie o przesunięcie strefy.

Szybkim kompromisem po stronie Ubuntu jest to polecenie — Ubuntu następnie odczytuje i zapisuje RTC zgodnie z oczekiwaniami systemu Windows:

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

Alternatywą jest nauczenie systemu Windows używania czasu UTC poprzez wartość rejestru RealTimeIsUniversal, pozostawiając Ubuntu z czystymi ustawieniami domyślnymi. Którąkolwiek stronę wybierzesz - wybierz tylko jedną. Zastosowanie obu poprawek odwraca błąd w przeciwnym kierunku.

⚠️ Uczciwe ostrzeżenie: sam timedatectl wyświetla ostrzeżenie, że lokalny tryb RTC nie jest w pełni obsługiwany i może powodować problemy, głównie w związku ze zmianami czasu letniego i systemami uruchamiającymi kilka systemów operacyjnych. W Indiach nie obowiązuje czas letni, więc dla większości indyjskich użytkowników domowych ryzyko praktyczne jest niskie – ale zanim się zdecydujesz, zapoznaj się z branżą.
7

Zapisz poprawny czas w zegarze sprzętowym

Gdy zegar systemowy będzie prawidłowy i zsynchronizowany, zapisz poprawną wartość w zegarze RTC, aby następny zimny rozruch rozpoczął się prawidłowo:

Terminal
sudo hwclock --systohc
sudo hwclock --show

Pierwsze polecenie kopiuje czas systemowy do zegara sprzętowego; drugi pokazuje, co obecnie posiada sprzęt. Następnie wyłącz całkowicie, poczekaj minutę, uruchom komputer i sprawdź czas, zanim sieć się połączy, jeśli to możliwe – RTC powinien już działać prawidłowo.

Jeśli godzina znów jest nieprawidłowa po całkowitym wyłączeniu zasilania, nawet teraz oprogramowanie zrobiło wszystko, co w jego mocy - podejrzewał baterię CMOS lub dryfujący zegar RTC na starym sprzęcie. W ten sposób można żyć ze słabą baterią bez jej natychmiastowej wymiany: przy włączonej synchronizacji NTP (krok 4) Ubuntu samoczynnie koryguje zegar wkrótce po każdym uruchomieniu, po nawiązaniu połączenia z siecią. Wymiana baterii nadal stanowi prawdziwą naprawę sprzętu, ale synchronizacja obejmuje ją w codziennym użytkowaniu.

⚠️ Jedno szczere ostrzeżenie: jeśli Twój zegar myli się o niewielką wartość, która rośnie z każdym tygodniem, żadne ustawienie nie jest zepsute – albo synchronizacja po cichu kończy się niepowodzeniem, albo sam zegar sprzętowy dryfuje. Kontynuuj pomiary za pomocą timedatectl, zamiast ciągle ustawiać czas ręcznie; Zegar, który codziennie korygujesz, jest usterką, której jeszcze nie znalazłeś.

🏷️Zmienne wyszukiwania tematów i słowa kluczowe

🔍 Ubuntu 🔍 timedatectl 🔍 NTP 🔍 RTC 🔍 DualBoot 🔍 TimeZone 🔍 CMOSBattery 🔍 hwclock 🔍 TechnicalAnshu 🔍 Ubuntu Wrong Time Fix 🔍 Fix Ubuntu Time Issues 🔍 Ubuntu Clock Wrong After Boot 🔍 Ubuntu Windows Dual Boot Time Difference 🔍 Ubuntu NTP Not Synchronizing 🔍 Asia/Kolkata Time Zone
🎙️ Pełna transkrypcja — kliknij, aby rozwinąć

__TOK_39__

__TOK_40__

__TOK_41__

❓ Najczęściej zadawane pytania

Czy korzystanie z tego samouczka jest w 100% bezpłatne?

__TOK_42__

Czy początkujący mogą postępować zgodnie z tym przewodnikiem?

__TOK_43__

Gdzie mogę zadawać pytania, jeśli utknę?

__TOK_44__

🚀 Obejrzyj cały samouczek na YouTube

__TOK_45__

__TOK_46__

▶️ Obejrzyj cały film
Ten samouczek jest oparty na filmie Technical Anshu Napraw problemy z czasem w Ubuntu • Utknąłeś na którymkolwiek kroku? Zapytaj w komentarzach do filmu – tam uzyskasz pomoc 🙏