Вы можете взглянуть на его PPID (идентификатор родительского процесса):
$ ps -eo pid,ppid,args | grep java
Как только вы получите PPID (второй столбец) вашего Java-процесса, используйте ps
снова, чтобы найти связанный процесс:
$ ps -p [PPID]
Редактировать : если родитель - 1 (init), то первый родитель вашего Java-процесса умер сразу после «рождения» (как печально). Из-за этого вы не можете использовать текущую иерархию процессов, чтобы найти ее. Первое, что я бы порекомендовал вам сделать, это проверить ps -ef
. Вы можете найти виновника, просто прочитав вывод.
Затем взгляните на crontabs (вы уже сделали это, но это не повредит):
$ for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done
Это потребует привилегий суперпользователя.
Все еще не видите запланированный процесс Java? Черт возьми. Давайте попробуем что-нибудь еще. Если ваш Java-процесс присутствует с момента загрузки, посмотрите на программы, запланированные во время загрузки. Я бы предложил что-то вроде ...
$ grep -iR java /etc/rc*
Если вы все еще не можете найти что-то, то ... Я признаю, что у меня заканчиваются идеи. Вам действительно нужно по-другому взглянуть ps -ef
и найти процессы, связанные с Java-программами. Вы должны столкнуться с демоном или «пусковой установкой», ответственной за постоянное возрождение вашего Java-процесса.
ps xf
показа дерева процессов? В нынешнем виде у нас очень мало дела.