Você pode dar uma olhada no seu PPID (ID do processo pai):
$ ps -eo pid,ppid,args | grep java
Depois de obter o PPID (segunda coluna) do seu processo Java, use ps
novamente para encontrar o processo associado:
$ ps -p [PPID]
Edit : se o pai é 1 (init), o primeiro pai do seu processo Java morreu logo após "dar à luz" (que triste). Por esse motivo, não é possível usar a hierarquia de processos atual para encontrá-la. A primeira coisa que eu recomendo que você faça é verificar ps -ef
. Você pode encontrar o culpado apenas lendo a saída.
Então, dê uma olhada nos crontabs (você já fez isso, mas não vai doer):
$ for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done
Isso exigirá privilégios de root.
Ainda não consegue ver um processo Java agendado? Que droga. Vamos tentar outra coisa. Se o seu processo Java estiver presente desde a inicialização, consulte os programas selecionados no momento da inicialização. Eu sugeriria algo como ...
$ grep -iR java /etc/rc*
Se você ainda não consegue encontrar nada, então ... Bem, eu admito que estou ficando sem idéias. Você realmente deve dar uma olhada ps -ef
e localizar processos associados aos programas baseados em Java. Você deve encontrar um daemon, ou um "iniciador", responsável pelo reaparecimento constante do seu processo Java.
ps xf
mostrar a árvore do processo? Tal como está, temos muito pouco a seguir.