linux
October 28

Настройка времени и даты в Ubuntu Linux 

Системное время в Linux

В Linux используются два типа часов:
- Системное время (system clock) - отсчитывается ядром операционной системы
- Аппаратное время (hardware clock/RTC) - поддерживается BIOS/UEFI материнской платы

Просмотр текущих настроек времени

Для проверки текущего системного времени используйте команду:

date

Для просмотра аппаратного времени:

sudo hwclock --show

Текущий часовой пояс можно узнать командой:

timedatectl

Настройка часового пояса

Установить часовой пояс можно несколькими способами:

1. Через командную строку:

sudo timedatectl set-timezone Europe/Moscow

2. Интерактивный выбор:

sudo dpkg-reconfigure tzdata

Список доступных часовых поясов можно получить командой:

timedatectl list-timezones

Синхронизация системного времени

Ubuntu по умолчанию использует службу systemd-timesyncd для синхронизации времени через NTP. Проверить статус синхронизации:

timedatectl show-timesync --all

Включить/отключить автоматическую синхронизацию:

sudo timedatectl set-ntp true    # включить
sudo timedatectl set-ntp false   # отключить

Ручная установка времени

Если автоматическая синхронизация отключена, время можно установить вручную:

1. Системное время:

sudo date -s "2024-10-28 14:45:00"

2. Аппаратное время:

sudo hwclock --set --date="2024-10-28 14:45:00"

Синхронизация между системным и аппаратным временем

Скопировать системное время в аппаратные часы:

sudo hwclock --systohc

Скопировать время из аппаратных часов в систему:

sudo hwclock --hctosys

Настройка формата времени

Формат отображения времени определяется локалью системы. Изменить локаль:

sudo update-locale LC_TIME=ru_RU.UTF-8

Устранение проблем

1. Если время сбивается при двойной загрузке с Windows:

sudo timedatectl set-local-rtc 1

2. При проблемах с NTP-синхронизацией проверьте:
- Доступность NTP-серверов
- Настройки брандмауэра (порт 123 UDP)
- Статус службы timesyncd:

systemctl status systemd-timesyncd

Дополнительные инструменты

Для расширенной настройки NTP можно установить chrony:

sudo apt install chrony

Chrony предоставляет более точную синхронизацию и дополнительные возможности настройки через файл /etc/chrony/chrony.conf.

Автоматическое обновление часового пояса

Для автоматического определения часового пояса по геолокации установите пакет tzupdate:

sudo apt install tzupdate
sudo tzupdate

Все описанные настройки сохраняются после перезагрузки системы. При возникновении проблем рекомендуется проверить системные журналы:

journalctl -u systemd-timesyncd