나는 커패시터 기반 시계를 갖춘 Debian 8을 실행하는 64비트 Intel PC를 가지고 있는데, 이는 3일 동안 정전이 발생한 후 하드웨어 시계의 시간이 손실된다는 것을 의미합니다. 이 문제를 해결하기 위해 LAN에 있는 근처 컴퓨터(RTC에 대한 더 나은 배터리 지원 포함)를 사용하여 로컬 NTP 서버로 작동할 수 있다고 생각했습니다.
시작 시 PC는 "일반" 응용 프로그램(특히 사용자 응용 프로그램)이 시작될 때 올바른 시간을 사용하고 시간 불연속성을 처리하지 않도록 충분히 빠르게 NTP 동기화를 수행할 수 있습니까? 우리의 주요 기능은 데이터 로깅이므로 1970년에 파일 로깅을 시작한 다음 2016년으로 넘어갔다면 이는 재앙이 될 것입니다.
답변1
당신이 해야 할 일은 두 가지입니다. ntpd
부팅 순서의 초기에 시작하고 응용 ntp-wait
프로그램이 시작되기 전에 부팅 순서의 어딘가에 배치하십시오.
Linux 버전에 따라 이를 수행하는 방법이 다릅니다. 그러나 애플리케이션의 시작이 ntp-wait
완료에 종속되도록 해야 합니다.
ntp-wait
ntpd
데몬이 동기화되었음을 보고할 때까지 기다리세요 .
Debian 8에서 이를 수행하는 올바른 방법은 애플리케이션이 의존할 systemd
새 서비스를 구성하고 추가하는 것 입니다.ntp-wait
가장 쉬운 방법은 ntp-wait
애플리케이션의 시작 스크립트에 추가하는 것입니다.