Você pode fazer seu script de inicialização sem um arquivo pid, não haverá problemas com ele. A menos que outro usuário inicie uma instância do jboss manualmente. Eu não acho que seu script de inicialização pode lidar com várias linhas retornadas por "checkproc -v $ JBOSS_PROCESS_NAME"
O arquivo pid é útil principalmente quando há a possibilidade de vários aplicativos serem iniciados na mesma máquina. Você não quer que seu script de inicialização pare as instâncias iniciadas por outros usuários.
Portanto, em vez de matar o primeiro (ou todos) programa que possui uma cadeia específica, salve o arquivo pid do programa iniciado a partir do script de inicialização. Dessa forma, quando você tentar matar o programa, você apenas matará o iniciado por você.