我知道Raspberry Pi不帶有系統時鐘來省錢。我該如何保留系統時間?
我知道Raspberry Pi不帶有系統時鐘來省錢。我該如何保留系統時間?
保存系統時間的最流行方法是通過網絡時間協議守護程序(NTPd)。
NTPd是最同步系統時間的方法。具有使用網絡時間協議的Internet時間服務器的GNU / Linux系統的軟件時鐘。
NTPd應該已經安裝並在默認操作系統Debian Squeeze上設置。對於Arch Linux,您將需要手動安裝和配置它。
首先,您應該安裝NTP。
$ sudo pacman -S ntp
現在您可以通過命令行手動更新它。
$ sudo ntpd -qg
或者您可以將其添加到以下列表中通過將其添加到您的 /etc/rc.conf
文件中來啟動守護進程。
#/etc/rc.confDAEMONS=(!hwclock ntpd)
請注意,您需要禁用 hwclock
在守護程序列表中的前面加上感嘆號(!
)。
mlp中的提示:如果將 ntpdate
添加到守護程序列表中,則啟動後的時間將得到更正。因此,您的守護程序列表將如下所示。
#/etc/rc.confDAEMONS=(!hwclock ntpd ntpdate)
如果要確保RPi上的時間始終正確或要在沒有網絡連接的情況下保持時間,則需要購買帶有實時時鐘的擴展板(RTC):至少有一個可用的,至少有一個正在開發中。
對於非聯網應用程序(或網絡時間可能不夠充分的應用程序),您可以將RTC時鐘(@Alex Chamberlain的回答)設置為GPS接收器或VLF接收器(在NW Europe中為橄欖球MSF)。兩者對於現場部署的設備(機器人,現場監控等)都是很好的解決方案。
這兩種解決方案也將是一個不錯的愛好項目。我記得在1980年代製造過橄欖球MSF接收器。現成的GPS接收器(“ puck”)將以NMEA 0183句子給出時間和日期-然後,這將是提取此信息的簡單編碼項目。
在具有systemd的Arch Linux上安裝NTP守護程序
sudo pacman -S ntpsudo systemctl enable ntpdsudo systemctl start ntpd
還要確保您的時區在我的情況下設置正確:
sudo rm / etc / localtimesudo ln -s / usr / share / zoneinfo / Asia / Tokyo / etc / localtime