Как сохранить системное время?

Я знаю, что у Малины Пи нет системных часов, чтобы сэкономить деньги. Как я могу сохранить системное время?

40 голосов | спросил user46 14 J0000006Europe/Moscow 2012, 04:24:14

5 ответов


40

Программное решение

Самый популярный способ сохранения системного времени - через демон протокола сетевого времени (NTPd).

  

NTPd является наиболее распространенным методом синхронизации часов программного обеспечения системы GNU /Linux с интернет-серверами времени с использованием протокола сетевого времени.

NTPd должен быть установлен и настроен в операционной системе по умолчанию, Debian Squeeze. Вам потребуется установить и настроить его вручную, хотя для Arch Linux.

Сначала вы должны установить NTP.

  $ sudo pacman -S ntp
 

Теперь вы можете вручную обновить его через командную строку.

  $ sudo ntpd -qg
 

Или вы можете добавить его в список демонов при запуске, добавив его в свой файл /etc/rc.conf . Таким образом.

  # /etc/rc.conf
DAEMONS = (! Hwclock ntpd)
 

Обратите внимание, что вам нужно отключить hwclock , указав перед ним восклицательный знак (! ) в списке демонов.


Защитить от mlp : Если вы добавите ntpdate к вашему списку демонов время будет исправлено после загрузки намного быстрее. Таким образом, список ваших демонов будет выглядеть так.

  # /etc/rc.conf
DAEMONS = (! Hwclock ntpd ntpdate)
 
ответил 14 J0000006Europe/Moscow 2012, 04:24:15
16

Аппаратное решение

Если вы хотите гарантировать, что время на RPi всегда правильно или хотите поддерживать время без сетевого подключения, вам нужно будет купить плату расширения с часами реального времени (RTC) на ней: есть по меньшей мере, один доступный и, по крайней мере, один в разработке.

Доступные платы расширения RTC

Расширительные платы RTC в разработке

ответил Alex Chamberlain 14 J0000006Europe/Moscow 2012, 11:33:08
3

Для несетевых приложений (или когда время сети может быть недостаточно) вы можете установить часы RTC (ответ @Alex Chamberlain) со временем, полученным от приемника GPS или приемника VLF (в Северной Европе это было бы Регби MSF). Оба могут быть отличными решениями для полевых устройств (роботы, мониторинг полей и т. Д.).

Оба решения также сделают хорошие проекты для хобби. Я помню, как в 1980-х годах был создан ресивер MSF-приемник. Получатель GPS-приемника («шайба») предоставит время и дату в предложениях NMEA 0183 - это будет простой проект кодирования для извлечения этой информации.

ответил winwaed 14 J0000006Europe/Moscow 2012, 16:56:39
3

Установите демон NTP в Arch Linux с помощью systemd:

  sudo pacman -S ntp
sudo systemctl включить ntpd
sudo systemctl start ntpd
 

Также убедитесь, что ваш часовой пояс установлен правильно, в моем случае:

  sudo rm /etc /localtime
sudo ln -s /usr /share /zoneinfo /Азия /Токио /etc /localtime
 
ответил tjoe 13 22012vEurope/Moscow11bEurope/MoscowTue, 13 Nov 2012 15:49:37 +0400 2012, 15:49:37
0

Если вы не хотите, чтобы NTP работал в вашей системе, все время вы можете использовать один из нескольких различных параметров для установки времени:

  • ntpdate - после установки он устанавливает систему, чтобы получить время, когда появляется какой-либо интерфейс (хотя " устарел ", он все еще довольно широко используется).
  • rdate - более простой и легкий подход, хотя и немного менее точный.
  • tlsdate - более безопасный параметр, который использует сервер TLS /SSL как источник времени.

Очевидно, что ваши часы не будут такими точными, как использование NTP, поскольку все часы дрейфуют, а также, поскольку эти приложения используют только один источник времени, они могут потенциально привести к неправильному времени, если у их выбранного источника возникла проблема.

ответил Pierz 29 62014vEurope/Moscow11bEurope/MoscowSat, 29 Nov 2014 01:39:59 +0300 2014, 01:39:59

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132