Вирішення проблем із часом у Ubuntu – усунення збоїв із синхронізацією
Ubuntu показує неправильний час, і випадкові налаштування не виправляють це надовго. Вивчіть двогодинну систему, зчитайте один екран timedatectl, зіставте свій шаблон із справжньою причиною - подвійним завантаженням, NTP, часовим поясом або розрядженою батареєю CMOS - і виправте це.
📑Розділи
- Чому Ubuntu показує неправильний час - два годинники у вашому ПК
- Прочитайте один екран timedatectl, перш ніж щось змінити
- Зіставте свій шаблон із справжньою причиною – подвійне завантаження, NTP, часовий пояс або акумулятор CMOS
- Увімкніть синхронізацію часу в Інтернеті (NTP) і переконайтеся, що вона працює
- Правильно встановіть часовий пояс із точною назвою поясу
- Подвійне завантаження: завершіть боротьбу Windows-Ubuntu, вибравши одне правило
- Повернути правильний час на апаратний годинник
- Коли це справді батарея CMOS - і як синхронізація її покриває
📋 Огляд і покроковий посібник
Два годинника: знайди, який з них бреше
Кожен комп’ютер зберігає час у двох місцях. RTC (годинник реального часу) — це невеликий апаратний годинник на материнській платі, який постійно відбиває заряд батареї, коли ПК вимкнено. Системний годинник - це те, що Ubuntu показує вам під час роботи, і він коригується через Інтернет за допомогою служби синхронізації під назвою NTP. Під час завантаження Ubuntu зчитує RTC і будує з нього системний годинник.
Отже, неправильний годинник означає одну з трьох речей: RTC містив неправильне значення, Ubuntu прочитав його з неправильним припущенням, або інтернет-виправлення не відбулося. Помилка більшості людей полягає в тому, що вони лагодять циферблат, а не причину. Одна команда розділяє всі три причини - це наступний крок.
Прочитайте timedatectl перед тим, як щось змінювати
Відкрийте термінал і виконайте цю команду. Вам не потрібен sudo, щоб просто подивитися:
timedatectl
З'являється сім рядків; шість із них мають значення. Місцевий час – це час на циферблаті годинника після перетворення часового поясу. Універсальний час – це той самий момент у UTC – це число, яке саме по собі має бути правильним. Час RTC – це поточний час апаратного годинника на материнській платі. Часовий пояс – це пояс, у який перетворює Ubuntu, наприклад Азія/Калькутта (IST, +0530). Системний годинник синхронізовано каже "так", якщо синхронізація часу в Інтернеті була успішною принаймні під час цього завантаження. RTC у локальному TZ: ні означає, що Ubuntu припускає, що RTC зберігає UTC - цей один рядок і є вся історія подвійного завантаження.
На працездатній машині час RTC збігається зі шкалою всесвітнього часу, синхронізована лінія каже «так», а служба NTP показує, що активна. Запишіть, що показує ваш екран, перш ніж щось змінювати - дві хвилини читання тут заощаджують годину випадкових виправлень.
Установіть відповідність між закономірністю та справжньою причиною
Неправильний час - це не одна проблема. Розмір і форма помилки майже кожного разу називає винуватця:
Помилка саме через зсув вашої зони (5 годин 30 хвилин в Індії), і він перевертається, коли ви завантажуєте іншу ОС - бій RTC подвійного завантаження. Windows і Ubuntu не погоджуються щодо того, що означає апаратний годинник. Перейдіть до кроку 6.
Помилка на хвилини, повільно зростає протягом тижнів - синхронізація вимкнена або не вдається, або сам час реального часу змінюється. Перевірте синхронізовану лінію та перейдіть до кроку 4.
Правильно під час роботи ПК, неправильно знову після кожного вимикання - RTC втрачає або неправильно зчитує час, коли живлення вимкнено. На старому апаратному забезпеченні це акумулятор CMOS. Перейдіть до кроку 7.
Правильна назва зони на екрані, все одно неправильний час - зона є налаштуванням дисплея, а не самим часом. Ваша шкала всесвітнього часу також буде неправильною. Перейдіть до кроку 5 і перевірте ще раз.
Помилка лише всередині віртуальної машини, стрибки після відновлення або відновлення – віртуальна машина використовує час від свого хоста та знімків, а не лише від NTP.
Увімкніть синхронізацію часу в Інтернеті (NTP).
Більшість машин Ubuntu з одним завантаженням самовідновлюються, якщо дозволити синхронізацію. Увімкніть його за допомогою цієї команди (вона запитає ваш пароль):
timedatectl set-ntp true
Віддаєте перевагу графічному інтерфейсу? Відкрийте Налаштування, потім Дата й час і ввімкніть Автоматичні дата й час. Потім зачекайте хвилину, коли з’єднання з Інтернетом працює, і знову запустіть timedatectl. У рядку Системний годинник синхронізовано тепер має бути так, а час має переходити до правильного значення.
Правильно встановіть часовий пояс
Якщо сама зона неправильна, все інше виглядає зламаним. Спочатку перегляньте поточний пояс у рядку Часовий пояс виводу timedatectl. Назви зон чутливі до регістру та використовують косі риски, як-от Asia/Kolkata. Перелічіть точні імена та встановіть свої:
timedatectl list-timezones
sudo timedatectl set-timezone Asia/Kolkata
Знову запустіть timedatectl і переконайтеся, що рядок Місцевий час тепер показує час на вашому настінному годиннику з зоною, яка відображається як Азія/Калькутта (IST, +0530). Після цього все ще не так, коли відображається правильна зона? Тоді зона ніколи не була проблемою - поверніться до списку візерунків у кроці 3.
Подвійне завантаження: виберіть одне правило апаратного годинника
На машині з подвійним завантаженням ви повинні вибрати одну конвенцію та погодити обидві системи. За замовчуванням Ubuntu є розумним: RTC містить UTC (RTC у локальному TZ: ні), і кожна ОС перетворює для відображення. Windows за замовчуванням навпаки: вона розглядає RTC як місцевий час. Ця розбіжність є причиною того, що кожен перемикач ОС переводить ваш годинник саме на зміщення вашої зони.
Швидкий компроміс на стороні Ubuntu полягає в цій команді - Ubuntu потім читає та записує RTC так, як очікує Windows:
timedatectl set-local-rtc 1 --adjust-system-clock
Альтернативою є навчання Windows використовувати UTC через значення реєстру RealTimeIsUniversal, залишаючи Ubuntu за умовчанням. Яку б сторону ви не вибрали - вибирайте тільки одну. Застосування обох виправлень повертає помилку в протилежний бік.
Збережіть правильний час в апаратному годиннику
Коли системний годинник правильний і синхронізований, збережіть це правильне значення в RTC, щоб наступне холодне завантаження розпочалося правильно:
sudo hwclock --systohc
sudo hwclock --show
Перша команда копіює системний час в апаратний годинник; другий показує, що зараз містить апаратне забезпечення. Потім повністю вимкніть, зачекайте хвилину, завантажтеся та перевірте час перед підключенням до мережі, якщо можете - RTC уже має бути правильним.
Якщо після повного вимкнення живлення час знову неправильний, програмне забезпечення зробило все можливе — запідозрило батарею CMOS або дрейф RTC на старому апаратному забезпеченні. Це також те, як ви живете зі слабкою батареєю, не замінюючи її відразу: з увімкненою синхронізацією NTP (крок 4) Ubuntu самостійно виправляє годинник незабаром після кожного завантаження, коли мережа підключається. Заміна батареї все ще є справжнім виправленням апаратного забезпечення, але синхронізація покриває її під час щоденного використання.
timedatectl замість того, щоб знову і знову встановлювати час вручну; годинник, який ви коригуєте щодня, - це помилка, яку ви ще не знайшли.🏷️Змінні та ключові слова пошуку тем
🎙️ Повна транскрипція — торкніться, щоб розгорнути
__TOK_39__
__TOK_40__
__TOK_41__
❓ Часті запитання
Чи на 100% безкоштовний цей посібник?
__TOK_42__
Чи можуть новачки дотримуватися цього посібника?
__TOK_43__
Де я можу поставити запитання, якщо я застряг?
__TOK_44__