modules/freifunk: setup config and cron jobs for rdate; sync time on boot
This commit is contained in:
parent
67fbe1b33c
commit
c2dff916a6
3 changed files with 30 additions and 6 deletions
|
@ -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
|
||||
|
|
|
@ -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 ) &
|
||||
}
|
||||
|
|
21
modules/freifunk/root/usr/sbin/ff_rdate
Executable file
21
modules/freifunk/root/usr/sbin/ff_rdate
Executable 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
|
Loading…
Reference in a new issue