Hi all,
ps -ef is truncated on Solaris to consist of maximal 80 characters, e.g. see:
http://stackoverflow.com/questions/4892516/getting-around-truncated-ps
Therefore, the james shell script fails on Solaris when james is located in a directory with a too long path, I needed to adapt the james.sh
file like this:
Instead of this:
-----------------------------------------------
if [ "$DIST_OS" = "macosx" ]; then
pidtest=`$PSEXE_COMPLEX -p $pid -o command -ww | grep "$WRAPPER_CMD" | tail
-1`
else
pidtest=`$PSEXE_COMPLEX -p $pid -o args | grep "$WRAPPER_CMD" | tail -1`
fi
-----------------------------------------------
I had to do this:
-----------------------------------------------
if [ "$DIST_OS" = "macosx" ]; then
pidtest=`$PSEXE_COMPLEX -p $pid -o command -ww | grep "$WRAPPER_CMD" | tail
-1`
elif [ "$DIST_OS" = "solaris" ]; then
pidtest=`$PSEXE_COMPLEX awwx $pid | grep "$WRAPPER_CMD" | tail -1`
else
pidtest=`$PSEXE_COMPLEX -p $pid -o args | grep "$WRAPPER_CMD" | tail -1`
fi
-----------------------------------------------
whereas I defined $PSEXE_COMPLEX to be $PSEXE, and in case of Solaris it is "/usr/ucb/ps". This works fine for me. Any chance to integrate
this into the final product?
Best regards
Michael
here is the diff:
saladin@adnws194:~/projects/adnjames/etc/CorrectedJamesScript> diff james
/share/java/jpository/apache/james/3.0-beta4/bin/james
148d147
< PSEXE_COMPLEX=$PSEXE
155d153
< PSEXE_COMPLEX="/usr/ucb/ps"
373,377c371,373
< pidtest=`$PSEXE_COMPLEX -p $pid -o command -ww | grep
"$WRAPPER_CMD" | tail -1`
< elif [ "$DIST_OS" = "solaris" ]; then
< pidtest=`$PSEXE_COMPLEX awwx $pid | grep "$WRAPPER_CMD" |
tail -1`
< else
< pidtest=`$PSEXE_COMPLEX -p $pid -o args | grep
"$WRAPPER_CMD" | tail -1`
---
> pidtest=`$PSEXE -p $pid -o command -ww | grep
"$WRAPPER_CMD" | tail -1`
> else
> pidtest=`$PSEXE -p $pid -o args | grep "$WRAPPER_CMD" |
tail -1`
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]