Часовой пояс в Arch Linux выставляется одной командой: timedatectl set-timezone Europe/Moscow. Автосинхронизация времени через NTP включается так: timedatectl set-ntp true. После этих двух команд время будет точным и правильным. Дальше разберём каждую опцию.
Посмотри, что показывает система:
timedatectl status
В выводе увидишь:
Europe/Moscow (MSK, +0300).Если видишь NTP service: inactive — время не синхронизируется и может уплыть. Если RTC in local TZ: yes — аппаратные часы настроены на локальное время, что часто ломает dualboot. Детали синхронизации (сервер, offset, jitter) покажет timedatectl timesync-status.
Список доступных поясов: timedatectl list-timezones. Можно фильтровать: timedatectl list-timezones | grep Moscow.
Установка:
sudo timedatectl set-timezone Europe/Moscow
Команда создаёт симлинк /etc/localtime на файл из /usr/share/zoneinfo/. Вся система, включая запущенные программы, сразу начнёт показывать время в новом поясе.
Не хочешь копаться в списках — используй tzselect без sudo: утилита задаст пару вопросов (континент, город) и подскажет нужное значение TZ, которое потом выставишь через timedatectl из списка выше.
В GNOME и KDE Plasma пояс определяется автоматически — включи переключатель в настройках «Дата и время».
По умолчанию в Arch Linux стоит systemd-timesyncd — лёгкий SNTP-клиент. Он не тянет полную NTP-реализацию, а просто запрашивает время у одного сервера и выставляет его. Для десктопа этого достаточно.
Включить синхронизацию одной командой:
sudo timedatectl set-ntp true
Служба systemd-timesyncd.service запустится и будет синхронизировать время при наличии сети. Проверь:
timedatectl status
Строки System clock synchronized: yes и NTP service: active — всё в порядке.
По умолчанию используются серверы пула 0.arch.pool.ntp.org. Поменять их можно в /etc/systemd/timesyncd.conf, секция [Time]:
[Time]
NTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
FallbackNTP=0.pool.ntp.org 1.pool.ntp.org
После правки перезапусти службу: sudo systemctl restart systemd-timesyncd.
Если что-то идёт не так, смотри логи:
journalctl -u systemd-timesyncd
Там видно, к какому серверу подключается служба и какой offset получается.
Нужна высокая точность или ноутбук, который часто переключается между сетями? Поставь chrony: sudo pacman -S chrony. Он быстрее сходится к эталонному времени и лучше работает с нестабильными соединениями. Перед установкой отключи systemd-timesyncd: sudo timedatectl set-ntp false.
Классика: после запуска Windows в dualboot время сбивается на час. Причина — Windows считает аппаратные часы (RTC) локальными, а Linux — UTC. Каждая ОС воспринимает правку другой как сдвиг.
Рекомендация ArchWiki. В Windows открой командную строку от администратора и выполни:
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
Windows начнёт использовать UTC для аппаратных часов — как и Linux. Перезагрузись в обе системы и проверь время.
Не хочешь лезть в реестр? Скажи Linux считать аппаратные часы локальными:
sudo timedatectl set-local-rtc 1
Решение рабочее, но не идеальное: systemd может вести себя непредсказуемо при смене поясов и переходе на летнее время. Вернуть обратно: sudo timedatectl set-local-rtc 0.
Про проблемы с GRUB после установки Windows читай в статье «Dualboot: Windows пропала из меню GRUB».
timedatectl status
Если System clock synchronized: no или NTP service: inactive — включай sudo timedatectl set-ntp true.
Посмотри время RTC: sudo hwclock --show. Сильно отличается от системного? Синхронизируй: sudo hwclock --systohc — команда записывает системное время в аппаратные часы.
journalctl -u systemd-timesyncd -f
Флаг -f — логи в реальном времени. Видишь ошибки подключения к серверам — проверь интернет и поменяй серверы в /etc/systemd/timesyncd.conf.
ptp_kvm, в VirtualBox — «Гостевые дополнения».Да. Без синхронизации время постепенно уплывает. Это ломает SSL-сертификаты (браузер отказывается открывать сайты), путает логи и почту.
Для большинства — systemd-timesyncd. Он уже стоит, не ест ресурсы и делает своё дело. Chrony нужен для высокой точности или сложных сетевых условий.
Проверь два момента: включена ли NTP-синхронизация (timedatectl status) и нет ли конфликта UTC/localtime в dualboot. Если всё в порядке — скорее всего, села батарейка RTC.
В /etc/systemd/timesyncd.conf пропиши NTP=0.ru.pool.ntp.org 1.ru.pool.ntp.org 2.ru.pool.ntp.org 3.ru.pool.ntp.org. Полный список серверов — на pool.ntp.org.
Настроить время в Arch Linux — дело двух команд: timedatectl set-timezone для пояса и timedatectl set-ntp true для синхронизации. В dualboot с Windows разберись с UTC/localtime, чтобы системы не воевали. А если время уплывает — сначала проверь синхронизацию, потом аппаратные часы, и только потом меняй батарейку.
Задай вопрос в чате — отвечаем быстро, по делу и без воды.
Комментарии