summaryrefslogtreecommitdiff
path: root/sh/init-common-post.sh.in
blob: 6001fe9c71cf5973b946e70800a7c7b99004b58d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Copyright (c) 2007-2009 Roy Marples <roy@marples.name>
# Released under the 2-clause BSD license.

# mount $RC_SVCDIR as something we can write to if it's not rw
# On vservers, / is always rw at this point, so we need to clean out
# the old service state data
: ${RC_LIBEXECDIR:=@LIBEXECDIR@}
: ${RC_SVCDIR:=@LIBEXECDIR@/init.d}
case "$(rc --sys)" in
	OPENVZ|VSERVER)	rm -rf "$RC_SVCDIR"/*;;
	*)		if mountinfo --quiet "$RC_SVCDIR"; then
				rm -rf "$RC_SVCDIR"/*
			else
				mount_svcdir
			fi
			;;
esac
retval=$?

if [ -e "$RC_LIBEXECDIR"/cache/deptree ]; then
	cp -p "$RC_LIBEXECDIR"/cache/* "$RC_SVCDIR" 2>/dev/null
fi

echo sysinit >"$RC_SVCDIR"/softlevel
exit $retval