From a9c2c45622131108955a1c9b6efe5282a17fba88 Mon Sep 17 00:00:00 2001 From: SATOH Fumiyasu Date: Thu, 5 Feb 2009 23:16:57 +0900 Subject: [PATCH] Solaris: samba.init.master: Zones support --- packaging/Solaris/samba.init.master | 18 ++++++++++++------ 1 files changed, 12 insertions(+), 6 deletions(-) diff --git a/packaging/Solaris/samba.init.master b/packaging/Solaris/samba.init.master index 61e222b..9e2e38e 100755 --- a/packaging/Solaris/samba.init.master +++ b/packaging/Solaris/samba.init.master @@ -10,11 +10,15 @@ then # /usr not mounted exit fi +zonename=`[ -x /usr/bin/zonename ] && /usr/bin/zonename` +if [ x"${zonename:-global}" = x"global" ]; then + initpid="1" +else + initpid=`/usr/bin/pgrep -u root -f ${zonename:+-z$zonename} '^zsched$'` +fi + killproc() { # kill the named process(es) - pid=`/usr/bin/ps -e | - /usr/bin/grep -w $1 | - /usr/bin/sed -e 's/^ *//' -e 's/ .*//'` - [ "$pid" != "" ] && kill $pid + pkill -x -P$initpid ${zonename:+-z$zonename} $1 } # Start/stop processes required for samba server @@ -29,18 +33,20 @@ case "$1" in # -D -s$BASE/lib/smb.conf # BASE=__BASEDIR__ - $BASE/sbin/nmbd - $BASE/sbin/smbd + $BASE/sbin/nmbd + $BASE/sbin/smbd $BASE/sbin/winbindd ;; 'stop') killproc nmbd killproc smbd + killproc winbindd ;; 'restart') killproc nmbd killproc smbd + killproc winbindd BASE=__BASEDIR__ $BASE/sbin/nmbd $BASE/sbin/smbd -- 1.5.6.5