diff options
Diffstat (limited to 'debian/util-linux.hwclock.sh.init')
-rw-r--r-- | debian/util-linux.hwclock.sh.init | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/debian/util-linux.hwclock.sh.init b/debian/util-linux.hwclock.sh.init new file mode 100644 index 0000000..a9872b6 --- /dev/null +++ b/debian/util-linux.hwclock.sh.init @@ -0,0 +1,57 @@ +#!/bin/sh + +### BEGIN INIT INFO +# Provides: hwclock +# Required-Start: +# Required-Stop: mountdevsubfs +# Should-Stop: umountfs +# Default-Start: S +# Default-Stop: 0 6 +# Short-Description: Save system clock to hardware on shutdown. +### END INIT INFO + +# Note: this init script and related code is only useful if you +# run a sysvinit system, without NTP synchronization. + +if [ -e /run/systemd/system ] ; then + exit 0 +fi + +unset TZ + +hwclocksh() +{ + HCTOSYS_DEVICE=rtc0 + [ ! -x /sbin/hwclock ] && return 0 + [ ! -r /etc/default/rcS ] || . /etc/default/rcS + [ ! -r /etc/default/hwclock ] || . /etc/default/hwclock + + . /lib/lsb/init-functions + verbose_log_action_msg() { [ "$VERBOSE" = no ] || log_action_msg "$@"; } + + case "$1" in + start) + # start is handled by /usr/lib/udev/rules.d/85-hwclock.rules. + return 0 + ;; + stop|restart|reload|force-reload) + # Updates the Hardware Clock with the System Clock time. + # This will *override* any changes made to the Hardware Clock, + # for example by the Linux kernel when NTP is in use. + log_action_msg "Saving the system clock to /dev/$HCTOSYS_DEVICE" + if /sbin/hwclock --rtc=/dev/$HCTOSYS_DEVICE --systohc; then + verbose_log_action_msg "Hardware Clock updated to `date`" + fi + ;; + show) + /sbin/hwclock --rtc=/dev/$HCTOSYS_DEVICE --show + ;; + *) + log_success_msg "Usage: hwclock.sh {stop|reload|force-reload|show}" + log_success_msg " stop and reload set hardware (RTC) clock from kernel (system) clock" + return 1 + ;; + esac +} + +hwclocksh "$@" |