Linux 要查詢某個 Process ID (PID) 的 User (UID) 是誰?
ps aux | grep $pid、/proc/$PID/status,都會拿到 root 或 sudo 的 id,要怎麼找到是哪個使用者執行的呢?
- 註:想要找到此 Process 是誰執行的,看到 sudo、root 都沒救,需要找到最原始的執行者
個人筆記, 記錄關於 系統、程式、新聞 與 日常生活 等資訊
Linux 要查詢某個 Process ID (PID) 的 User (UID) 是誰?
ps aux | grep $pid、/proc/$PID/status,都會拿到 root 或 sudo 的 id,要怎麼找到是哪個使用者執行的呢?
平常要找某 Process (Ex: Apache) 的 Pid,都是 ps aux | grep apache 然後在搭配 awk 來把 pid 撈出來。
上述方式撈出來的這些 pid 常常會有一個是 ps 的 pid,而且撈的方式還蠻辛苦的~ 使用 pgrep 可以比較輕鬆解決~
平常若要找出 Apache2 的所有 process id,會搭配 awk 來使用,如下範例:
但是這個 pid 列表常常會包含 grep 的 pid。
使用 pidof 就不會有這個困擾囉~
Linux 正在執行的 Process 不定期的掛掉, 掛掉前剛好都有現象可以知道, 於是需要將掛掉前的 Process Memory Dump 出來看看, 找出到底是哪邊出問題.
Linux 要砍掉應用程式, 可以使用 kill, 暴力點可以使用 kill -9.
但是 kill 需要知道 PID (Process ID), 所以如果此應用程式(Process) 有很多小孩, 就會砍不完.