diff options
Diffstat (limited to 'meta/packages/initscripts/initscripts-1.0/bootmisc.sh')
-rwxr-xr-x | meta/packages/initscripts/initscripts-1.0/bootmisc.sh | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/meta/packages/initscripts/initscripts-1.0/bootmisc.sh b/meta/packages/initscripts/initscripts-1.0/bootmisc.sh index 814dba676..2a40e0c41 100755 --- a/meta/packages/initscripts/initscripts-1.0/bootmisc.sh +++ b/meta/packages/initscripts/initscripts-1.0/bootmisc.sh @@ -61,11 +61,18 @@ fi # /sbin/ldconfig -# -# Recover the time, if there is a time file -# +# Set the system clock from hardware clock +# If the timestamp is 1 day or more recent than the current time, +# use the timestamp instead. +/etc/init.d/hwclock.sh start if test -e /etc/timestamp then - date -s `cat /etc/timestamp` + SYSTEMDATE=`date "+%Y%m%d"` + TIMESTAMP=`cat /etc/timestamp | awk '{ print substr($0,9,4) substr($0,1,4);}'` + NEEDUPDATE=`expr \( $TIMESTAMP \> $SYSTEMDATE \)` + if [ $NEEDUPDATE -eq 1 ]; then + date `cat /etc/timestamp` + /etc/init.d/hwclock.sh stop + fi fi : exit 0 |