From bcf1d784705d62c771d1a9cb3350c70bc58a17c4 Mon Sep 17 00:00:00 2001 From: "John C. Frickson" Date: Thu, 19 May 2016 11:06:17 -0500 Subject: [PATCH] Changes to Solaris install/uninstall -- redirects and svcadm restart --- Makefile.in | 16 +++++++---- uninstall.in | 77 ++++++++++++++++++++++++++++++++++++++++++---------- 2 files changed, 73 insertions(+), 20 deletions(-) diff --git a/Makefile.in b/Makefile.in index 379e425f..0e9b1ae3 100644 --- a/Makefile.in +++ b/Makefile.in @@ -101,14 +101,18 @@ install-inetd: SRC_INETD_FILE=`echo "$(SRC_INETD)" | sed -e 's/socket/socket-svc/'`; \ echo $(INSTALL) -m 644 startup/$$SRC_INETD_FILE $(INETD_DIR)/$(INIT_FILE); \ $(INSTALL) -m 644 startup/$$SRC_INETD_FILE $(INETD_DIR)/$(INIT_FILE); \ + elif test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \ + echo $(INSTALL) -m 775 -g sys -d $(INETD_DIR) + $(INSTALL) -m 775 -g sys -d $(INETD_DIR) + echo $(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \ + $(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \ + $(INSTALL) -m 775 -d $(INETD_DIR) + echo svccfg import $(INETD_DIR)/$(INETD_FILE); \ + svccfg import $(INETD_DIR)/$(INETD_FILE); \ + echo "*** Run 'svcadm enable nrpe' to start it"; \ else\ echo $(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \ $(INSTALL) -m 644 startup/$(SRC_INETD) $(INETD_DIR)/$(INETD_FILE); \ - if test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \ - echo svccfg import $(INETD_DIR)/$(INETD_FILE); \ - svccfg import $(INETD_DIR)/$(INETD_FILE); \ - echo "*** Run 'svcadm enable nrpe' to start it"; \ - fi;\ fi @$(EGREP) -q "^nrpe[\t ]+5666/tcp" /etc/services || \ echo "***** MAKE SURE 'nrpe 5666/tcp' IS IN YOUR /etc/services FILE" @@ -127,6 +131,8 @@ install-init: echo $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \ $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \ elif test $(INETD_TYPE) = smf10 -o $(INETD_TYPE) = smf11; then \ + echo $(INSTALL) -m 775 -g sys -d $(INETD_DIR) + $(INSTALL) -m 775 -g sys -d $(INITD_DIR) echo $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \ $(INSTALL) -m 644 startup/$(SRC_INIT) $(INIT_DIR)/$(INIT_FILE); \ echo svccfg import $(INIT_DIR)/$(INIT_FILE); \ diff --git a/uninstall.in b/uninstall.in index 55942246..9bf8f0e6 100755 --- a/uninstall.in +++ b/uninstall.in @@ -220,6 +220,10 @@ rm_startup() { prt_msg 2 0 1 "($INETD_TYPE) Delete $INETD_DIR/$INETD_FILE" && { rm $force "$INETD_DIR/$INETD_FILE" } + elif test "$INETD_TYPE" = smf10 -o "$INETD_TYPE" = smf11; then + prt_msg 2 0 1 "($INIT_TYPE) svcadm restart svc:/system/manifest-import" && { + svcadm restart svc:/system/manifest-import + } fi } fi @@ -267,6 +271,10 @@ rm_startup() { prt_msg 2 0 1 "($INIT_TYPE) initctl reload-configuration" && { initctl reload-configuration } + elif test "$INETD_TYPE" = smf10 -o "$INETD_TYPE" = smf11; then + prt_msg 2 0 1 "($INIT_TYPE) svcadm restart svc:/system/manifest-import" && { + svcadm restart svc:/system/manifest-import + } fi } fi @@ -303,19 +311,34 @@ rm_user() { prt_msg 2 0 1 "Delete nrpe user:${NRPE_USER} and nagios user:${NAGIOS_USER}" || return if test ${OPSYS} = aix; then - rmuser -p ${NRPE_USER} - rmuser -p ${NAGIOS_USER} + if test $redir -eq 1; then + rmuser -p ${NRPE_USER} 2>/dev/null + rmuser -p ${NAGIOS_USER} 2>/dev/null + else + rmuser -p ${NRPE_USER} + rmuser -p ${NAGIOS_USER} + fi elif test ${OPSYS} = osx; then dscl . -delete /Groups/${NRPE_GROUP} GroupMembership ${NRPE_USER} dscl . -delete /Users name ${NRPE_USER} dscl . -delete /Groups/${NAGIOS_GROUP} GroupMembership ${NAGIOS_USER} dscl . -delete /Users name ${NAGIOS_USER} elif test ${DIST} = "freebsd"; then - pw del user ${NRPE_USER} - pw del user ${NAGIOS_USER} + if test $redir -eq 1; then + pw del user ${NRPE_USER} 2>/dev/null + pw del user ${NAGIOS_USER} 2>/dev/null + else + pw del user ${NRPE_USER} + pw del user ${NAGIOS_USER} + fi else - userdel -r ${NRPE_USER} - userdel -r ${NAGIOS_USER} + if test $redir -eq 1; then + userdel -r ${NRPE_USER} 2>/dev/null + userdel -r ${NAGIOS_USER} 2>/dev/null + else + userdel -r ${NRPE_USER} + userdel -r ${NAGIOS_USER} + fi fi } @@ -324,17 +347,37 @@ rm_group() { prt_msg 2 0 1 "Delete nrpe group:${NRPE_GROUP} and nagios group:${NAGIOS_GROUP}" || return if test ${OPSYS} = aix; then - rmgroup -p ${NRPE_GROUP} - rmgroup -p ${NAGIOS_GROUP} + if test $redir -eq 1; then + rmgroup -p ${NRPE_GROUP} 2>/dev/null + rmgroup -p ${NAGIOS_GROUP} 2>/dev/null + else + rmgroup -p ${NRPE_GROUP} + rmgroup -p ${NAGIOS_GROUP} + fi elif test ${OPSYS} = osx; then - dscl . -delete /Groups/${NRPE_GROUP} - dscl . -delete /Groups/${NAGIOS_GROUP} + if test $redir -eq 1; then + dscl . -delete /Groups/${NRPE_GROUP} 2>/dev/null + dscl . -delete /Groups/${NAGIOS_GROUP} 2>/dev/null + else + dscl . -delete /Groups/${NRPE_GROUP} + dscl . -delete /Groups/${NAGIOS_GROUP} + fi elif test ${DIST} = "freebsd"; then - pw del group ${NRPE_GROUP} - pw del group ${NAGIOS_GROUP} + if test $redir -eq 1; then + pw del group ${NRPE_GROUP} 2>/dev/null + pw del group ${NAGIOS_GROUP} 2>/dev/null + else + pw del group ${NRPE_GROUP} + pw del group ${NAGIOS_GROUP} + fi else - groupdel ${NRPE_GROUP} - groupdel ${NAGIOS_GROUP} + if test $redir -eq 1; then + groupdel ${NRPE_GROUP} 2>/dev/null + groupdel ${NAGIOS_GROUP} 2>/dev/null + else + groupdel ${NRPE_GROUP} + groupdel ${NAGIOS_GROUP} + fi fi } @@ -342,7 +385,11 @@ rm_script() { prt_msg 1 0 0 "*** Removing ${myname}" prt_msg 2 0 1 "Delete ${myname}" || return - rm "${myname)" + if test $redir -eq 1; then + rm "${myname}" 2>/dev/null + else + rm "${myname}" + fi } get_opts $@