Моя уже делает это из коробки. Какой дисто вы используете?
Гербен
Распбиан Уизи
Алессандро Да Ругна
работает как есть, как-то
lenik
1
@Thorb Pi подключен через сетевой кабель / dhcp. После загрузки у него просто нет действительной даты, это занимает некоторое время (от 10 до 45 минут)
Алессандро Да Ругна,
1
Это будет сделано автоматически через пару минут. Убедитесь, что вы установили его для использования главных часов в Национальном бюро стандартов, time.nist.gov, как описано здесь: raspberrypi.stackexchange.com/questions/68811/…
SDsolar
Ответы:
40
Сделать apt-get install ntpdate.
ntpdateбудет работать при подключении интерфейса Ethernet и устанавливать время с ntp-сервера (см. /etc/default/ntpdate).
Если ntpdон запущен, ntpdate ничего не будет делать, однако ntpdateбудет запускаться до запуска ntpdпри загрузке - так что это должно сработать, чтобы установить время при загрузке, пока есть соединение Ethernet.
Это было абсолютным решением моей проблемы, но я обнаружил, что оно временное, пока я не перезагрузился. В конце концов я обнаружил ошибку в выключении, что он не мог обновить hwclock, потому что часы hw имели будущую дату (понятия не имею, как это произошло). Но решение было силой обновления hwclock. Это привело к обновлению фальшивых аппаратных часов, а затем при загрузке время было, по крайней мере, близко к текущему, поэтому ntp мог нормально выполнять свою работу.
Piwaf
34
После поиска вокруг, этот метод работал для меня. Как вы знаете, Raspberry Pi 3 по умолчанию отключил NTP. Таким образом, просто набрав это, поддержка NTP будет включена:
sudo timedatectl set-ntp True
Проверить результат с timedatectl status
В случае предупреждения вам, возможно, придется бежать sudo timedatectl set-local-rtc trueтоже.
Спасибо, это, наконец, помогло мне, и, кажется, это правильный путь, несмотря на предыдущие ответы.
Charlies
1
Это лучший ответ, мне очень помог. Вы можете использовать sudo, чтобы избежать ввода пароля (полезно для скриптов, которые его запускают). Какова цель команды секунд? set-local-rtc
Arad
12
Если вы установите часовой пояс в raspi-configRaspberry Pi автоматически обновит время при загрузке, если он подключен к интернету.
ntpd испускает пакеты IP / UDP с полем ToS, установленным в 0xc0. Так что это очень похоже на другую проблему, с которой я (и многие другие) столкнулся с Raspberry Pi3 при работе через внутренний интерфейс Wi-Fi.
Rasberry Pi моего сына не будет обновлять время «из коробки», и, попробовав все приведенные выше предложения, я смог обновить его вручную, но не автоматически. Наконец, после безуспешного поиска в другом месте, я обнаружил, что файл ntp.conf, поставляемый с Rasberry Pi, имеет следующие закомментированные строки:
#restrict 127.0.0.1
#restrict ::1
я использовал
sudo nano /etc/ntp.conf
в терминале отредактировать файл ntp conf теперь:
# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1
Это решило проблему для нас. Он обновляется с помощью WiFi и Ethernet-кабеля. Я не знаю, будет ли оно обновляться через WiFi без изменения, предложенного выше для rc.local, так как к тому времени, когда я нашел решение выше, я уже внес это изменение и не отменял его.
Я нашел timedatectlприложение, чтобы помочь мне, когда у меня возникла похожая проблема. Он установлен по умолчанию, и «--help» дает довольно хороший и простой обзор того, как использовать инструмент.
Примечание: убедитесь, что ваш часовой пояс установлен правильно, что может делать и этот инструмент.
Именно такой подход я и выбрал. Многие из этих ответов, казалось, указывали на вещи, которые просто не проверялись, когда я смотрел на свою систему Raspian:
У меня не было ничего, что появлялось в журналах, указывающих, что что-то timedatectlделало, или что ntpсинхронизировалось в работоспособном состоянии NIC, или что NTPD даже был установлен / настроен.
В конце я просто добавил это к своему /etc/rc.local:
$ cat /etc/rc.local
logger "Beginning force syncing NTP..."
service ntp stop
ntpd -gq
service ntp start
logger "Finished force syncing NTP..."
И установлено ntp:
$ sudo apt-get install ntp
Что приводит к этому в /var/log/syslog:
Aug 5 09:10:20 pi-hole ntp[526]: Starting NTP server: ntpd.
Aug 5 09:10:20 pi-hole ntpd[555]: proto: precision = 1.458 usec (-19)
Aug 5 09:10:20 pi-hole ntpd[555]: Listen and drop on 0 v6wildcard [::]:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 2 lo 127.0.0.1:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 3 eth0 192.168.1.85:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 4 lo [::1]:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123
Aug 5 09:10:20 pi-hole ntpd[555]: Listening on routing socket on fd #22 for interface updates
Aug 5 09:10:21 pi-hole ntpd[555]: ntpd exiting on signal 15 (Terminated)
Aug 5 09:10:21 pi-hole ntp[661]: Stopping NTP server: ntpd.
Aug 5 09:10:21 pi-hole ntpd[674]: ntpd 4.2.8p10@1.3728-o Sat Mar 10 18:03:33 UTC 2018 (1): Starting
Aug 5 09:10:21 pi-hole ntpd[674]: Command line: ntpd -gq
Aug 5 09:10:21 pi-hole ntpd[674]: proto: precision = 0.625 usec (-21)
Aug 5 09:10:21 pi-hole ntpd[674]: Listen and drop on 0 v6wildcard [::]:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 2 lo 127.0.0.1:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 3 eth0 192.168.1.85:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 4 lo [::1]:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123
Aug 5 09:10:21 pi-hole ntpd[674]: Listening on routing socket on fd #22 for interface updates
Aug 5 09:10:34 pi-hole ntpd[674]: Soliciting pool server 198.98.57.16
Aug 5 09:10:35 pi-hole ntpd[674]: Soliciting pool server 74.82.59.149
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 23.131.160.7
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 52.37.26.163
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 204.2.134.163
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 96.126.100.203
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 199.223.248.101
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 66.228.42.59
Aug 5 09:10:36 pi-hole ntpd[674]: Soliciting pool server 208.75.89.4
Aug 5 09:10:37 pi-hole ntpd[674]: Soliciting pool server 204.2.134.164
Aug 5 09:10:37 pi-hole ntpd[674]: Soliciting pool server 104.236.116.147
Aug 5 09:10:38 pi-hole ntpd[674]: Soliciting pool server 204.9.54.119
Aug 5 09:10:48 pi-hole ntpd[674]: ntpd: time set +6.769186 s
Aug 5 09:10:49 pi-hole ntpd[853]: ntpd 4.2.8p10@1.3728-o Sat Mar 10 18:03:33 UTC 2018 (1): Starting
Aug 5 09:10:49 pi-hole ntpd[853]: Command line: /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 111:114
Aug 5 09:10:49 pi-hole ntp[844]: Starting NTP server: ntpd.
Aug 5 09:10:49 pi-hole ntpd[856]: proto: precision = 0.625 usec (-21)
Aug 5 09:10:49 pi-hole ntpd[856]: Listen and drop on 0 v6wildcard [::]:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 2 lo 127.0.0.1:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 3 eth0 192.168.1.85:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 4 lo [::1]:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listen normally on 5 eth0 [fe80::f5ea:7663:4ec:784d%2]:123
Aug 5 09:10:49 pi-hole ntpd[856]: Listening on routing socket on fd #22 for interface updates
Aug 5 09:10:49 pi-hole root: Finished force syncing NTP...
Не работает на минимальном raspbian: Failed to start ntp.service: Unit ntp.service not found.И ntpd тоже не существует. Пи определенно выигрывает время. (Я смотрю на это, потому что мои HTTPS керлы не работают без -k при запуске до этого)
Стивен Лу
@StevenLu - я обновлю A'er, чтобы включить установку ntp.
ОДС
@StevenLu -apt-get install ntp
SLM
1
Вам не нужно использовать NTP для решения проблемы. Существует скрипт, который считывает дату с сервера, и вам нужно только установить дату, которая будет результатом этого скрипта (ваш Raspberry Pi должен быть подключен к Интернету). Затем вам нужно запустить эту команду при запуске.
Ответы:
Сделать
apt-get install ntpdate
.ntpdate
будет работать при подключении интерфейса Ethernet и устанавливать время с ntp-сервера (см./etc/default/ntpdate
).Если
ntpd
он запущен, ntpdate ничего не будет делать, однакоntpdate
будет запускаться до запускаntpd
при загрузке - так что это должно сработать, чтобы установить время при загрузке, пока есть соединение Ethernet.источник
Linux raspberrypi 4.14.30-v7+ #1102 SMP Mon Mar 26 16:45:49 BST 2018 armv7l GNU/Linux
тоже не былоЕсли ваши часы выключены, вам может потребоваться принудительно синхронизировать ntp, выполнив:
источник
После поиска вокруг, этот метод работал для меня. Как вы знаете, Raspberry Pi 3 по умолчанию отключил NTP. Таким образом, просто набрав это, поддержка NTP будет включена:
Проверить результат с
timedatectl status
В случае предупреждения вам, возможно, придется бежать
sudo timedatectl set-local-rtc true
тоже.источник
Если вы установите часовой пояс в
raspi-config
Raspberry Pi автоматически обновит время при загрузке, если он подключен к интернету.sudo raspi-config
Internationalisation Options
I2 Change Timezone
Finish
Yes
чтобы перезагрузить сейчасисточник
I2 Change Timezone
Опция не существует большеСмотрите сообщение на форуме Время не синхронизируется на Pi 3 и с официальным ключом .
ntpd испускает пакеты IP / UDP с полем ToS, установленным в 0xc0. Так что это очень похоже на другую проблему, с которой я (и многие другие) столкнулся с Raspberry Pi3 при работе через внутренний интерфейс Wi-Fi.
В качестве обходного пути добавьте команду
в файл
до выхода 0 линия. Далее перезагрузитесь и проверьте.
источник
Уже должно быть обновление времени. Сервер NTPD должен запускаться сразу после файла подкачки и перед SSHD.
Проверьте файл /etc/ntp.conf, чтобы убедиться, что он настроен.
В нем должен быть указан хотя бы один сервер. Я использую time.nrc.ca для моего сервера.
Страница руководства для ntp.conf находится здесь: http://linux.die.net/man/5/ntp.conf
источник
Rasberry Pi моего сына не будет обновлять время «из коробки», и, попробовав все приведенные выше предложения, я смог обновить его вручную, но не автоматически. Наконец, после безуспешного поиска в другом месте, я обнаружил, что файл ntp.conf, поставляемый с Rasberry Pi, имеет следующие закомментированные строки:
я использовал
в терминале отредактировать файл ntp conf теперь:
Это решило проблему для нас. Он обновляется с помощью WiFi и Ethernet-кабеля. Я не знаю, будет ли оно обновляться через WiFi без изменения, предложенного выше для rc.local, так как к тому времени, когда я нашел решение выше, я уже внес это изменение и не отменял его.
источник
Я нашел
timedatectl
приложение, чтобы помочь мне, когда у меня возникла похожая проблема. Он установлен по умолчанию, и «--help» дает довольно хороший и простой обзор того, как использовать инструмент.Примечание: убедитесь, что ваш часовой пояс установлен правильно, что может делать и этот инструмент.
источник
Именно такой подход я и выбрал. Многие из этих ответов, казалось, указывали на вещи, которые просто не проверялись, когда я смотрел на свою систему Raspian:
У меня не было ничего, что появлялось в журналах, указывающих, что что-то
timedatectl
делало, или чтоntp
синхронизировалось в работоспособном состоянии NIC, или что NTPD даже был установлен / настроен.В конце я просто добавил это к своему
/etc/rc.local
:И установлено
ntp
:Что приводит к этому в
/var/log/syslog
:источник
Failed to start ntp.service: Unit ntp.service not found.
И ntpd тоже не существует. Пи определенно выигрывает время. (Я смотрю на это, потому что мои HTTPS керлы не работают без -k при запуске до этого)apt-get install ntp
Вам не нужно использовать NTP для решения проблемы. Существует скрипт, который считывает дату с сервера, и вам нужно только установить дату, которая будет результатом этого скрипта (ваш Raspberry Pi должен быть подключен к Интернету). Затем вам нужно запустить эту команду при запуске.
Шаг 1: Получить дату с сервера.
Шаг 2: Запустите команду при запуске, добавив ее в файл
/etc/rc.local
(Работает в Ubuntu 16.04).КРЕДИТЫ:
1- https://askubuntu.com/a/655528/572294
2- https://askubuntu.com/a/1199/572294
источник
Я использую следующее в образе по умолчанию для синхронизации времени без установки дополнительных пакетов:
источник