ntp(서비스)가 내 라즈베리 파이에서 시간을 올바르게 설정하지 않는 이유를 이해하는 데 어려움을 겪고 있습니다.
SD 카드를 저장하기 위해 파일 시스템을 읽기 전용으로 구성했지만 이전에는 작동했는데 지금은 ntp가 작동하지 않는 이유를 알 수 없는 것 같습니다.
로그에는 다음 메시지가 많이 표시됩니다.
ntpd[415]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
ntpd[415]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
ntpd[415]: error resolving pool 0.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 1.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 2.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 3.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 3.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 2.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 1.debian.pool.ntp.org: Temporary failure in name resolution (-3)
ntpd[415]: error resolving pool 0.debian.pool.ntp.org: Temporary failure in name resolution (-3)
내 /etc/resolv.conf는 다음과 같습니다:
# Generated by resolvconf
nameserver 8.8.8.8
nameserver 192.168.1.22
해당 RPi에서 인터넷에 액세스할 수 있고, 풀 주소로 ping을 할 수 있고, Google에 ping을 할 수 있고, 적절하게 업데이트할 수 있습니다(rw에 다시 설치한 후)...
ntpdate 명령을 수동으로 실행할 수도 있으며 작동합니다!
$ sudo ntpdate -u 0.fr.pool.ntp.org 1.fr.pool.ntp.org
24 Nov 23:04:34 ntpdate[578]: step time server 129.250.35.250 offset 2418.621037 sec
그래, 여기서 머리카락을 뽑을 거야. NTP 서비스가 작동하지 않는 이유를 이해할 수 없습니다. 인터넷을 검색했는데 이 특별한 문제가 있는 사람은 없는 것 같습니다(모든 사람의 DNS는 다운되었지만 내 DNS는 작동합니다).
내 읽기 전용 설정은 다음과 같습니다.https://hallard.me/raspberry-pi-read-only/
어떤 아이디어가 있나요?
답변1
비슷한 문제에 직면하면서 이것을 발견했습니다.
문제는 이 systemd
기능이 PrivateTmp
읽기 전용 구성에서 작동하지 않는다는 것입니다.
- 반드시 설치하여 주시기 바랍니다
ntp
.ntpdate
sudo apt install -y ntp ntpdate
/lib/systemd/system/ntp.service
에게 복사/etc/systemd/system/ntp.service
cp /lib/systemd/system/ntp.service /etc/systemd/system/ntp.service
을 열고
/etc/systemd/system/ntp.service
주석 처리하세요PrivateTmp=true
.sudo nano /etc/systemd/system/ntp.service
이제 제대로 작동할 것입니다!
추가 단계로 이제 제안된 /var/lib/ntp
대로 tmpfs
설치했습니다 .여기
- 파일을 열고 끝에
/etc/fstab
추가합니다 .tmpfs /var/lib/ntp tmpfs nosuid,nodev 0 0
sudo nano /etc/fstab
내 경우에는 이것이 불필요하다고 생각했지만 읽기 전용 파일 시스템에서 실행하는 데 더 많은 통찰력을 제공할 것입니다.
답변2
마크 로저의 답변작동하지만 사용자가 재정의하는 것이 더 낫다고 생각합니다.
echo -e '[Service]\nPrivateTmp=false' > /etc/systemd/system/ntp.service.d/override.conf
그런 다음 다시 시작하거나 systemctl daemon-reload
충분할 수도 있습니다.