답변:
시스템 시간을 유지하는 가장 일반적인 방법은 NTPd (Network Time Protocol daemon)를 사용하는 것입니다.
NTPd는 GNU / Linux 시스템의 소프트웨어 시계를 네트워크 시간 프로토콜을 사용하여 인터넷 시간 서버와 동기화하는 가장 일반적인 방법입니다.
기본 운영 체제 인 Debian Squeeze에 NTPd가 이미 설치되어 있고 설정되어 있어야합니다. Arch Linux의 경우 수동으로 설치하고 구성해야합니다.
먼저 NTP를 설치해야합니다.
$ sudo pacman -S ntp
이제 명령 행을 통해 수동으로 업데이트 할 수 있습니다.
$ sudo ntpd -qg
또는 시작할 때 데몬을 /etc/rc.conf
파일 에 추가하여 데몬 목록에 추가 할 수 있습니다 . 그렇게
# /etc/rc.conf
DAEMONS=(!hwclock ntpd)
데몬 목록에서 hwclock
느낌표 ( !
)를 앞에 붙여 비활성화해야 합니다.
에서 Protip MLP : 당신이 추가하면 ntpdate
데몬 시간이 훨씬 빠른 부팅 후 수정 될 예정 목록에. 따라서 데몬 목록은 다음과 같습니다.
# /etc/rc.conf
DAEMONS=(!hwclock ntpd ntpdate)
systemctl enable ntpd.service
은에 추가하는 것과 유사합니다 /etc/rc.conf
.
RPi의 시간이 항상 정확하거나 네트워크 연결없이 시간을 유지하려면 RTC (Real Time Clock)가있는 확장 보드를 구입해야합니다. 적어도 하나는 개발 중입니다.
네트워크에 연결되지 않은 응용 프로그램 (또는 네트워크 시간이 충분하지 않은 경우)의 경우 GPS 수신기 또는 VLF 수신기에서 파생 된 시간으로 RTC 시계 (@Alex Chamberlain의 답변)를 설정할 수 있습니다 (NW 유럽에서는 Rugby MSF 임) . 둘 다 현장 배치 장치 (로봇, 현장 모니터링 등)에 대한 우수한 솔루션 일 수 있습니다.
두 솔루션 모두 좋은 취미 프로젝트를 만들 것입니다. 1980 년대에 Rugby MSF 수신기를 구축 한 것을 기억합니다. 기성품 GPS 수신기 ( "퍽")는 NMEA 0183 문장으로 시간과 날짜를 제공합니다. 그러면이 정보를 추출하는 간단한 코딩 프로젝트가됩니다.
시스템에서 NTP를 항상 실행하지 않으려면 몇 가지 다른 옵션 중 하나를 사용하여 시간을 설정할 수 있습니다.
모든 시계가 드리프트하기 때문에 NTP를 사용하는 것만 큼 시계가 정확하지 않을 것입니다. 또한 이러한 앱은 단일 시간 소스 만 사용하므로 선택한 소스에 문제가있는 경우 시간이 잘못 설정 될 수 있습니다.