- Сбивается время компьютера (сервера) после выключения / перезагрузки
- Не сохраняется время из-за севшей батарейка BIOS
- Настройки часового пояса и синхронизации времени с time.windows.com
- Синхронизация времени в домене Windows
- Сбивается время при переключении между Linux и Windows (Dual Boot)
- Сбивается время после перезагрузки на серверах HP с Windows Server
- Что делать, если после выключения или перезагрузки компьютера сбивается время
- Почему сбивается время компьютера (сервера) с Windows после выключения / перезагрузки
- Не сохраняется время из-за севшей батарейка BIOS
- Настройки часового пояса и синхронизации времени с time.windows.com
- Синхронизация времени в домене Windows
- Сбивается время при переключении между Linux и Windows (Dual Boot)
- Сбивается время после перезагрузки на серверах HP с Windows Server
Сбивается время компьютера (сервера) после выключения / перезагрузки
В этой статье рассмотрим, почему после выключения или перезагрузки ноутбука / компьютера / сервера в операционной системе могут сбрасываться текущие настройки даты и времени, указанные ранее. Рассмотрим, как самый банальный случая с севшей батарейкой BIOS, так и более интересные кейсы с мультизагрузкой Windows и Linux на одном компьютере, и багом прошивки на Windows серверах HPE ProLiant G9 /G8.
Не сохраняется время из-за севшей батарейка BIOS
Самый «классический» ответ на вопрос «Почему не сохраняется и сбивается время и дата на компьютере?» — севшая батарейка BIOS. Данная батарейка отвечает за сохранение настроек BIOS/ UEFI, когда ваш компьютер/ноутбук выключен из розетки, а также обеспечивает автономную работу встроенных аппаратных часов.
Если батарейка села, то при отключении питания материнской карты, BIOS не может сохранить свои настройки, и все они сбрасываются, в том числе и текущее дата и время. Если ваш компьютер довольно старый, вероятность того, что у вас села батарейка крайне велика. Настоятельно рекомендуем ее заменить. Сделать это не сложно, и, как правило, особых инженерных навыков процесс замены батарейки BIOS не требует. В большинстве домашних систем используется в BIOS стандартная батарейка CR2032 на 3 вольта.
Если замена батарейки не помогла, проверьте состояние перемычки сброса настроек BIOS (джампер с перемычкой расположен рядом с отсеком для батарейки и может быть подписан как CCMOS / CLEAR / RESET). Возможно кто-то оставил данный джампер в положении «сброса», в результате чего при каждой подачи питания на мат.плату, настройки BIOS обнуляются. Верните джампер в нормальное положение.
Следующий вариант – обновление прошивки BIOS материнской карты (как это сделать – смотрите на сайте производителя вашего железа). Часто в более новых прошивках исправляются различные баги.
Настройки часового пояса и синхронизации времени с time.windows.com
В том случае, если у вас постоянно меняются настройки даты//времени в Windows, в первую очередь стоит проверить текущие настройки часового пояса и параметры синхронизации времени с интернетом. В Windows 10 текущие настройки времени можно посмотреть в меню панели инструментов (Панель управления\Часы, язык и регион -> Дата и время). В этом примере видно, что указан часовой пояс UTC + 03, переход на зимнее время отключен.
Если ваш компьютер не в домене, проверьте настройки синхронизации времени с внешним источником времени (сервером времени NTP). В этом случае в этом же окне щелкните по вкладке «Время по Интернету» и проверьте, что компьютер настроен на автоматическую синхронизацию времени с сервером time.windows.com.
Синхронизация времени в домене Windows
Если ваш компьютер входит в состав домена Active Directory, то информацию о том как работает синхронизация времени в домене можно получить из этой статьи.
Сбивается время при переключении между Linux и Windows (Dual Boot)
Отдельно стоит рассмотреть конфигурации, когда на компьютере установлены две операционные системы (Windows и Linux) в конфигурации двойной загрузки (Dual Boot). Вы можете столкнуться с проблемой, что после переключения между операционными системами (загрузки в Linux после Windows) сбивается время на несколько часов вперед или назад.
Windows и Linux по разному работают с временем BIOS. Дело тут в наличии двух форматов представления времени UTC и localtime.
Операционные системы GNU/Linux (в том числе Mac OS X) считают, что время в BIOS указано в формате UTC (по Гринвичу). Соответственно, при загрузке Linux для преобразования UTC к локальному времени добавляет (отнимает) смещение текущего часового пояса, который выбрал пользователь. Т.е. чтобы получить локальное время для часового пояса Москвы UTC+3, Linux добавит 3 часа.
Windows же считает, что в время в BIOS хранится в формате localtime, и если вы указали новый часовой пояс, или синхронизировали время с внешним источником, система соответственным образом меняет время в BIOS на локальное время. Linux (Ubuntu в моем случае) считает, что время в BIOS указано в формате UTC и дополнительно добавляет смещение часового пояса. Именно поэтому и сбивается время при переключении между Linux и Windows.
Чтобы исправить такую ситуацию, нужно переключить Windows на использование времени в формате UTC с помощью параметра реестра RealTimeIsUniversal.
reg add «HKLMACHINE\System\CurrentControlSet\Control\TimeZoneInformation» /v RealTimeIsUniversal /t REG_DWORD /d 1 /f
Также в Windows нужно отключить обновление времени из Интернета, т.к. служба времени Windows при каждом обновлении времени будет сбрасывать UTC время на локальное.
sc config w32time start= disabled
Осталось перезагрузить Windows.
Либо можно переключить Linux на использование локального времени. В Ubuntu 15.04 и выше и CentOS это можно сделать командой timedatectl:
timedatectl set-local-rtc 1
Сбивается время после перезагрузки на серверах HP с Windows Server
На серверах HPE DL/ML Gen9 с Windows Server 2008 R2 / 2012 R2 у одного из удаленных заказчиков столкнулись с интересной проблемой после смены часового пояса. Как оказалось, на серверах HP ProLiant Gen9 (и на одном из серверов HP ProLiant DL580 Gen8) при изменении системного времени или часового пояса, после перезагрузки сервера, системное время не сохранялось и сбрасывалось на предыдущее. Проблема были подвержены сервера, в которых Windows Server загружается в режиме Legacy (при нативной UEFI загрузки проблемы отката времени не было).
В журнале системы при этом появлялось такое событие:
The system time has changed to 2018-04-29T12:12:28.500000000Z from 2018-04-29T13:12:27.923115700Z.
Change Reason: System time synchronized with the hardware clock.
В качестве решения проблемы HP предлагает обновить ROM до версии не менее 1.5. Именно в этой версии ROM-Based Setup Utility (RBSU) не подвержена багу со сбросом временм.
Либо в качестве обходного решения, можно указать, чтобы Windows считала, что BIOS отдает ей системное время в формате UTC (а не локальное время). Для этого, как мы уже говорили выше нужно создать в ключе реестра HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation параметр с именем RealTimeIsUniversal и значением 1.
Что делать, если после выключения или перезагрузки компьютера сбивается время
Начинающие пользователи иногда интересуются, каким образом Windows удается удерживать в памяти время даже после завершения работы. На самом деле ни Windows, ни другая операционная система тут ни при чём, ход времени определяется аппаратными часами компьютера, подпитываемыми от батарейки BIOS . Но так бывает не всегда. Случается, что время начинает сбиваться после выключения или перезагрузки компьютера.
Причиной тому может быть та самая батарейка, только севшая, что нередко имеет место на старых компьютерах. Если вашему ПК более десяти лет, стоит ее проверить и в случае необходимости заменить. На севшую батарейку будет также указывать самопроизвольный сброс настроек BIOS . Попробуйте изменить какую-нибудь некритичную настройку в BIOS , а после следующей загрузки проверьте, сохранилась она или нет. Если нет, то более чем наверняка причиной сбивающихся даты/времени является именно батарейка.
Если с батарейкой всё в порядке, проверьте настройки синхронизации времени по интернету. Откройте командой control /name Microsoft.DateAndTime апплет «Дата и время», переключитесь на вкладку «Время по интернету» и нажмите кнопку «Изменить параметры». В открывшемся окошке выберите в списке time.windows.com или другой сервис, нажмите «Обновить сейчас» и установите, если не установлена, галочку в чекбоксе «Синхронизировать с сервером времени в интернете».
Отдельного внимания заслуживает случай, когда сбивается время на компьютере с установленными двумя операционными системами — Windows и Linux либо MacOS . Подобная проблема может наблюдаться после переключения между системами. Причиной сбоя временных настроек в таких случаях обычно являются разные форматы UTC и localtime. Windows, например, считает, что время в BIOS хранится в формате localtime, а Linux – что в формате UTC. Фактически это означает, что при загрузке Linux будет производить смещение текущего часового пояса.
Чтобы разрешить это противоречие, следует привести Windows к использованию формата UTC, применив простой твик реестра.
Откройте командой regedit редактор реестра и разверните эту ветку:
В правой колонке создайте новый параметр RealTimeIsUniversal и установите в качестве его значения 1.
В 32-битных системах тип параметра следует выбирать DWORD , а в 64-битных — QWORD .
После этого командой sc config w32time start=disabled отключаем службу синхронизации времени и перезагружаем компьютер.
После этого время на компьютерах с Windows и Unix-системой должно перестать сбиваться.
Почему сбивается время компьютера (сервера) с Windows после выключения / перезагрузки
В этой статье рассмотрим, почему после выключения или перезагрузки ноутбука / компьютера / сервера в операционной системе могут сбрасываться текущие настройки даты и времени, указанные ранее. Рассмотрим, как самый банальный случая с севшей батарейкой BIOS, так и более интересные кейсы с мультизагрузкой Windows и Linux на одном компьютере, и багом прошивки на Windows серверах HPE ProLiant G9 /G8.
Не сохраняется время из-за севшей батарейка BIOS
Самый «классический» ответ на вопрос «Почему не сохраняется и сбивается время и дата на компьютере?» — севшая батарейка BIOS. Данная батарейка отвечает за сохранение настроек BIOS/ UEFI, когда ваш компьютер/ноутбук выключен из розетки, а также обеспечивает автономную работу встроенных аппаратных часов.
Если батарейка села, то при отключении питания материнской карты, BIOS не может сохранить свои настройки, и все они сбрасываются, в том числе и текущее дата и время. Если ваш компьютер довольно старый, вероятность того, что у вас села батарейка крайне велика. Настоятельно рекомендуем ее заменить. Сделать это не сложно, и, как правило, особых инженерных навыков процесс замены батарейки BIOS не требует. В большинстве домашних систем используется в BIOS стандартная батарейка CR2032 на 3 вольта.
Если замена батарейки не помогла, проверьте состояние перемычки сброса настроек BIOS (джампер с перемычкой расположен рядом с отсеком для батарейки и может быть подписан как CCMOS / CLEAR / RESET). Возможно кто-то оставил данный джампер в положении «сброса», в результате чего при каждой подачи питания на мат.плату, настройки BIOS обнуляются. Верните джампер в нормальное положение.
Следующий вариант – обновление прошивки BIOS материнской карты (как это сделать – смотрите на сайте производителя вашего железа). Часто в более новых прошивках исправляются различные баги.
Настройки часового пояса и синхронизации времени с time.windows.com
В том случае, если у вас постоянно меняются настройки даты//времени в Windows, в первую очередь стоит проверить текущие настройки часового пояса и параметры синхронизации времени с интернетом. В Windows 10 текущие настройки времени можно посмотреть в меню панели инструментов (Панель управления\Часы, язык и регион -> Дата и время). В этом примере видно, что указан часовой пояс UTC + 03, переход на зимнее время отключен.
Совет . Вы можете управлять часовым поясом Windows из командой строки с помощью утилиты tzutil .
Если ваш компьютер не в домене, проверьте настройки синхронизации времени с внешним источником времени (сервером времени NTP). В этом случае в этом же окне щелкните по вкладке «Время по Интернету» и проверьте, что компьютер настроен на автоматическую синхронизацию времени с сервером time.windows.com.
Совет . Напомню, что с 2014 года в России отменен переход на летнее время. Возможно вы давно не обновляли свою ОС (Windows 8 и ниже) и у вас не установлены обновления, отключающие переход на летнее время .
Синхронизация времени в домене Windows
Если ваш компьютер входит в состав домена Active Directory, то информацию о том как работает синхронизация времени в домене можно получить из этой статьи.
Сбивается время при переключении между Linux и Windows (Dual Boot)
Отдельно стоит рассмотреть конфигурации, когда на компьютере установлены две операционные системы (Windows и Linux) в конфигурации двойной загрузки (Dual Boot). Вы можете столкнуться с проблемой, что после переключения между операционными системами (загрузки в Linux после Windows) сбивается время на несколько часов вперед или назад.
Windows и Linux по разному работают с временем BIOS. Дело тут в наличии двух форматов представления времени UTC и localtime .
Операционные системы GNU/Linux (в том числе Mac OS X) считают, что время в BIOS указано в формате UTC (по Гринвичу). Соответственно, при загрузке Linux для преобразования UTC к локальному времени добавляет (отнимает) смещение текущего часового пояса, который выбрал пользователь. Т.е. чтобы получить локальное время для часового пояса Москвы UTC+3, Linux добавит 3 часа.
Windows же считает, что в время в BIOS хранится в формате localtime, и если вы указали новый часовой пояс, или синхронизировали время с внешним источником, система соответственным образом меняет время в BIOS на локальное время. Linux (Ubuntu в моем случае) считает, что время в BIOS указано в формате UTC и дополнительно добавляет смещение часового пояса. Именно поэтому и сбивается время при переключении между Linux и Windows.
Чтобы исправить такую ситуацию, нужно переключить Windows на использование времени в формате UTC с помощью параметра реестра RealTimeIsUniversal .
reg add «HKLMACHINE\System\CurrentControlSet\Control\TimeZoneInformation» /v RealTimeIsUniversal /t REG_DWORD /d 1 /f
Совет. В 64 битных версиях Windows нужно создавать параметр типа QWORD вместо DWORD: reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_QWORD /d 1
Также в Windows нужно отключить обновление времени из Интернета, т.к. служба времени Windows при каждом обновлении времени будет сбрасывать UTC время на локальное.
sc config w32time start= disabled
Осталось перезагрузить Windows.
Либо можно переключить Linux на использование локального времени. В Ubuntu 15.04 и выше это можно сделать командой:
timedatectl set-local-rtc 1
Сбивается время после перезагрузки на серверах HP с Windows Server
На серверах HPE DL/ML Gen9 с Windows Server 2008 R2 / 2012 R2 у одного из удаленных заказчиков столкнулись с интересной проблемой после смены часового пояса. Как оказалось, на серверах HP ProLiant Gen9 (и на одном из серверов HP ProLiant DL580 Gen8) при изменении системного времени или часового пояса, после перезагрузки сервера, системное время не сохранялось и сбрасывалось на предыдущее. Проблема были подвержены сервера, в которых Windows Server загружается в режиме Legacy (при нативной UEFI загрузки проблемы отката времени не было).
В журнале системы при этом появлялось такое событие:
The system time has changed to 2018-04-29T12:12:28.500000000Z from 2018-04-29T13:12:27.923115700Z.
Change Reason: System time synchronized with the hardware clock.
В качестве решения проблемы HP предлагает обновить ROM до версии не менее 1.5. Именно в этой версии ROM-Based Setup Utility (RBSU) не подвержена багу со сбросом временм.
Либо в качестве обходного решения, можно указать, чтобы Windows считала, что BIOS отдает ей системное время в формате UTC (а не локальное время). Для этого, как мы уже говорили выше нужно создать в ключе реестра HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation параметр с именем RealTimeIsUniversal и значением 1.