]> git.pld-linux.org Git - packages/tzdata.git/blob - timezone.init
aca05d3aaee49dc2ccf6b14c5251c2506882d2da
[packages/tzdata.git] / timezone.init
1 #!/bin/sh
2 #
3 # timezone      Set time zone information.
4 # chkconfig:    2345 10 90
5 # description:  This script is setting time zone information for your machine.
6 # Author:       Pawel Wilk <siefca@pld-linux.org>
7 #
8 # $Id$
9
10 [ -f /etc/sysconfig/timezone ] || exit 0
11
12 # Source function library.
13 . /etc/rc.d/init.d/functions
14
15 . /etc/sysconfig/timezone
16
17 ZONE_FILE="$ZONE_INFO_DIR"
18
19 if [ -n "$ZONE_INFO_SCHEME" -a "$ZONE_INFO_SCHEME" != "posix" ]; then
20         ZONE_FILE="$ZONE_FILE/$ZONE_INFO_SCHEME"
21 fi
22
23 ZONE_FILE="$ZONE_FILE/$TIMEZONE"
24
25 [ -L /etc/localtime ] && [ "$(resolvesymlink /etc/localtime)" = "$ZONE_FILE" ] && exit 0
26
27 start() {
28         if [ -f /var/lock/subsys/timezone ]; then
29                 return
30         fi
31
32         if [ -f "$ZONE_FILE" ]; then
33                 rm -f /etc/localtime
34
35                 MESSAGE=$(nls 'Setting time zone information (%s)' "$TIMEZONE")
36
37                 run_cmd "$MESSAGE" cp -af $ZONE_FILE /etc/localtime
38                 RETVAL=$?
39                 restorecon /etc/localtime >/dev/null 2>&1
40         fi
41
42         [ $RETVAL -eq 0 ] && touch /var/lock/subsys/timezone
43 }
44
45 stop() {
46         if [ -f /var/lock/subsys/timezone ]; then
47                 rm -f /var/lock/subsys/timezone
48         fi
49 }
50
51 disable() {
52         run_cmd "Unsetting time zone information" rm -f /etc/localtime
53 }
54
55 RETVAL=0
56 # See how we were called.
57 case "$1" in
58   start)
59         start
60         ;;
61   stop)
62         stop
63         ;;
64   restart|try-restart|reload|force-reload)
65         stop
66         start
67         ;;
68   disable)
69         disable
70         ;;
71   status)
72         nls 'Time zone configured to (%s)' "$TIMEZONE"
73         ;;
74   *)
75         msg_usage "$0 {start|stop|restart|try-restart|reload|force-reload|disable|status}"
76         exit 3
77 esac
78
79 exit $RETVAL
This page took 0.040981 seconds and 3 git commands to generate.