Eco o PID dentro dos comandos executados por "su":
/bin/su - $USER -c "cd $PATH;echo $PASSWORD | \
$JAVA -Xmx256m -jar $PATH/app.jar -d > /dev/null & echo $! > $PIDFILE"
Estou escrevendo um script init.d para um aplicativo java. Mas o aplicativo java deve ser executado por outro usuário.
(O sistema operacional que estou usando é o Debian Squeeze.)
Eu já tenho isso:
/bin/su - $USER - c "cd $PATH;echo $PASSWORD | $JAVA -Xmx256m -jar $PATH/app.jar -d > /dev/null" & PID=$!
/bin/su - $USER - c "echo $PID > $PIDFILE"
Mas isso, é claro, só salvará o pid do processo "/ bin / su" em vez do pid do processo java criado.