Сбивается время при переходе между LINUX и WINDOWS
Как исправить разницу во времени между Ubuntu и Windows, работающими на одной машине
При переходе из одной в другую систему наблюдается неприятный момент - время начинает "убегать" на несколько часов то вперед, то назад. Это происходит потому, что Linux и Window хранят время в разных форматах.
В компьютере используется два вида часов. Первые - аппаратные часы, которые идут всегда, даже тогда, когда компьютер выключен (питаются от батарейки на материнской плате компьютера). Вторые часы - программные. Вот именно этими часами пользуется операционная система. При включении компьютера первоначальное время берется из аппаратных часов и записывается в программные часы. И вся проблема как раз в том, что разные операционные системы по-разному работают с программными часами. Есть два варианта работы:
UTC - аппаратные и программные часы идут по Гринвичу. И эти часы дают универсальное время с нулевым смещением (нулевой часовой пояс). А уже локально к этому времени прибавляется ваш часовой пояс (с плюсом или минусом). Чаще всего так время идет на серверах, с которыми потом синхронизируются рабочие станции пользователей и уже локально у всех пользователей происходит поправка на их часовой пояс.
Localtime - в данном случае программные часы тоже идут по Гринвичу, а вот аппаратные часы идут по времени локального часового пояса. Пользователь особой разницы не заметит, т.к. все равно нужно добавлять или вычитать поправку на свой часовой пояс. И вот тут появляется проблема. Windows при загрузке и(или) синхронизации времени делает поправку на часовой пояс пользователя для того, чтобы программное время было верным. В Linux не так.
Именно поэтому, при каждой перезагрузке из одной системы в другую будет происходить смещение времени на величину поправки на часовой пояс. И единственный способ это устранить - это заставить обе системы (и Windows, и Linux) работать со временем в одном формате. Сделать это можно двумя путями:
Заставить Windows работать по UTC, как Linux;
Заставить Linux работать в формате localtime.
ПЕРЕКЛЮЧЕНИЕ WINDOWS НА РАБОТУ ПО UTC
Для решения проблемы сбивающегося времени достаточно добавить всего один ключ в реестр Windows. Это можно сделать с помощью ввода команды в консоли.
Чтобы открыть консоль от имени администратора в Windows 10 нужно поставить курсор мыши в левый нижний угол экрана и нажать правую кнопку мыши. В появившемся контекстном меню нужно выбрать "Командная строка (администратор)".
Для 32-х битной Windows вводим (это одна команда, вводится в одну строку):
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
Для 64-х битных нужно ввести (это одна команда, вводится в одну строку):
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1
Однако, это еще не все. Служба времени Windows все равно продолжит сохранять время в старом формате при его обновлении через Интернет. Поэтому, службу нужно отключить. Либо это сделать руками через "Панель управления" Windows, либо быстрее и проще в той же командной строке, запущенной от имени администратора, выполнить:
sc config w32time start=disabled
КАК ВЕРНУТЬ НАСТРОЙКИ ВРЕМЕНИ В WINDOWS ОБРАТНО?
В командной строке, запущенной от имени администратора, выполняем (это одна команда, вводится в одну строку):
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 0
и запускаем службу синхронизации времени Windows:
sc config w32time start=demand
ПЕРЕВОД LINUX НА РАБОТУ С LOCALTIME
По умолчанию Linux хранит временя в формате UTC, но можно переключить систему так, чтобы она хранила в аппаратном таймере местное время. Рассмотрим на примере Ubuntu-Linux (работает даже в старых версиях, например в 16.04).
Чтобы посмотреть текущее состояние аппаратных и программных часов, нужно выполнить:
timedatectl
Начнем исправлять проблему сбивающихся часов. Для этого выполняем команду:
sudo timedatectl set-local-rtc 1 --adjust-system-clock
Готово! Еще проще, чем в Winsdows!
Однако, в более старых Ubuntu придется отредактировать файл /etc/default/rcS, внутри которого заменить UTC=yes на UTC=no.
КАК ВЕРНУТЬ НАСТРОЙКИ ВРЕМЕНИ В LINUX ОБРАТНО?
Вернуть все как было можно с помощью команды:
sudo timedatectl set-local-rtc 0
И в старых дистрибутивах Ubuntu поправить файл /etc/default/rcS, внутри которого заменить UTC=no на UTC=yes.
На этом проблема сбивающегося времени в Windows и Linux (любой дистрибутив, не обязательно Ubuntu) решена.
ضخم
Tidak ada rasa lelah untuk kami yang memiliki tanggung jawab
я забыл, как установить и использовать Linux.. но ценю это
Bagus
Bismillah sy guru hinorer yg minim akan gaji mohon d bantu
1 клик = 7000 рублейПростой способ заработка от 7000 рублей каждый день!!!
trkmad.comТоргуйте в гривняхначните с 3000 грн. Пополнение без конвертации.
xdirect.uaBinance UkraineBinance UA заробляй на криптовалюті + 60$ за активність
bit.lyБеларусь! Азарт!Заберай 80 FS и 80 Byn без отыгрыша!
bonus.betx.suFirst exchange in tgPlay and get Airdrop with exchange for real money
t.me
trkmad.comТоргуйте в гривняхначните с 3000 грн. Пополнение без конвертации.
xdirect.uaBinance UkraineBinance UA заробляй на криптовалюті + 60$ за активність
bit.lyБеларусь! Азарт!Заберай 80 FS и 80 Byn без отыгрыша!
bonus.betx.suFirst exchange in tgPlay and get Airdrop with exchange for real money
t.me