Збивається час в ubuntu і windows

Багато нові користувачі, які тільки перейшли на Linux з операційної системи Windows, і поки все ще запускають цю систему час від часу, стикаються з проблемою, що після завантаження windows в ubuntu збивається час на кілька годин назад або вперед, потім після декількох перезавантажень вже складно зрозуміти яке зараз час.

Все це відбувається через відмінності формату зберігання часу в цих операційних системах. І буде відбуватися при кожному перезавантаженні, скільки б ви не встановлювали правильний час. Але цю проблему можна вирішити. І навіть декількома способами. У цій статті ми розглянемо, як вирішити проблему збивається час в ubuntu і windows.

Чому так відбувається?

Як я вже сказав, проблема в різних форматах зберігання і відновлення часу. У комп`ютері є два види годин. Апаратні - йдуть завжди, навіть коли комп`ютер вимкнений і програмні годинник, вбудовані в ядро. Коли комп`ютер включається значення апаратних годин записується в програмні, і в подальшому операційна система бере час звідти. Але Windows і Linux працюють по-різному з цими двома годинами. Є два способи роботи:

  • UTC - і апаратні, і програмні годинник йде за Гринвічем. Тобто годинник дають універсальне час на нульовому часовому поясі. Наприклад, якщо у вас часовий пояс GMT + 3, Київ, то годинник буде відставати на три години. А вже користувачі локально додають до цього часу поправку на часовий пояс, наприклад, плюс +3. Кожен користувач додає потрібну йому поправку. Так робиться на серверах, щоб кожен користувач міг отримати правильне для свого часового поясу час.
  • localtime - в цьому варіанті програмні годинник теж йдуть за Гринвічем, але апаратні годинник йде за часом локального часового поясу. Для користувача різниці ніякої немає, все одно потрібно додавати поправку на свій часовий пояс. Але при завантаженні і синхронізації часу Windows віднімає з апаратного часу 3 години (або іншу поправку на часовий пояс), щоб програмне час було вірним.

Так чому ж збивається час Ubuntu і Windows? Ось, припустимо, працює Windows, і з часом там все нормально, воно збережено в форматі localtime. Але при перезавантаженні в Linux, операційна система бере час Localtime, і думає що це UTC. Таким чином, користувач буде брати вже правильний час, і додавати до нього поправку на часовий пояс. Тому час вже буде невірним.

Далі ви виправили час, і тепер апаратні годинник працює в UTC. Але потім завантажуйте WIndows. Система думає, що це Localtime і для установки правильного програмного часу додає до апаратного поправку на часовий пояс, наприклад, в нашому випадку +3. Далі кожен користувач ще раз застосовує цю поправку і час вже збито, знову.




Єдино вірний спосіб вирішити цю проблему - змусити обидві системи працювати по одному формату і зробити це зовсім не складно. Причому можна піти двома шляхами: або змусити Windows працювати по UTC, або Linux за форматом Localtime, що є не зовсім правильним, але цілком можливо. Отже перейдемо до вирішення проблеми збивається час в Ubuntu.

Налаштування Windows для роботи з UTC

Отже, якщо у вас збивається час windows і linux при перемиканні між операційними системами, найкращим способом буде змусити Windows працювати по більш правильному і логічного формату. Для цього досить додати один ключ реєстру. Ви можете зробити це за допомогою однієї команди в консолі. Щоб відкрити консоль в Windows 10 проведіть миша в лівий нижній кут, потім натисніть праву кнопку. У контекстному меню виберіть Командний рядок (адміністратор):

Далі наберіть команду для 32 бітних систем:

gt; Reg add HKLM SYSTEM CurrentControlSet Control TimeZoneInformation / v RealTimeIsUniversal / t REG_QWORD / d 1


utc-windows-600x139

Майже готово, але служба часу Windows незалежно від цієї настройки буде писати час в місцевому форматі при оновленні його через інтернет, тому зручно цю службу відключити. Для цього виконайте:

gt; Reg add HKLM SYSTEM CurrentControlSet Control TimeZoneInformation / v RealTimeIsUniversal / t REG_DWORD / d 0

І запускаємо назад службу синхронізації:

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

Щоб подивитися поточний стан апаратних і програмних час, виконайте:

$ Sudo sed -i `s / UTC = yes / UTC = no /` / etc / default / rcS

Як повернути назад?

Знову ж, повернути все як було можна за допомогою однієї команди:

$ Sudo sed -i `s / UTC = no / UTC = yes /` / etc / default / rcS

висновки

От і все. Тепер, якщо ви зіткнетеся з проблемою windows 10 - збивається час ubuntu або будь-якому іншому Linux дистрибутиві, ви вже будете знати, як її вирішити за допомогою двох повністю працюють способів. Якщо у вас залишилися питання, питайте в коментарях!
Ми розібралися, як налаштувати правильний час в Ubuntu і Windows, щоб тимчасові зони не збивалися, але що таке тимчасові зони і навіщо вони потрібні, на завершення відео про це:

Поділися в соціальних мережах:

Схожі
Виправляємо виявлена ​​помилка в системній програмі ubuntuВиправляємо виявлена ​​помилка в системній програмі ubuntu
Прискорення ubuntu 16.04Прискорення ubuntu 16.04
Установка virtualbox в ubuntu 16.04Установка virtualbox в ubuntu 16.04
Установка wine в ubuntu 16.04Установка wine в ubuntu 16.04
Bad pool header в windows 7 і windows 8Bad pool header в windows 7 і windows 8
Продуктивність ubuntu 16.04 vs ubuntu 16.10Продуктивність ubuntu 16.04 vs ubuntu 16.10
Чому збивається час на комп`ютеріЧому збивається час на комп`ютері
Оновлення драйверів ubuntuОновлення драйверів ubuntu
Як подивитися користувачів ubuntuЯк подивитися користувачів ubuntu
Продуктивність ігор linux vs wine vs windowsПродуктивність ігор linux vs wine vs windows
» » Збивається час в ubuntu і windows