diff options
author | Roy Marples <roy@marples.name> | 2009-10-13 08:03:45 +0100 |
---|---|---|
committer | Roy Marples <roy@marples.name> | 2009-10-13 08:03:45 +0100 |
commit | a8f6a9b6540ca301af625b4767df53860511a6dc (patch) | |
tree | a1dd01c8796d117c986f96fd702c3f3c6f2cdba5 /init.d | |
parent | aaa0498bf86baa065656b6a5c37cff82c032eb6d (diff) |
Add new utility and init script swclock that sets the system time based on
the mtime of a file. It saves the shutdown time to this file also.
This is handy for systems without a working RTC chip.
Based on an idea by Michael A. Smith <michael@smith-li.com>.
Fixes Gentoo #272073.
Diffstat (limited to 'init.d')
-rw-r--r-- | init.d/.gitignore | 1 | ||||
-rw-r--r-- | init.d/Makefile | 2 | ||||
-rw-r--r-- | init.d/savecache.in | 2 | ||||
-rw-r--r-- | init.d/swclock.in | 27 |
4 files changed, 30 insertions, 2 deletions
diff --git a/init.d/.gitignore b/init.d/.gitignore index 5e1e1ecf..94a40e24 100644 --- a/init.d/.gitignore +++ b/init.d/.gitignore @@ -34,6 +34,7 @@ rc-enabled rpcbind savecore swap-blk +swclock syslogd termencoding ttys diff --git a/init.d/Makefile b/init.d/Makefile index b816ae70..0786e050 100644 --- a/init.d/Makefile +++ b/init.d/Makefile @@ -1,6 +1,6 @@ DIR= ${INITDIR} SRCS= bootmisc.in fsck.in hostname.in local.in localmount.in netmount.in \ - network.in root.in savecache.in swap.in sysctl.in urandom.in + network.in root.in savecache.in swap.in swclock.in sysctl.in urandom.in BIN= ${OBJS} # Build our old net foo or not diff --git a/init.d/savecache.in b/init.d/savecache.in index 799b8bc5..2c981c65 100644 --- a/init.d/savecache.in +++ b/init.d/savecache.in @@ -22,7 +22,7 @@ start() fi fi local save= - for x in deptree depconfig softlevel nettree rc.log; do + for x in deptree depconfig shutdowntime softlevel nettree rc.log; do [ -e "$RC_SVCDIR/$x" ] && save="$save $RC_SVCDIR/$x" done if [ -n "$save" ]; then diff --git a/init.d/swclock.in b/init.d/swclock.in new file mode 100644 index 00000000..ab076c31 --- /dev/null +++ b/init.d/swclock.in @@ -0,0 +1,27 @@ +#!@PREFIX@/sbin/runscript +# Copyright (c) 2009 Roy Marples <roy@marples.name> +# All rights reserved. Released under the 2-clause BSD license. + +description="Sets the local clock to the mtime of a given file." + +depend() +{ + before * + keyword -openvz -prefix -uml -vserver -xenu +} + +# swclock is an OpenRC built in + +start() +{ + ebegin "Setting the local clock based on last shutdown time" + swclock + eend $? +} + +stop() +{ + ebegin "Saving the shutdown time" + swclock --save + eend $? +} |