From 9f2221ef7656ae03bdb463b7ec6861738d197742 Mon Sep 17 00:00:00 2001 From: Noriko Hosoi Date: Apr 16 2015 21:13:43 +0000 Subject: Ticket #48148 - start/stop/restart-dirsrv utilities should ignore admin-serv directory Description: {start,stop}-dirsrv script scans /etc/sysconfig/dirsrv-* to find out the server instances to start/stop, which could include dirsrv-admin for the Admin server if 389-admin is installed. This patch silently skips "dirsrv-admin" from the server start/stop. (cherry picked from commit 349db8decaff0d3a3b63aafc22c4b1714c4e9573) --- diff --git a/ldap/admin/src/scripts/start-dirsrv.in b/ldap/admin/src/scripts/start-dirsrv.in index 291c821..0a38c4c 100755 --- a/ldap/admin/src/scripts/start-dirsrv.in +++ b/ldap/admin/src/scripts/start-dirsrv.in @@ -19,8 +19,12 @@ start_instance() { shift # source env. for this instance - if [ -f $initconfig_dir/@package_name@-$SERV_ID ] ; then - . $initconfig_dir/@package_name@-$SERV_ID + if [ $SERV_ID == "admin" ] ; then + # ignore admin + return 0 + elif [ -f $initconfig_dir/dirsrv-$SERV_ID ] ; then + echo Starting instance \"$SERV_ID\" + . $initconfig_dir/dirsrv-$SERV_ID else echo Instance $SERV_ID not found. return 1 @@ -127,7 +131,6 @@ if [ "$#" -eq 0 ]; then for i in $initconfig_dir/@package_name@-*; do regex=s,$initconfig_dir/@package_name@-,,g inst=`echo $i | sed -e $regex` - echo Starting instance \"$inst\" start_instance $inst if [ "$?" -ne 0 ]; then ret=$? diff --git a/ldap/admin/src/scripts/stop-dirsrv.in b/ldap/admin/src/scripts/stop-dirsrv.in index 4d88585..076af87 100755 --- a/ldap/admin/src/scripts/stop-dirsrv.in +++ b/ldap/admin/src/scripts/stop-dirsrv.in @@ -10,8 +10,12 @@ stop_instance() { SERV_ID=$1 # source env. for this instance - if [ -f $initconfig_dir/@package_name@-$SERV_ID ] ; then - . $initconfig_dir/@package_name@-$SERV_ID + if [ $SERV_ID == "admin" ] ; then + # ignore admin + return 0 + elif [ -f $initconfig_dir/dirsrv-$SERV_ID ] ; then + echo Stopping instance \"$SERV_ID\" + . $initconfig_dir/dirsrv-$SERV_ID else echo Instance $SERV_ID not found. return 1 @@ -75,7 +79,6 @@ if [ "$#" -eq 0 ]; then for i in $initconfig_dir/@package_name@-*; do regex=s,$initconfig_dir/@package_name@-,,g inst=`echo $i | sed -e $regex` - echo Stopping instance \"$inst\" stop_instance $inst if [ "$?" -ne 0 ]; then ret=$?