在 Debian(以及大多数 Linux 发行版)中,查看进程树结构有多种常用方法,下面按推荐程度和使用场景介绍:
pstreepstree 以树状结构直观显示进程关系。
sudo apt update
sudo apt install pstree
pstree
pstree -p # 显示进程 PID
pstree -u # 显示用户
pstree -a # 显示命令行参数
pstree -p <PID> # 查看某个进程的子树
pstree root # 只显示 root 用户的进程树
示例:
pstree -p
systemd(1)─┬─sshd(800)───sshd(1200)───bash(1202)
├─nginx(900)─┬─nginx(901)
│ └─nginx(902)
└─cron(850)
ps(系统自带)ps 不直接画树,但可显示父子关系。
ps -ejH
或
ps auxf
说明:
f:以 ASCII 树形显示aux:显示所有用户进程示例:
root 1 0 0 09:00 ? 00:00:01 /sbin/init
root 800 1 0 09:01 ? 00:00:00 \_ sshd
root 1200 800 0 09:05 ? 00:00:00 \_ sshd
htop(交互式,推荐服务器)htop 支持树状视图,且可交互。
sudo apt install htop
htop
进入后按:
F5 或 t → 切换为树状视图systemd 相关工具(仅 systemd 进程)如果你的 Debian 使用 systemd(默认):
systemd-cgls
或
systemctl status
可查看 service 级别的进程树。
pstree -p <PID>
ps -o pid,ppid,cmd -p <PID>
| 场景 | 推荐命令 |
|---|---|
| 快速看进程树 | pstree -p |
| 系统自带 | ps auxf |
| 交互式 | htop |
| systemd 服务 | systemd-cgls |
如果你愿意,我也可以帮你分析某个具体进程树输出或定位某个异常进程。