modules/freifunk: setup config and cron jobs for rdate; sync time on boot

This commit is contained in:
Jo-Philipp Wich 2009-05-01 13:19:49 +00:00
parent 67fbe1b33c
commit c2dff916a6
3 changed files with 30 additions and 6 deletions

View file

@ -55,29 +55,28 @@ config defaults wifi_device
option disabled 0
option txpower 10
config defaults wifi_iface
option mode adhoc
option bssid 02:CA:FF:EE:BA:BE
option sw_merge 1
config defaults interface
option netmask 255.0.0.0
option dns "88.198.178.18 141.54.1.1 212.204.49.83 208.67.220.220 208.67.222.222"
config defaults alias
option netmask 255.255.255.0
config defaults dhcp
option leasetime 30m
config defaults olsr_interface
option Ip4Broadcast 255.255.255.255
config defaults time
option rdate_servers "128.138.140.44 171.64.7.77 171.64.7.99 81.169.154.44 130.133.1.10"
config community leipzig
option name "Freifunk Leipzig"
option homepage http://leipzig.freifunk.net

View file

@ -17,6 +17,10 @@ boot() {
echo "*/5 * * * * /usr/sbin/ff_olsr_watchdog" >> /etc/crontabs/root
}
grep -q '/usr/sbin/ff_rdate' /etc/crontabs/root || {
echo "0 */4 * * * /usr/sbin/ff_rdate >> /etc/crontabs/root
}
[ -f /etc/rc.local ] && . /etc/rc.local
[ -d /etc/rc.local.d ] && {
for file in /etc/rc.local.d/*; do
@ -24,5 +28,5 @@ boot() {
done
}
/etc/init.d/cron restart
( /usr/sbin/ff_rdate; /etc/init.d/cron restart ) &
}

View file

@ -0,0 +1,21 @@
#!/bin/sh
uci_get_one() {
for var in "$@"; do
uci -P /var/state get "$var" 2>/dev/null && break
done
}
local servers=$(uci_get_one "network.wan.lease_timesrv" \
"system.time.rdate_servers" "freifunk.time.rdate_servers")
if [ -n "$servers" ]; then
for server in $servers; do
rdate -s $server >/dev/null 2>/dev/null && \
logger -t rdate "Synced with $server" && break
logger -t rdate "Failed to sync with $server"
done
else
logger -t rdate "No usable time server found"
fi