Sie können sich die PPID (übergeordnete Prozess-ID) ansehen:
$ ps -eo pid,ppid,args | grep java
Wenn Sie die PPID (zweite Spalte) Ihres Java-Prozesses erhalten haben, ps
suchen Sie den zugehörigen Prozess erneut mit:
$ ps -p [PPID]
Bearbeiten : Wenn das übergeordnete Element 1 (init) ist, ist das erste übergeordnete Element Ihres Java-Prozesses direkt nach der "Geburt" (wie traurig) verstorben. Aus diesem Grund können Sie die aktuelle Prozesshierarchie nicht verwenden, um sie zu finden. Das erste, was ich Ihnen empfehlen würde, ist zu überprüfen ps -ef
. Sie können den Täter finden, indem Sie einfach die Ausgabe lesen.
Dann schauen Sie sich Crontabs an (Sie haben es bereits getan, aber es tut nicht weh):
$ for user in $(cut -f1 -d: /etc/passwd); do echo $user; crontab -u $user -l; done
Dies erfordert Root-Rechte.
Sie können einen geplanten Java-Prozess immer noch nicht sehen? Verdammt noch mal. Versuchen wir etwas anderes. Wenn Ihr Java-Prozess seit dem Start vorhanden ist, schauen Sie sich die Programme an, die zum Startzeitpunkt erstellt wurden. Ich würde so etwas vorschlagen ...
$ grep -iR java /etc/rc*
Wenn Sie dann immer noch nichts finden können ... Nun, ich gebe zu, mir gehen die Ideen aus. Sie sollten sich die ps -ef
mit Java-basierten Programmen verbundenen Prozesse wirklich genauer ansehen und sie suchen . Sie sollten auf einen Daemon oder einen "Launcher" stoßen, der für das ständige Auffrischen Ihres Java-Prozesses verantwortlich ist.
ps xf
Prozessbaums anzeigen? So wie es aussieht, haben wir sehr wenig zu tun.