View | Details | Raw Unified | Return to bug 42328
Collapse All | Expand All

(-)a/branches/ucs-4.1/ucs-4.1-3/management/univention-directory-listener/03univention-directory-listener.inst (-41 / +27 lines)
 Lines 37-46   joinscript_init Link Here 
37
37
38
ln -sf /etc/runit/univention-directory-listener /etc/runit/univention/univention-directory-listener
38
ln -sf /etc/runit/univention-directory-listener /etc/runit/univention/univention-directory-listener
39
39
40
listener_pid=`pidof univention-directory-listener`
40
sv down univention-directory-listener
41
if [ -n "$listener_pid" ]; then
42
	sv down univention-directory-listener
43
fi
44
41
45
if [ -e "/var/lib/univention-directory-listener" ]; then
42
if [ -e "/var/lib/univention-directory-listener" ]; then
46
	rm -Rf /var/lib/univention-directory-listener/*
43
	rm -Rf /var/lib/univention-directory-listener/*
 Lines 51-97   if [ -e "/var/lib/univention-directory-replication" ]; then Link Here 
51
fi
48
fi
52
49
53
eval "$(univention-config-registry shell)"
50
eval "$(univention-config-registry shell)"
51
write_translog= dn= secret=
54
52
55
if [ "$server_role" = "domaincontroller_master" ]; then
53
case "$server_role" in
56
	test -n "`grep "univention-directory-listener v${VERSION} successful" /usr/lib/univention-install/.index.txt`" || echo "univention-directory-listener v${VERSION} successful" >>/usr/lib/univention-install/.index.txt
54
domaincontroller_master)
55
	index="/usr/lib/univention-install/.index.txt"
56
	line="univention-directory-listener v${VERSION} successful"
57
	grep -Fqx "$line" "$index" || echo "$line" >>"$index"
57
	exit 0
58
	exit 0
58
fi
59
	;;
59
cachedir=/var/lib/univention-directory-listener
60
*)
60
moduledir=/usr/lib/univention-directory-listener/system
61
62
if [ "$server_role" != "domaincontroller_master" ]; then
63
	if [ -e "/var/lib/univention-ldap/listener/listener" ]; then
61
	if [ -e "/var/lib/univention-ldap/listener/listener" ]; then
64
		chown listener /var/lib/univention-ldap/listener/listener*
62
		chown listener /var/lib/univention-ldap/listener/listener*
65
		options="-o"
63
		write_translog=1
66
	fi
64
	fi
67
fi
65
esac
68
69
univention-config-registry set ldap/database/ldbm/dbsync="10"
70
71
if [ "`echo $ldap_master_bind | tr A-Z a-z`" = "gssapi" ]; then
72
	options="$options -K"
73
else
74
	options="$options -x"
75
fi
76
66
77
debugLevel=1
67
case "$server_role" in
78
if [ -n "$listener_debug_level" ]; then
68
domaincontroller_master|domaincontroller_backup) dn="cn=admin,$ldap_base" secret=/etc/ldap.secret ;;
79
	debugLevel="$listener_debug_level"
69
?*) dn="$ldap_hostdn" secret=/etc/machine.secret ;;
80
fi
70
esac
81
options="$options -ZZ -d $debugLevel"
82
83
options="$options -i -h $ldap_master -b "$ldap_base" -m $moduledir -c $cachedir"
84
85
if [ -n "$server_role" ]; then
86
	if [ "$server_role" = "domaincontroller_master" -o "$server_role" = "domaincontroller_backup" ]; then
87
		/usr/sbin/univention-directory-listener $options -D "cn=admin,$ldap_base" -y /etc/ldap.secret
88
	else
89
		/usr/sbin/univention-directory-listener $options -D "`univention-config-registry get ldap/hostdn`" -y /etc/machine.secret
90
	fi
91
else
92
	/usr/sbin/univention-directory-listener $options
93
fi
94
71
72
univention-config-registry set ldap/database/ldbm/dbsync="10"
73
/usr/sbin/univention-directory-listener -i \
74
	-d "${listener_debug_level:-1}" \
75
	-h "$ldap_master" \
76
	-b "$ldap_base" \
77
	-m /usr/lib/univention-directory-listener/system \
78
	-c /var/lib/univention-directory-listener \
79
	${write_translog:+-o} \
80
	-ZZ \
81
	-x \
82
	${dn:+-D "$dn"} ${secret:+-y "$secret"}
95
exit_status=$?
83
exit_status=$?
96
84
97
univention-config-registry set ldap/database/ldbm/dbsync=$ldap_database_ldbm_dbsync
85
univention-config-registry set ldap/database/ldbm/dbsync=$ldap_database_ldbm_dbsync
 Lines 100-106   univention-config-registry set ldap/database/ldbm/dbsync=$ldap_database_ldbm_dbs Link Here 
100
sleep 15
88
sleep 15
101
89
102
if [ -f /etc/init.d/slapd ]
90
if [ -f /etc/init.d/slapd ]
103
    then
91
then
104
    /etc/init.d/slapd restart
92
    /etc/init.d/slapd restart
105
fi
93
fi
106
94
 Lines 123-127   test -x /usr/sbin/nscd && /usr/sbin/nscd -i group Link Here 
123
111
124
joinscript_save_current_version
112
joinscript_save_current_version
125
exit 0
113
exit 0
126
127
(-)a/branches/ucs-4.1/ucs-4.1-3/management/univention-directory-listener/conffiles/etc/runit/univention-directory-listener/run (-29 / +21 lines)
 Lines 1-5    Link Here 
1
#!/bin/sh -e
1
#!/bin/sh -e
2
@%@UCRWARNING=# @%@
3
#
2
#
4
# Copyright 2004-2016 Univention GmbH
3
# Copyright 2004-2016 Univention GmbH
5
#
4
#
 Lines 32-67    Link Here 
32
test ! -f /etc/nologin || exit 0
31
test ! -f /etc/nologin || exit 0
33
32
34
cachedir=/var/lib/univention-directory-listener
33
cachedir=/var/lib/univention-directory-listener
35
moduledir=/usr/lib/univention-directory-listener/system
36
37
for dir in "$cachedir" /var/lib/univention-ldap/listener; do
34
for dir in "$cachedir" /var/lib/univention-ldap/listener; do
38
	find "$dir" ! -user listener -exec chown listener {} \;
35
	find "$dir" ! -user listener -exec chown listener {} \;
39
done
36
done
40
37
41
eval "$(univention-config-registry shell)"
38
eval "$(univention-config-registry shell)"
42
39
write_translog= ignore_master= dn= secret=
43
if [ "$server_role" != "domaincontroller_master" ] && command -v univention-directory-notifier >/dev/null 2>&1 ; then
40
[ "$server_role" != "domaincontroller_master" ] && command -v univention-directory-notifier >/dev/null 2>&1 &&
44
		options="-o"
41
	write_translog=1
45
fi
42
[ "${listener_ignoremaster:-}" = "yes" ] &&
46
43
	ignore_master=1
47
44
case "$server_role" in
48
if [ -n "$listener_debug_level" ]; then
45
domaincontroller_master|domaincontroller_backup) dn="cn=admin,$ldap_base" secret=/etc/ldap.secret ;;
49
	options="$options -d $listener_debug_level"
46
?*) dn="$ldap_hostdn" secret=/etc/machine.secret ;;
50
fi
47
esac
51
48
52
options="$options -x -ZZ"
49
tty -s || exec >>/var/log/univention/listener.log 2>&1
53
50
exec /usr/sbin/univention-directory-listener -F \
54
if [ -n "$listener_ignoremaster" -a "$listener_ignoremaster" = "yes" ]; then
51
	${listener_debug_level:+-d "$listener_debug_level"} \
55
	options="$options -B"
52
	-b "$ldap_base" \
56
fi
53
	-m /usr/lib/univention-directory-listener/system \
57
54
	-c "$cachedir" \
58
if [ -n "$server_role" ]; then
55
	${write_translog:+-o} \
59
	if [ "@%@server/role@%@" = "domaincontroller_master" -o "@%@server/role@%@" = "domaincontroller_backup" ]; then
56
	${ignore_master:+-B} \
60
		exec /usr/sbin/univention-directory-listener -F -b "@%@ldap/base@%@" -m "$moduledir" -c "$cachedir" $options -D cn=admin,@%@ldap/base@%@ -y /etc/ldap.secret >>/var/log/univention/listener.log 2>&1
57
	-ZZ \
61
	else
58
	-x \
62
		exec /usr/sbin/univention-directory-listener -F -b "@%@ldap/base@%@" -m "$moduledir" -c "$cachedir" $options -D "@%@ldap/hostdn@%@" -y /etc/machine.secret >>/var/log/univention/listener.log 2>&1
59
	${dn:+-D "$dn"} ${secret:+-y "$secret"}
63
	fi
64
else
65
	exec /usr/sbin/univention-directory-listener -F -b "@%@ldap/base@%@" -m "$moduledir" -c "$cachedir" $options >>/var/log/univention/listener.log 2>&1
66
fi
67
(-)a/branches/ucs-4.1/ucs-4.1-3/management/univention-directory-listener/debian/univention-directory-listener.univention-config-registry (-6 lines)
 Lines 1-11    Link Here 
1
Type: file
1
Type: file
2
File: etc/runit/univention-directory-listener/run
2
File: etc/runit/univention-directory-listener/run
3
Variables: listener/debug/level
4
Variables: server/role
5
Variables: listener/ignoremaster
6
Variables: ldap/base
7
Variables: ldap/port
8
Variables: ldap/server/port
9
3
10
Type: file
4
Type: file
11
File: etc/logrotate.d/univention-directory-listener
5
File: etc/logrotate.d/univention-directory-listener

Return to bug 42328