Raspberry Pi에는 하드웨어 시계가 없습니다. 부팅 할 때마다 NTPD가 날짜 / 시간을 즉시 업데이트하도록하려면 어떻게해야합니까?
Raspbian 을 실행 중이고 Raspberry Pi는 이더넷 케이블.
댓글
- Mine은 이미 어떤 disto를 사용하고 있습니까?
- Raspbian Wheezy
- @Thorb Pi는 이더넷 케이블 / dhcp로 연결되어 있습니다. 부팅 후 유효한 날짜를 얻지 못하고 시간이 걸립니다. (10 ~ 45 분)
- 몇 분 후에 자동으로 수행됩니다. 설명 된대로 National Bureau of Standards, time.nist.gov에서 마스터 시계를 사용하도록 설정했는지 확인하십시오. 여기 : raspberrypi.stackexchange.com/questions/68811/ …
- 하나는 아직이 질문에 만족스럽게 대답했습니다. 즉 부팅 후 NTP를 통해 시간을 동기화하는 방법 (즉, 재부팅하지 않음)
답변
이후 이 방법은 나를 위해 일했습니다. 아시다시피 Raspberry Pi 3에는 기본적으로 NTP가 비활성화되어 있습니다. 따라서 다음을 입력하기 만하면 NTP 지원이 활성화됩니다.
sudo timedatectl set-ntp True
timedatectl status
p로 결과 확인 >
경고의 경우 sudo timedatectl set-local-rtc true
도 실행해야 할 수 있습니다.
댓글
- 감사합니다. 드디어 도움이되었고 이전 답변에도 불구하고 올바른 방법 인 것 같습니다.
- 그게 가장 좋은 답변이고 많은 도움이되었습니다. ‘ sudo ‘를 사용하여 암호를 입력하지 않도록 할 수 있습니다 (암호를 실행하는 스크립트에 유용). seconds 명령의 목적은 무엇입니까? set-local-rtc
답변
apt-get install ntpdate
수행 .
ntpdate
는 이더넷 인터페이스가 실행될 때 실행되며 ntp 서버에서 시간을 설정합니다 (/etc/default/ntpdate
).
ntpd
가 실행중인 경우 ntpdate는 아무 작업도 수행하지 않지만 ntpdate
는 부팅시-이더넷 연결이있는 한 부팅시 시간을 설정하는 것이 좋습니다.
댓글
- 주식 Raspbian에 이미이 모든 것이있을 것입니다.
- @scruss 내 것 ‘ t. (2013-02-09 wheezy rasbian)
- 나도 그렇지 않았고 수동으로해야했습니다.
- 올바르게 설정되면 몇 분 정도 걸릴 수 있지만 자동으로 수행됩니다.
-
Linux raspberrypi 4.14.30-v7+ #1102 SMP Mon Mar 26 16:45:49 BST 2018 armv7l GNU/Linux
에도 ‘이 없습니다.
답변
시계가 꺼져있는 경우 다음을 수행하여 ntp를 강제로 동기화해야 할 수 있습니다.
sudo /etc/init.d/ntp stop sudo ntpd -q -g sudo /etc/init.d/ntp start
댓글
- ” sudo : ntpd : command not found ”
- ntpd는 명령을 사용하기 위해 설치되었습니다.
- 설치되어 있습니다 , 저는 그렇게 무식하지 않습니다 🙂
- raspberrypi.stackexchange.com/questions/47542/… ? 나는 거기에 세부 사항을 게시했습니다.
- 이것은 내 문제에 대한 절대적으로 해결책 이었지만 재부팅 할 때까지 일시적인 것으로 나타났습니다. 결국 hw 시계에 미래 날짜가 있기 때문에 ‘ hwclock을 업데이트 할 수 없다는 오류가 발생했습니다 (어떻게 발생했는지 알 수 없음). 그러나 해결책은 hwclock 업데이트 힘이었습니다. 이로 인해 가짜 하드웨어 시계로 업데이트가 강제되고 부팅시 시간이 적어도 현재에 가까워서 ntp가 정상적으로 ‘의 작업을 수행 할 수있었습니다.
오류를 반환합니다.
Answer
raspi-config
에서 시간대를 설정하면 Raspberry Pi가 자동으로 인터넷에 연결된 경우 부팅 시간입니다.
-
sudo raspi-config
-
Internationalisation Options
-
I2 Change Timezone
- 지리적 지역 선택
- 가장 가까운 도시 선택
-
Finish
선택 - 지금 재부팅하려면
Yes
선택
댓글
- 잘 작동했습니다.
-
I2 Change Timezone
옵션이 ‘ 더 이상 존재하지 않음 - 최소한 Raspbian Buster에는 존재합니다.
- ” 국제화 옵션 “는 이제 ” 현지화 옵션 ”
- ” 가장 가까운 도시 “는 올바른 방법이 아닙니다. 시간대가 속한 도시를 선택해야합니다. 가장 가까운 도시 일 수도 있고 아닐 수도 있습니다.
답변
포럼 게시물보기 시간 Pi 3 및 공식 동글 에서 동기화되지 않습니다.
ntpd 는 IP / UDP 패킷을 ToS 필드가 0xc0으로 설정되었습니다. 따라서 이는 Wi-Fi 내부 인터페이스를 통해 작동 할 때 Raspberry Pi3에서 발생하는 다른 많은 문제와 매우 유사합니다.
해결 방법으로 다음 명령을 추가하십시오.
/sbin/iptables -t mangle -I POSTROUTING 1 -o wlan0 -p udp --dport 123 -j TOS --set-tos 0x00
파일에
/etc/rc.local
이탈 0 행 앞. 그런 다음 재부팅하고 확인합니다.
댓글
- XMas 용으로받은 RPi3를 설치 한 것과 동일한 문제가 발생하여 문제를 해결했습니다. 좋습니다 !!!
답변
이 질문은 분명히 ” 재활용 ” 어떤 이유로 든 오래된 답변도 재활용하는 것이 적절 해 보입니다. 🙂
지금은 2021 년입니다 …
이 질문은 2013 년에 요청되었습니다. ntpd
는 당시 Raspbian 배포판에 포함 된 계시 소프트웨어였습니다 (wheezy
) . 하지만 2017 년 systemd-timesyncd
가 ntpd
를 대체 한 stretch
배포와 함께 변경되었습니다. 이러한 변경에 대한 이유와 기술적 장단점 중 일부는 그러한 것에 관심이있는 사람들을 위해 이 이전 답변 에서 논의되었습니다.
여기에있는 질문과 관련하여 현재 환경 에서 가장 두드러진 부분 일 것입니다 (post- systemd
)는 다음과 같습니다. 현재 Raspbian 배포에 ntpd
을 설치하기로 결정한 경우 systemd-timesyncd
는 ” 올바른 일을 “합니다! 다른 NTP 데몬이 있는지 확인하고 그에 따라 동작을 조정합니다. 작동합니다 . 명령 줄에 다음을 입력하여 모든 내용을 읽을 수 있습니다.
$ systemctl cat systemd-timesyncd
마지막 몇 줄을 참고하세요.
# 다른 NTP 데몬이 설치된 경우 timesyncd를 실행하지 마십시오.
ConditionFileIsExecutable =! / usr / sbin / ntpd
ConditionFileIsExecutable =! / usr / sbin / openntpd
ConditionFileIsExecutable =! / usr / sbin / chronyd
ConditionFileIsExecutable =! / usr / sbin / VBoxService
즉, systemd-timesyncd
는 이러한 대체 시간 서비스가 시스템에서 실행 중인지 확인하고, 그렇다면 시간 표시 서비스를 제공하기 위해 정중하게 연기합니다.
” 부팅 후 강제로 ” ntpd
업데이트 하시겠습니까?
이것은 OP였습니다. “의 질문. 대답 (2021 년)은 변경되지 않았습니다. 어떤 RPi 시스템에서도이 작업을 수행 할 필요가 없습니다. 누군가가 기본 구성을 변경하지 않은 경우 ! 다음과 같이 확인할 수 있습니다.
$ timedatectl Local time: Wed 2021-01-13 00:25:33 GMT Universal time: Wed 2021-01-13 00:25:33 UTC RTC time: n/a Time zone: Europe/London (GMT, +0000) System clock synchronized: yes NTP service: active RTC in local TZ: no
두 항목 참고 :
-
System clock synchronized: yes
-
NTP service: active
항목 1은 시스템 시계가 기본 시간 소스와 동기화되었음을 알려주고 항목 2는 거의 RPi가 기본적으로 NTP
대신 SNTP
프로토콜을 사용한다는 점에서 참입니다 ( REF ); 즉, RPi에 시간 소스가 있고이를 사용하고 있음을 의미합니다.
업-투-에 필요한 모든 것 “입니다. 2021 년의 날짜 답변 (다음을 제외) : man timedatectl
를 읽고 기능에 대해 자세히 알아 보거나 TLDR의 경우이 페이지에 적절한 요약이 있습니다.
댓글
- 동기화 된 시스템 시계 : 아니오
- @Arrow_Raider : Yer ‘ point being ???
답변
이미 시간을 업데이트하고있을 것입니다. NTPD 서버는 스왑 파일 바로 뒤와 SSHD 이전에 시작해야합니다.
/etc/ntp.conf 파일이 구성되어 있는지 확인하십시오.
최소 한 개의 서버를 나열해야합니다. 내 서버에 time.nrc.ca를 사용합니다.
ntp.conf의 매뉴얼 페이지는 다음과 같습니다. http://linux.die.net/man/5/ntp.conf
답변
내 아들의 Rasberry Pi는 상자에서 꺼내고 시도한 후에도 시간을 업데이트하지 않습니다. 위의 모든 제안을 수동으로 업데이트 할 수는 있지만 자동으로 업데이트 할 수는 없습니다. 마지막으로 다른 곳에서도 성공하지 못한 결과를 살펴본 후 ntp.Rasberry Pi와 함께 제공된 conf 파일에는 다음 줄이 주석 처리되어 있습니다.
#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 및 이더넷 케이블로 업데이트됩니다. 위에서 제안한 rc.local로 변경하지 않고 WiFi로 업데이트할지 모르겠습니다. 위의 솔루션을 찾았을 때 이미 변경을 수행했으며 취소하지 않았습니다.
답변
비슷한 문제가 발생했을 때 도움이되는 timedatectl
애플리케이션을 찾았습니다. 기본적으로 설치되며 “–help”는 도구 사용 방법에 대한 매우 훌륭하고 간단한 개요를 제공합니다.
참고 :이 도구도 사용할 수있는 시간대가 올바르게 설정되어 있는지 확인하십시오.
참고 : p>
답변
문제를 해결하기 위해 ntp를 사용할 필요는 없습니다. 서버에서 날짜를 읽고 해당 스크립트의 결과로 날짜를 설정하기 만하면됩니다 (Raspberry Pi가 인터넷에 연결되어 있어야 함). 그런 다음 시작할 때 해당 명령을 실행해야합니다.
1 단계 : 서버에서 날짜를 검색합니다.
sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d" " -f5-8)Z"
2 단계 : /etc/rc.local
파일에 추가하여 시작시 명령을 실행합니다 (Ubuntu 16.04에서 작동).
sudo gedit /etc/rc.local
크레딧 :
1- https://askubuntu.com/a/655528/572294
2- https://askubuntu.com/a/1199/572294
댓글
-
그래야합니다. ‘ 더 우수하고 빠르며 정확하며 업계 표준입니다. ‘ 좋은 표준이 존재할 때 자신 만의 이상한 것을 구성하지 마십시오.
- ‘별로 도움이되지 않습니다. RasPi가 연중 무휴 24 시간 실행되는 경우
답변
동기화되지 않는 Pi와 유사한 문제가 발생했습니다. . 이러한 솔루션 중 어느 것도 작동하지 않았습니다. 내 네트워크 환경이 NTP 포트 (123)를 차단하고있는 것으로 나타났습니다. 저를위한 해결책은
sudo apt install htpdate
다음에서 가져 왔습니다. https://www.raspberrypi.org/forums/viewtopic.php?t=222236
대신 HTTP 호출을 통해 시스템 시계를 업데이트합니다.
답변
이 내가 취한 접근 방식입니다. 이러한 답변 중 대부분은 내 Raspian 시스템을 볼 때 확인하지 않은 사항을 나타내는 것처럼 보였습니다.
$ cat /etc/os-release PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)" NAME="Raspbian GNU/Linux" VERSION_ID="9" VERSION="9 (stretch)" ID=raspbian ID_LIKE=debian HOME_URL="http://www.raspbian.org/" SUPPORT_URL="http://www.raspbian.org/RaspbianForums" BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"
로그에 표시되는 내용이 없습니다. 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 [email protected] 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 [email protected] 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-I ‘ ntp 설치도 포함하도록 A ‘ er를 업데이트합니다.
- @StevenLu-
apt-get install ntp
Answer
추가 패키지를 설치하지 않고 시간을 동기화하기 위해 기본 이미지에 다음을 사용합니다.
timedatectl set-local-rtc 0 timedatectl set-ntp 1 timedatectl status
답변
웹 간 어딘가에서 이것을 발견했습니다. Buster에서 작동하는 것 같습니다 :
sudo timedatectl set-ntp false && sudo timedatectl set-time "$(date --iso-8601=seconds | cut -d "+" -f1 | tr T " ")" && sudo timedatectl set-ntp true
중간 명령 (set-time
)이 실제로 작동하는지 확실하지 않습니다. 필요합니다.