rtclocaltime revision 1.1
11.1Smartin#! /bin/sh 21.1Smartin 31.1Smartin# PROVIDE: rtclocaltime 41.1Smartin# REQUIRE: mountcritremote 51.1Smartin# BEFORE: ntpdate ntpd 61.1Smartin 71.1Smartin. /etc/rc.subr 81.1Smartin 91.1Smartinname="rtclocaltime" 101.1Smartinrcvar=$name 111.1Smartinstart_cmd="rtclocaltime_start" 121.1Smartinstop_cmd=":" 131.1Smartin 141.1Smartinrtclocaltime_start() 151.1Smartin{ 161.1Smartin rtcoff=$(date '+%z' | awk '{ 171.1Smartin offset = int($1); 181.1Smartin if (offset < 0) { 191.1Smartin sign = -1; 201.1Smartin offset = -offset; 211.1Smartin } else { 221.1Smartin sign = 1; 231.1Smartin } 241.1Smartin minutes = offset % 100; 251.1Smartin hours = offset / 100; 261.1Smartin offset = sign * (hours * 60 + minutes); 271.1Smartin print offset; 281.1Smartin }') 291.1Smartin sysctl -w kern.rtc_offset=$((-1 * $rtcoff)) 301.1Smartin} 311.1Smartin 321.1Smartinload_rc_config $name 331.1Smartinrun_rc_command "$1" 34