From 1cf731b1e3bb125449c2ef4e1194b6bf69e7b667 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sun, 2 Sep 2007 14:00:52 +0000 Subject: initscripts: Sync with OE, primarily for better /etc/timestamp handling git-svn-id: https://svn.o-hand.com/repos/poky/trunk@2650 311d38ba-8fff-0310-9ca6-ca027cbcb966 --- meta/packages/initscripts/initscripts-1.0/bootmisc.sh | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'meta/packages/initscripts/initscripts-1.0/bootmisc.sh') diff --git a/meta/packages/initscripts/initscripts-1.0/bootmisc.sh b/meta/packages/initscripts/initscripts-1.0/bootmisc.sh index 814dba676c..2a40e0c410 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 -- cgit v1.2.3-54-g00ecf