Как установить время и дату на Raspberry PI автоматически при включении с NTP сервера?
Как установить время и дату на Raspberry PI автоматически при включении с NTP сервера? Пробовал делать так, как описано тут — roberthanson1.wordpress.com/2013/03/23/day-5-getti.
Устанавливал сервера в ntp.conf в ru.pool.ntp.org — не помогло, дата все равно неверная.
- Вопрос задан более трёх лет назад
- 28334 просмотра
Комментировать
Решения вопроса 0
Ответы на вопрос 2

В raspberry pi нет аппаратных часов:
pi@raspberrypi:~ $ sudo hwclock hwclock: Cannot access the Hardware Clock via any known method.
Поэтому идем иным путем:
pi@raspberrypi:~ $ date Wed 15 Feb 08:00:59 UTC 2017 pi@raspberrypi:~ $ sudo dpkg-reconfigure tzdata Current default time zone: 'Europe/Moscow' Local time is now: Wed Feb 15 11:15:58 MSK 2017. Universal Time is now: Wed Feb 15 08:15:58 UTC 2017. pi@raspberrypi:~ $ date Wed 15 Feb 11:16:08 MSK 2017 pi@raspberrypi:~ $ sudo ntpdate -u ntp.ubuntu.com 15 Feb 11:16:39 ntpdate[7529]: adjust time server 91.189.94.4 offset -0.001106 sec pi@raspberrypi:~ $ date Wed 15 Feb 11:16:49 MSK 2017
*Может требоваться установить «ntpdate» (aptitude install ntpdate).
Можно и без него, проверить наличие файла /etc/ntp.conf
pi@raspberrypi:~ $ sudo /etc/init.d/ntp restart pi@raspberrypi:~ $ sudo ntpd -gq
С форума raspberrypi в тему NTP / time settings
P.S. По совсем правильному рекомендуют использовать sudo raspi-config в меню выбрать Localisation Options—>Change Timezone—>.
Или если вы гик, можно и руками поработать тык и тык.
Время в Raspberrypi — 2
Прошёл почти год с момента написания оригинальной статьи про время в Raspberrypi, и вот я уже снова столкнулся с этой проблемой. На этот раз мне захотелось сделать мобильную станцию слежения за спутниками вместе с поворотным устройством. Мобильность в данном случае означает то, что я могу принести станцию в поле, поймать несколько сигналов во время чтения книги, отнести домой и залить результаты в https://r2server.ru. Проблема оказалась там, где её никто не ждал. Если отнести Raspberrypi в чисто-поле, то там не будет сигнала Wi-Fi. А это значит, не будет сети. А это значит не будет NTP и неоткуда получить время. Можно, конечно, зайти удалённо на Raspberrypi и вручную выставить время по часам. Но это выглядит слишком утомительным.
RTC для RPi
Вместо того чтобы вручную устанавливать время, можно пойти более простым путём. Достаточно установить RTC модуль и время будет правильным всегда. Вернее, до тех пор, пока работает маленькая пальчиковая батарейка в этом модуле.
Я заказал модуль MakerHawk RPI DS1307.

На обратной стороне в него вставляется небольшая батарейка формата CR1220.

Весь модуль крепится на I2C контакты Raspberrypi.

У меня установлены стандартные радиаторы на процессор. Они не очень высокие, поэтому между ними и RTC модулем есть небольшой зазор. Однако, если ставить нестандартное охлаждение, например, кулер, то могут возникнуть проблемы.
Настройка Raspberrypi
После того как модуль установлен, необходимо настроить Raspberrypi. Это делается достаточно просто.
Во-первых, нужно подключить специальный модуль ядра. Для этого в файл /boot/config.txt нужно добавить следующие строчки:
device_tree=bcm2710-rpi-3-b.dtb dtoverlay=i2c-rtc,ds1307 dtparam=i2c_arm=on
Во-вторых, необходимо выключить старую эмуляцию часов на основе файлов. Для этого нужно удалить и выключить fake-hwclock :
sudo apt-get -y remove fake-hwclock sudo update-rc.d -f fake-hwclock remove
Так же необходимо убрать проверку из /lib/udev/hwclock-set и закомментировать/удалить следующие строчки:
if [ -e /run/systemd/system ] ; then exit 0 fi
После этого, можно перезагружаться. Если всё прошло успешно, то в логах dmesg будут следующие строчки:
[ 5.779005] rtc-ds1307 1-0068: registered as rtc0
Устройство подключено и работает. Теперь можно переходить к заключительному шагу: настройка времени. Необходимо установить системное время.
sudo date -s '2020-06-10 18:30:00'
После чего нужно скопировать текущее системное время на RTC модуль:
sudo hwclock -w date && sudo hwclock -r
Всё готово. Теперь Raspberrypi будет показывать актуальное время после каждого рестарта, даже если нет соединения с интернетом.
Время на raspberry pi
Не могу синхронизировать время. ntpd -qg вроде запускается, но часы так и остаются на 1970 году.

vurdalak ★★★★★
01.02.13 10:19:12 MSK

после перезапуска часы сбрасываются, или новое время тупо не устанавливается?
ymn ★★★★★
( 01.02.13 13:28:20 MSK )
Ответ на: комментарий от ymn 01.02.13 13:28:20 MSK

Не устанавливается. Хотя вручную поставить получилось.
vurdalak ★★★★★
( 01.02.13 14:06:49 MSK ) автор топика
Ответ на: комментарий от vurdalak 01.02.13 14:06:49 MSK
При разнице во времени больше какой-то (не помню) величины, ntpd не синхронизирует время.
До запуска ntp выполняйте «ntpdate ru.pool.ntp.org»
MumiyTroll ★★★
( 01.02.13 14:48:36 MSK )
25 марта 2013 г.
Ответ на: комментарий от ymn 01.02.13 13:28:20 MSK
в рапсбери нет аппаратных часов.
anonymous
( 25.03.13 07:56:26 MSK )

fake-hwclock — и часы будут при загрузки стартовать со времени выключения, и ntpd будет нормально синхронизироваться (1 раз руками подкрутить время все-таки придется).
RH_ ★
( 25.03.13 08:54:55 MSK )
Последнее исправление: RH_ 25.03.13 08:55:53 MSK (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум ntp время (2008)
- Форум Модуль часов реального времени DS3231 для Raspberry Pi (2016)
- Форум Не синхронизируется время с ntp-сервером (2015)
- Форум ntpd (2005)
- Новости piCore 5.2 — дистрибутив для Raspberry Pi (2014)
- Форум ntpd раздает время не сразу (2011)
- Форум Настройка NTP (2013)
- Форум Alpine linux + raspberry pi (2022)
- Форум Не могу изменить время (2022)
- Форум Raspberry Pi (2012)
Сервер времени NTP в локальной сети на Raspberry Pi

Чтобы установить ближайшие к нам NTP серверы, откройте файл конфигурации ntp:
sudo nano /etc/ntp.conf
И заменим сервера на российские, вот отсюда:
http://www.pool.ntp.org/zone/ru
server 0.ru.pool.ntp.org server 1.ru.pool.ntp.org server 2.ru.pool.ntp.org server 3.ru.pool.ntp.org
С синхронизацией разобрались, настроим конфиг на вещание. Добавим строку, которая описывает хосты, на запросы которых будет дан ответ и строки, включающие вещание в нашу локальную сеть:
restrict 192.168.1.0 mask 255.255.255.0 broadcast 192.168.1.255 broadcast 224.0.1.1
Измените первый адрес, выделенный жирным шрифтом, на широковещательный адрес вашей локальной сети. Адрес 224.0.1.1 не меняем, так как эта добавка назначается службой NTP.
Теперь закроем файл конфигурации (CTRL + O, CTRL + X ). Перезапускаем демон ntp:
sudo /etc/init.d/ntp restart
И можно закрывать доступ в интернет, например камерам, а время они будут исправно получать от Raspberry: