Bagaimana Anda menemukan proses induk dari proses zombie?
Ketika proses anak adalah sesuatu di mana orang tua tidak sepenuhnya jelas ...
Apakah ada cara untuk membuat daftar proses dalam format pohon atau sesuatu?
Tambahkan l
opsi ke baris perintah ps Anda. Ini adalah opsi untuk keluaran panjang. Id proses induk adalah salah satu kolom tambahan - berlabel PPID.
$ ps l
F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY TIME COMMAND
0 508 3344 4498 18 0 2452 1236 wait Ss pts/12 0:00 /bin/sh
0 508 4467 17796 15 0 4664 1572 wait Ss pts/5 0:00 -/bin/bash
0 508 4498 4467 15 0 23032 15108 - S+ pts/5 2:20 emacs -nw
0 508 4532 17796 15 0 4532 1464 wait Ss pts/13 0:00 -/bin/bash
0 508 4916 17796 15 0 4664 1648 wait Ss pts/7 0:01 -/bin/bash
Pilihan lain adalah perintah pstree untuk menunjukkan representasi pohon ascii dari proses. Anda mungkin ingin -p
opsi menampilkan id proses.
$ pstree -p dharris
screen(17796)─┬─bash(4467)───emacs(4498)───sh(3344)───sh(3345)
├─bash(4532)───su(31037)───bash(31041)
├─bash(4916)───pstree(26456)
├─bash(13547)───su(20442)───bash(20443)
└─bash(17797)
sshd(25813)───bash(25817)───screen(25870)
pstree -p harris
,pstree -p $USER
akan menyampaikan makna yang sama, dan bekerja kata demi kata.FWIW,
ps
memiliki mode "hutan" yang menampilkan banyak pohon:Jika itu tidak menampilkan proses yang Anda cari, coba sebutkan nama pengguna Anda secara eksplisit
ps f -U $USER
:; ini cenderung menunjukkan lebih banyak proses daripada yang lamaps
.Secara pribadi saya menggunakan
ps fo pid,cmd
atau untuk mendapatkan tampilan hutan dengan kolom pilihan saya (pid,cmd
dalam hal ini). Anda bisa mendapatkan daftar kolom lengkap denganps L
.sumber
htop
juga baik, terutama ketika menekanl
nama proses yang akan menampilkan semua file, pipa, dan url yang terbuka untuk suatu proses (memerlukanlsof
)sumber
Pertama digunakan
top
untuk mengetahuipid
proses zombie. Kemudian jalankanps -elf
ataups -ef
untuk menemukanppid
zombie.sumber