Ошибка при выполнении синхронизации времени в Windows 7: причины и решение
Пользователи, которые пытаются изменить время на компьютере, могут столкнуться с ошибкой при выполнении синхронизации времени с time.windows.com. Этот сайт является сервером Майкрософт, а поэтому неполадка вероятнее всего находится на стороне разработчика операционной системы и юзеру просто нужно обождать некоторое время. Однако, есть и другие причины, которые провоцируют возникновение такой неполадки: севшая батарейка на материнской плате, проблемы с подключением к сети Интернет.
Способы исправления ошибки при выполнении синхронизации времени
Если на вашем ПК возникла ошибка при выполнении синхронизации времени в Windows 7, то, в первую очередь, нужно попробовать выбрать другой сервер для обновления часового пояса. Для этого нужно выполнить следующие действия:
- Нажимаем на времени правой кнопкой мыши и выбираем «Настройка даты и времени».
- Откроется небольшое окно. Нужно перейти во вкладку «Время по Интернету». Нажимаем на кнопку «Изменить параметры».
- Выбираем любой другой сервер.
- Перезагружаем ПК и смотрим, появились ли изменения времени.
Сбой в работе службы, отвечающей за работу времени, может вызвать ошибку при выполнении синхронизации времени. Для этого нужно нажать «Win+R» и ввести «services.msc».
Откроется новое окно. Находим «Служба времени Windows». Нажимаем на кнопку «Запустить» или «Перезапустить». Время должно настроиться.
Решить такую ошибку также можно с помощью перерегистрации файлов, отвечающих за работу времени на ПК. Для этого нужно запустить командную строку с правами Администратора и ввести по очереди такие команды:
- net stop w32time
- w32tm /unregister
- w32tm /register
- net start w32time
- w32tm /config /manualpeerlist:pool.ntp.org /syncfromflags:manual /update
Если и после выполнения этих команд ошибка продолжает появляться, стоит поменять батарейку на материнской плате и обязательно проверить подключение ПК к сети Интернет.
Справочная информация
про свой опыт решения некоторых проблем и использования ряда возможностей ОС и приложений
суббота, 4 марта 2017 г.
Проблема с синхронизацией времени на Windows 7
Несмотря на моё скептическое отношение к семейству Windows, иногда приходится разбираться с некоторыми проблемами, которые могут иметь место в этой ОС.
При очередном включении домашнего компьютера под управлением Windows 7 мне поступила претензия в отсутствии Интернет. При этом браузер обращал внимание на то, что время на локальном компьютере отличается, а так как сертификаты .
Короче говоря, весь сыр бор объяснялся тем, что в материнской плате «скисла» батарейка и система стала «жить» в 2008 году.
Так как новой батарейки под рукой, естественно, не оказалось, то стал вопрос о желательности синхронизации времени через Интернет после включения компьютера и загрузки операционной системы. Казалось бы, простая ситуация и её разрешение возможно в 2 клика мышкой, но нет – сюрприз.
Несмотря на правильные установки параметров времени, и даже назначение ближайшего сервера времени вместо, например, time.windows.com ситуация не изменилась. Время не синхронизировалось по причине сбоя синхронизации.
«Корень зла» содержится в том, что при расхождении времени между локальным компьютером и временем Интернет более чем в 15 часов служба синхронизации времени перестаёт осуществлять операцию коррекции имеющегося в системе времени на правильное.
Для решения этой проблемы в настройки Windows, содержащиеся в реестре, необходимо внести ряд изменений.
Перейдите в ветку реестра:
Найдите MaxNegPhraseCorrection и MaxPosPhraseCorrection и установите им шестнадцатиричные значения ffffffff (буква f 8 раз подряд), которые являются максимально допустимыми.
Примечание. Первоначальными значениями являются 0x0000d2f0
На всякий случай, проверьте значение LargePhraseOffset
Выставьте интервал обновления, исходя из того, что в десятичном формате оно указывает количество секунд, по истечении которых будет произведено очередное обращение с серверу точного времени.
Найдите параметр SpecialPollInterval. Он как раз и определяет, с какой периодичностью клиент обращается к серверу точного времени. Значение параметра установлено в секундах.
Измените интервал в десятичной системе исчисления из расчёта:
1 минута = 60 секунд,
1 час = 60 минут = 3600 секунд,
1 сутки = 24 часа = 1440 минут = 86400 секунд.
На одном из ресурсов, посвящённом описанию механизма синхронизации времени в Windows, было отмечено, что если этот интервал меньше значения 14400 (240 минут = 4 часа), то сервер NTP может поставить IP-адрес в бан по причине большого числа запросов. Насколько это соответствует истине – мне не известно. Но шлюз на MikroTik по своему алгоритму проверяет соответствие своих часов по 4-6 раз за час.
Укажите адрес источника точного времени, на который будет обращаться Ваш компьютер для осуществления синхронизации времени.
В приведенном примере адрес сервера точного времени time.net.org. Такого сервера в действительности не существует, он является локальным сервером времени, расположенном на роутере MikroTik. Для своих нужд найдите ближайший к себе сервер точного времени.
Упомянутые выше изменения в реестре Windows можно внести одним файлом c расширением reg. Создайте в блокноте файл с содержанием:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\w32Time\Config]«MaxNegPhraseCorrection»=dword:ffffffff
«MaxPosPhraseCorrection»=dword:ffffffff
Сохраните его как, например, Timecorrect.reg После этого его можно запустить и необходимые изменения будут записаны в реестр. Значение «NtpServer»=»time.net.org,0x01» измените на своё (см. текст выше). Скачать этот файл.
Если Ваш брандмауэр работает в конфигурации очень высокой безопасности, то можете создать в нём разрешающие правила для входящих и исходящих подключений на протокол UDP порт 123.
Для коррекции времени можно использовать файл с расширением bat, содержание которого составляет строка: w32tm /resync Этот файл bat должен быть запущен под правами администратора системы (запуск от имени администратора).
Создайте в блокноте текстовый файл с содержанием w32tm /resync и сохраните его как файл с расширением bat, например, timesync.bat
Но, как показала практика, и запуска этого файла оказалось мало. Командная строка выдала:
Обнаружена следующая ошибка: Служба не запущена (0x80070426)
Оказывается, служба времени в Windows 7 (в Windows XP было иначе) не будет отключаться только в том случае, если она была запущена вручную через окно «Службы» или с помощью кнопки синхронизации «Обновить сейчас» в окне «Время и дата».
Чтобы исправить эту ситуацию, в командной строке (с правами администратора), введите следующие команды:
1. net stop w32time – останавливаем службу времени, если запущена.
2. w32tm /debug /disable – отключаем режим отладки.
3. w32tm /unregister – удаляем регистрацию службы.
4. w32tm /register – снова регистрируем службу.
5. sc triggerinfo w32time start/networkon stop/networkoff – указываем запуск службы при подключении к сети и остановку при отключении от сети.
После команды 5 Вы должны увидеть:
[SC] ChangeServiceConfig2: успехПробуем снова в командной строке с правами администратора запустить bat-файл с содержанием:
w32tm /resync
pause
Вторая строка pause необходима для того, чтобы увидеть результат выполнения команды w32tm /resync.
Так и хочется воскликнуть: боже мой, как всё запущено! А ведь исходя из описания службы можно подумать, что она, всё-таки, работает после старта системы, хотя и с задержкой:
Теперь возвращаюсь к вопросу коррекции времени. Так как служба времени будет стартовать только после появления сети (которая не совсем сразу появляется, а только после получения адреса IP), то саму коррекцию надо немного задержать.
Простым способом реализации запуска с задержкой после старта системы является ПО Startup delayer. Описание можно почитать здесь. По запросу в поисковике сразу найдётся большой выбор источников, с которых эту программу можно скачать.
Итак, в моём случае коррекция времени производится через 4 минуты и 15 секунд после старта системы.
А установленное время корректируется через каждый час:
Некоторые сведения, которые были использованы при разбирательстве с вопросом о синхронизации времени в Windows 7 Вы можете найти в приводимых выдержках с Интернет, которые опубликованы на этой странице.
Потерянное время: сбои часов на «семерке»
Сбои часов реального времени в ОС производства Microsoft имеют давнюю историю, уходящую корнями во времена операционных систем семейства MS-DOS с консольным интерфейсом. Первые версии ДОС требовали от пользователя ручного ввода текущей даты и времени на старте системы и вели отсчет минут с секундами только на протяжении текущего сеанса работы пользователя.
Дело в том, что их показания не синхронизировались с показаниями времени на удаленных серверах, как это происходит сейчас, а основывались на функционировании специально микрочипа, впаянного прямо в материнскую плату компьютера. Такое понятие, как часовой пояс, не поддерживалось в принципе, и пользователь сам должен был следить за всем, что касалось работы часов в реальном времени. Как только батарейка микрочипа разряжалась, ни о какой точности измерений не могло быть и речи.
Это было причиной сбоев многих программ и даже систематических зависаний компьютера. Поэтому пользователю не только нужно было знать о том, как физически функционируют механизмы таймера, но и уметь своевременно заменить батарейку, что требовало возни с потрохами железа ПК.
Однако время сбивается и на современных нам версиях Windows. Почему сбивается время на компьютере при наличии синхронизации с удаленным сервером и как устранить эту неполадку – тема отдельного разговора. Именно ей мы и посвятили эту небольшую заметку. Мы не станем заниматься разбирательством причин эпизодических багов, а будем описывать ситуацию, когда часы на компьютере барахлят регулярно.
Причины неполадок с системным хронометром
Основных причин три:
- Несоответствие часового пояса региона, в котором находится пользователь, и часового пояса, указанного в настройках компа.
- Проблемы с батарейкой CMOS, той самой, о которой мы говорили выше. Как бы там ни было, а она по-прежнему используется Windows для отчетов таймера.
- Компьютер заражен вирусом особого типа, влияющим на показания хронометра ПК.
Во всех этих случаях возникает ситуация, характерная для древних версий ДОС: пользователь входит в систему и начинает возню с настройками времени. Правда делает он это не в консоли, а при помощи апплета трея, но суть дела от этого нисколько не меняется. Кому же приятно каждый раз настраивать эти параметры?
Есть и неочевидные последствия этой проблемы. Например, многие сайты используют привязку посетителей к определенному промежутку времени. И если показания стрелок часов компьютера оказываются вне этого диапазона, то доступ к ресурсам сайта блокируется. Другая проблема связана с лицензированием программного обеспечения.
Современные лицензионные пакеты программ имеют обыкновение допускать работу с ними пользователя только с правильно настроенным хронометражем, соответствующим периоду действия лицензии.
Неправильная работа подсистемы измерения времени Windows приводит к тому, что эти программы просто отказываются запускаться (конкретный пример – антивирусы).
Чтобы не иметь неприятностей, нужно настроить синхронизацию с интернетом. Это вполне возможно, так как большинство современных компьютеров подключено к сети практически постоянно:
- Заходим в панель управления операционной системой.
- Открываем окошко «Дата и время» по ссылке с таким же названием.
- Переходим на закладку «Время по интернету».
- Жмем на кнопку «Изменить параметры».
- Проставляем флажок, ответственный за синхронизацию.
Часы больше не сбиваются, а вы теперь знаете, что делать, если на ОС Windows 7 постоянно сбивается время.