En elegant, stapling, realtidsklocka för Raspberry Pi (3 / 3 steg)
Steg 3: Bonus Tips - Sync och belastning tid vid uppstart med systemd
Vill du datorn att bete sig som en vanlig dator, har laddningstid från maskinvaruklocka vid uppstart och hålla den uppdaterad med jämna mellanrum med Internettid, jag också skrivit några steg för att ställa in rätt systemd tjänster.
Instruktioner definitivt ser bättre ut på min hemsida, där koden är korrekt formaterad och jag kunde ge syntaxmarkering.
- Skapa och aktivera rtc-init systemd tjänst: skriva en rtc-init.service fil som innehåller följande rader i/etc/systemd/system /
[Enhet]
Beskrivning = RTC Clock Setup och tid Sync
Innan = < en href = "mailto:netctl-auto rel ="nofollow"> netctl-auto[Tjänster]
Typ = oneshot
ExecStart = / usr/lib/systemd/skript/rtc-setup[Installera]
WantedBy = multi-user.targetTillsätt sedan i /usr/lib/systemd/scripts/ en rtc-setup shell script som denna
#! / bin/sh
ECHO ds1307 0x68 >/sys/buss/i2c/enheter/i2c-1/new_device
ECHO "RTC DS1307 installerat"hwclock -s
ECHO "systemtid synkroniseras med RTC tid"och ge den rätt behörigheter med chmod 755 rtc-setup.
Kör systemctl aktiverar rtc-init för att aktivera tjänsten vid start. - Flytta till /usr/lib/systemd/system/ och göra en backningen kopia av systemd-timesyncd med cp systemd-timesyncd systemd-timesyncd.original, sedan redigera systemd-timesyncd som visas nedan
[Enhet]
...
Efter = systemd-omforma-fs.service systemd-tmpfiles-setup.service systemd-sysusers.service rtc-init.service
#Before = tid-sync.target sysinit.target shutdown.target
Innan = tid-sync.target shutdown.target
Conflicts=Shutdown.target...
[Installera]
#WantedBy=sysinit.target
WantedBy = multi-user.target - Redigera /etc/netctl/eth0 (filnamn kan variera beroende på Ethernet gränssnittsnamn) kommentera bort ExecUpPost rad:
Beskrivning = "En grundläggande DHCP-Ethernetanslutning"
Interface = eth0
Anslutning = ethernet
IP = dhcp
#ExecUpPost ='/ usr/bin/ntpd - gq || sanna "## för DHCPv6
#IP6 = dhcp
## för automatisk IPv6-konfiguration
#IP6 = statslösaDetta inaktiverar automatisk tid sync med ntpd (på nätverket startades under uppstart), eftersom det är redan har utförts av systemd-timesyncd service.
- Så småningom köra $ timedatectl set-ntp sant att aktivera den redigerade versionen av systemd-timesyncd service
Starta om och njuta av, din Pi ska nu läsa den rtc tid vid start (i några sekunder). Sedan om du är ansluten till internet tjänsten systemd-timesyncd hämtar aktuell tid med enkel NTP-protokollet och synkroniserar det med system och hårdvara tid (din RTC).