Não tenho certeza se é isso o que você está procurando, mas acredito que o .profile seja executado na inicialização do usuário individual.
Espero que isso ajude para metade do seu problema, mas se você estiver registrando o usuário simultaneamente, não acredito que funcionará sequencialmente.
Uma maneira que eu uso para verificar processos é com scripts python. Eu não sei se é possível fazer verificações soltas no bash mas eu sei em python você pode tentar usar o Popen para executar o comando do terminal
ps aux | grep the-process
como tal
p = subprocess.Popen(('ps', 'aux'), stdout=subprocess.PIPE)
g = subprocess.Popen(("grep", "the-process"), stdin=p.stdout, stdout=subprocess.PIPE)
E ele retornará uma lista dos processos em execução com esse nome. Execute um cheque e então você pode tê-lo em loop até que se torne verdade.
Espero que isso também ajude.