Використання декількох операційних систем на одному комп'ютері іноді призводить до їх конфліктів між собою, коли вони використовують ті ж самі ресурси. Іноді це стосується таких простих речей як час. Навіть такі популярні ОС для ПК, як Windows і Ubuntu (Linux Mint), можуть не порозумітися і постійно змінювати час один одного на некоректний.
Причини цього явища насправді прості: Windows сприймає системний час (який виводиться в налаштуваннях CMOS) як локальний (з урахуванням часового поясу), а Ubuntu – по UTC (за Грінвічем, без урахування часового поясу). Через це вони підправляють системний час під свою логіку, порушуючи логіку один одного.
Вирішення проблеми теж просте: або змусити Windows додавати до системного часу зміщення по часовому поясу, або заборонити Ubuntu додавати цей зсув.
Налаштування в Ubuntu/Linux Mint
Починаючи з версії Ubuntu 16.04, налаштування відображення часу можна перемикати двома командами.
Увімкнути локальний час:
Увімкнути час по UTC:
У старіших версіях Ubuntu потрібно редагувати файл rcS:
У ньому потрібно додати (для відображення локального часу) або видалити (для відображення часу по UTC) даний рядок:
Налаштування у Windows
У Windows майже всі системні налаштування редагуються в реєстрі, необхідний в даній ситуації TimeZoneInformation – не виняток. Знаходиться він в реєстрі за цією адресою:
Тут потрібно додати або змінити параметр RealTimeIsUniversal. Його тип DWORD. Для того щоб системний час зчитувався по UTC, потрібно виставити значення 1, для розпізнавання його як локального потрібно виставити значення 0 або зовсім видалити цей параметр.
Оскільки я люблю спрощувати завдання до нуля, я підготував спеціальний файлик для автоматичного редагування реєстру. Тобі залишається лише запустити його на своїй Windows:
Time-UTC.reg Звантажити
Красно дякую, попробую, бо теж є така проблема.