- Установка времени Linux
- Как работает время на компьютере?
- Установка времени Linux
- Установка времени через терминал
- Выводы
- Как исправить расхождение времени при использовании двойной загрузки Windows-Linux
- Почему двойная загрузка Linux изменяет время в Windows?
- 1. Настройка Linux на использование местного времени для аппаратных часов
- 2. Настройка Windows на автоматическую синхронизацию времени из Интернета
- 3. Настройка Windows на использование времени UTC для аппаратных часов
- Заключение
Установка времени Linux
Время от времени часы на компьютере могут сбиваться по различным причинам, время может быть установлено изначально неправильно или неправильно выбран часовой пояс. Хотя в системе по умолчанию настроена синхронизация времени с интернетом и я уже давно забыл что значит постоянно перенастраивать часы, если они отстают, такая необходимость может появиться.
В этой статье мы рассмотрим как выполняется установка времени Linux различными способами, через терминал, графический интерфейс и так далее. Но сначала нам нужно понять как работает время.
Как работает время на компьютере?
Статья ориентирована на новичков, в первую очередь на них, потому что профессионалы уже и так знают как это сделать. Поэтому сначала рассмотрим как работает время в Linux. Когда компьютер работает часы идут, это ясно, но когда вы его отключаете, а затем включаете снова часы показывают не то время, на котором остановились, а правильное время. Это происходит потому, что часы на материнской плате идут постоянно. Таймер питается от той же батарейки, что и энергозависимая память BIOS.
Операционная система передает значение таймера в память BIOS при выключении и берет его оттуда при включении. Отсюда берутся проблемы со временем при двойной загрузке Windows и Linux, но эта тема раскрыта в другой статье — сбивается время в Ubuntu и Windows. Другая проблема почему может сбиваться время — это неверно установленный часовой пояс. Если вы установили часовой пояс linux неверно, то часы будут постоянно синхронизироваться через интернет и идти неверно.
Когда все проблемы с временем будут устранены, можно перейти установить нужное время и быть уверенным что оно не будет сбиваться. Дальше рассмотрим как это сделать.
Установка времени Linux
Вы можете видеть текущее время прямо на вашем рабочем столе, в KDE часы добавлены на панель, да и в Gnome, они размещены по центру панели по умолчанию:
Если навести курсор на время, вы увидите более подробную информацию, область уведомлений и календарь.
Но настроить время здесь уже не получится. Для этого нужно открывать настройки системы. Мы будем рассматривать настройки для Gnome. Откройте меню Dash и наберите в строке поиска «Параметры»:
Дальше откройте «Дата и время»:
Как видите, здесь уже установлено значение по умолчанию «Автоматическое определение даты и времени», а внизу есть пункт, который отвечает за часовой пояс.
Вы можете просто поменять часовой пояс чтобы время синхронизировалось правильно, если что-то не так. Также можно задать время вручную. Для этого сначала отключите автоматическую синхронизацию, а затем выберите дату и время:
Никаких кнопок нажимать не нужно, закройте окно выбора и новое время будет применено. Вы всегда можете вернуть настройки до значения по умолчанию.
Установка времени через терминал
Кроме графического интерфейса, у вас есть возможность делать все необходимые действия через терминал. Для этого есть утилита date. Сначала смотрим текущее время:
У утилиты есть множество опций отображения и настроек, но мы не будем их рассматривать. Есть еще одна команда, которая позволяет посмотреть системное время linux:
Чтобы установить время можно использовать ту же команду date. Для этого ей нужно передать строку со временем и датой, например:
В качестве строки можно брать ту, которую возвращает команда date без параметров, только она должна быть на английском, поэтому сразу смотрим:
sudo date —set «Wed Sep 6 20:43:36 EEST 2017»
Если у вас включена коррекция даты через интернет, то ее нужно отключить перед этим, потому что вы даже заметить изменений не успеете, как сервер времени linux установит правильное время. Можно сократить эту строку:
sudo date —set «Sep 6 20:43:36 2017»
Это даст тот же результат. Еще один вариант — указать формат данных, которые вы собираетесь передавать с помощью модификаторов, например, изменить время linux:
Здесь формат очень прост — часы:минуты:секунды. Можно давать время в 12 часовом формате, для этого добавьте модификатор %p:
Вы изменяете текущее время, но аппаратное системное время linux не изменяется, чтобы сохранить изменения используйте команду:
Еще один новый инструмент от systemd для управления временем — timedatectl. С помощью него можно выполнить те же операции, сначала смотрим доступную информацию о времени:
Текущее системное время отображается в строке Local Time. Чтобы изменить дату, используйте опцию -set-time. Синтаксис передаваемого ей параметра такой: ГГГГ-ММ-ДД ЧЧ:ММ:СС. Думаю тут понятно и без комментариев. Например:
sudo timedatectl —set-time «2017-09-06 20:43:36»
Можно задать только время, тогда нужно использовать синтаксис времени ЧЧ:ММ:СС, например:
sudo timedatectl —set-time «20:43:36»
Еще раз говорю, что если включена синхронизация по сети, то вы не сможете изменить время. Но с помощью timedatectl ее можно отключить:
sudo timedatectl set-ntp no
sudo timedatectl set-ntp yes
C помощью этой же команды можно не только установить время linux, но и настроить часовой пояс, для этого используйте опцию set-timezone:
sudo timedatectl set-timezone ‘Europe\Kyiv’
Вы можете посмотреть список доступных часовых поясов командой:
Видео о настройке времени с помощью timedatectl:
Выводы
Вот и все. Теперь вы знаете как выполняется установка времени linux. Как видите, это очень просто, вы можете использовать различные способы, в зависимости от того, что вам будет удобнее. Если у вас остались вопросы, спрашивайте в комментариях!
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.
Как исправить расхождение времени при использовании двойной загрузки Windows-Linux
Пробовали ли вы когда-нибудь установить Linux рядом с Windows? Как правило вы попадете в неудачный эксперимент по путешествию во времени. Вы запускаете Windows после Linux в 17:00, и вдруг увидите, что часы показывают, что еще только 15:00.
Это раздражающее явление присутствует почти во всех системах двойной загрузки Windows-Linux. Давайте узнаем, почему это происходит и как исправить эту странную проблему со временем и вернуться к текущей дате и времени.
Почему двойная загрузка Linux изменяет время в Windows?
Суть проблемы заключается в том, как обе эти операционные системы управляют аппаратными часами.
Аппаратные часы — это физический сегмент материнской платы вашего компьютера, который отвечает за поддержание времени. Он питается от батарейки CMOS и управляется ядром операционной системы, в которой вы работаете. Различные операционные системы управляют этими часами по-разному.
Linux устанавливает аппаратные часы на универсальное координированное время (UTC), тогда как Windows предполагает, что аппаратные часы уже используют местное время, полученное из вашего текущего местоположения.
При использовании двойной загрузки Linux продолжает показывать правильное время, потому что, хотя он устанавливает аппаратные часы на UTC, он вычисляет разницу во времени между UTC и вашим местным временем и устанавливает внутреннее смещение в часах ОС.
Windows, однако, не знает и не привязан к изменению часового пояса аппаратных часов, и продолжает считывать время с аппаратных часов и представлять его как местное время.
Чтобы исправить это, необходимо настроить обе операционные системы на единогласную работу с аппаратными часами или часами ОС.
Давайте узнаем три способа исправить ситуацию, когда Windows показывает неправильное время при двойной загрузке после Linux.
Вы должны использовать только один из этих способов и не комбинировать их.
1. Настройка Linux на использование местного времени для аппаратных часов
Как обсуждалось ранее, проблема возникает из-за того, что Linux устанавливает аппаратные часы на UTC. Самый простой подход к устранению неправильного отображения времени в Windows заключается в настройке Linux для установки аппаратных часов, иначе известных как часы реального времени (RTC), на местное время.
Тогда Windows будет получать местное время с системных часов и отображать его, устраняя проблему. Вот как настроить RTC на использование местного времени в Linux:
1. Запустите новое окно терминала.
2. С помощью команды timedatectl настройте RTC на использование местного времени, выполнив эту команду с префиксом sudo:
3. Перезагрузите систему вручную или введите команду reboot.
Вот и все шаги, необходимые для настройки аппаратных часов на использование местного времени в Linux.
Чтобы отменить изменения, просто введите ту же команду с небольшой правкой, заменив «1» на «0». Это самый простой способ исправить проблему несоответствия времени при двойной загрузке.
2. Настройка Windows на автоматическую синхронизацию времени из Интернета
Предыдущий способ должен был устранить все ваши проблемы со временем. Если это не так, вот быстрый способ исправить время в Windows без необходимости перезагрузки в Linux.
И Windows, и Linux оснащены функцией автоматической синхронизации времени, которая синхронизирует системное время с сервером времени в Интернете.
Вот шаги, которые необходимо выполнить, чтобы включить автоматическую синхронизацию времени:
Щелкните правой кнопкой мыши в правом нижнем углу панели задач, где отображается время. В появившемся меню нажмите на Настройка даты и времени . Или вы можете открыть Настройки > Время и язык > Дата и время . Установите правильный часовой пояс, если он был неправильным, затем включите Установить время автоматически , нажав на ползунок под надписью, и завершите настройки, нажав на Синхронизировать сейчас. Вы должны увидеть, что время изменилось на местное.
Теперь вы можете спокойно закрыть окно настроек и сосредоточиться на более важных делах.
Вот и все шаги, которые необходимо выполнить, чтобы исправить время в Windows, нарушенное при двойной загрузке Linux.
3. Настройка Windows на использование времени UTC для аппаратных часов
Как говорилось ранее, Windows предполагает, что аппаратные часы настроены на местное время, и не утруждает себя повторным преобразованием их в местное время, поскольку это было бы излишним.
Чтобы решить эту проблему, можно настроить Windows на конфигурацию аппаратных часов и установить их на UTC, чтобы Windows была вынуждена преобразовывать UTC с аппаратных часов в местное время.
Это более сложное решение, поэтому рекомендуется сначала попробовать два предыдущих решения и только потом прибегать к этому. В случае, если оба предыдущих решения не сработали, выполните следующие действия:
- Используя строку поиска или сочетание клавиш Win + R , откройте диалоговое окно «Выполнить» в Windows и введите regedit .
- Открыв редактор реестра Windows, перейдите в это место: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation .
- Щелкните правой кнопкой мыши на пустом месте, выберите New и добавьте новую запись Параметр Q-WORD (64-бита) , дав ей имя RealTimeisUniversal . Если вы используете 32-битную версию Windows, вам нужно добавить запись Параметр D-WORD (32-бита) .
- После того как запись добавлена, дважды щелкните на ней, установите значение 1 и перезагрузите систему.
Теперь Windows сначала установит аппаратные часы на UTC, а затем преобразует UTC в ваше местное время, предоставляя вам правильное время и дату и устраняя таким образом расхождение во времени, возникающее при двойной загрузке Windows с Linux.
Заключение
Неправильное время при двойной загрузке — это общая проблема, с которой сталкиваются все пользователи при использовании двойной загрузки, независимо от того, какую версию Windows и Linux они используют.
Нежелательное перемещение во времени может доставить вам определенные неудобства, но теперь вы знаете, как решить эту проблему тремя различными способами.
Хотя виновник этой проблемы обычно кроется в том, как Linux и Windows подходят к измерению времени. Но иногда это может быть признаком неисправного оборудования или проблем с безопасностью, например, скрытым вредоносным ПО в вашей системе.
В случае, если ни одно из этих исправлений для двойной загрузки не помогло, проверьте работоспособность оборудования или поищите следы вредоносного ПО в системе.