Linux pstree命令树状图方式查看进程
pstree命令 以树状图的方式展现进程之间的派生关系,显示效果比较直观,可快速用于查询僵尸进程的主进程。
(1)pstree工具安装教程
# 通过yum方式,将psmisc的RPM安装包下载到/tmp目录下
[root@blogs-v2 ~]# yum -y install psmisc --downloadonly --downloaddir=/tmp
[root@blogs-v2 ~]# cd /tmp
[root@blogs-v2 tmp]# rpm -ivh psmisc-22.20-17.el7.x86_64.rpm
(2)pstree命令可选参数
-a:显示每个程序的完整指令,包含路径,参数或是常驻服务的标示;
-c:不使用精简标示法;
-G:使用VT100终端机的列绘图字符;
-h:列出树状图时,特别标明现在执行的程序;
-H<程序识别码>:此参数的效果和指定"-h"参数类似,但特别标明指定的程序;
-l:采用长列格式显示树状图;
-n:用程序识别码排序。预设是以程序名称来排序;
-p:显示程序识别码;
-u:显示用户名称;
-U:使用UTF-8列绘图字符;
-V:显示版本信息。
(3)效果展示
[root@starctomaster1 ~]# pstree -aph
systemd,1 --switched-root --system --deserialize 22
├─NetworkManager,813 --no-daemon
│ ├─{NetworkManager},814
│ └─{NetworkManager},816
├─acpid,756
├─agetty,2359 --noclear tty1 linux
├─agetty,2360 --keep-baud 115200,38400,9600 ttyS0 vt220
├─atd,1828 -f
├─auditd,698
│ └─{auditd},699
├─containerd,1089
│ ├─{containerd},1107
│ ├─{containerd},1110
│ ├─{containerd},1113
│ ├─{containerd},1114
│ ├─{containerd},1127
│ ├─{containerd},1132
│ ├─{containerd},1133
│ ├─{containerd},1150
│ ├─{containerd},1153
│ ├─{containerd},2025
│ ├─{containerd},2067
│ ├─{containerd},2089
│ ├─{containerd},2109
│ └─{containerd},22515
├─containerd-shim,1892 -namespace k8s.io -idf30802e4a35d06b67e9922ec61f209
│ ├─kube-controller,2178 --allocate-node-cidrs=true...
│ │ ├─{kube-controller},2276
│ │ ├─{kube-controller},2277
│ │ ├─{kube-controller},2278
│ │ ├─{kube-controller},2325
│ │ ├─{kube-controller},2366
│ │ ├─{kube-controller},3502
│ │ ├─{kube-controller},3503
│ │ ├─{kube-controller},3504
│ │ ├─{kube-controller},3505
│ │ ├─{kube-controller},3506
│ │ ├─{kube-controller},3709
│ │ └─{kube-controller},10648
│ ├─pause,1965
│ ├─{containerd-shim},1893
│ ├─{containerd-shim},1894
│ ├─{containerd-shim},1895
│ ├─{containerd-shim},1896
│ ├─{containerd-shim},1897
│ ├─{containerd-shim},1898
│ ├─{containerd-shim},1899
│ ├─{containerd-shim},1901
│ ├─{containerd-shim},2024
│ ├─{containerd-shim},2249
│ └─{containerd-shim},3486
├─containerd-shim,1900 -namespace k8s.io -id33486b64ba3f77ec6dfeff48dc0be7
│ ├─kube-scheduler,2203 ...
│ │ ├─{kube-scheduler},2269
│ │ ├─{kube-scheduler},2270
│ │ ├─{kube-scheduler},2271
│ │ ├─{kube-scheduler},2272
│ │ ├─{kube-scheduler},2274
│ │ ├─{kube-scheduler},2275
│ │ ├─{kube-scheduler},2324
│ │ └─{kube-scheduler},848
│ ├─pause,1988
│ ├─{containerd-shim},1903
│ ├─{containerd-shim},1904
│ ├─{containerd-shim},1905
│ ├─{containerd-shim},1906
│ ├─{containerd-shim},1921
│ ├─{containerd-shim},1922
│ ├─{containerd-shim},1925
│ ├─{containerd-shim},1926
│ ├─{containerd-shim},2038
│ ├─{containerd-shim},2040
│ ├─{containerd-shim},3756
│ └─{containerd-shim},25799
├─containerd-shim,2032 -namespace k8s.io -idf8bd61c742961b96f69f8fda13f123
│ ├─kube-apiserver,2318 --advertise-address=192.168.40.180 ...
│ │ ├─{kube-apiserver},2343
│ │ ├─{kube-apiserver},2344
│ │ ├─{kube-apiserver},2345
│ │ ├─{kube-apiserver},2350
│ │ ├─{kube-apiserver},2351
│ │ ├─{kube-apiserver},2352
│ │ ├─{kube-apiserver},2353
│ │ ├─{kube-apiserver},2367
│ │ ├─{kube-apiserver},2368
│ │ ├─{kube-apiserver},2369
│ │ ├─{kube-apiserver},2370
│ │ ├─{kube-apiserver},2371
│ │ ├─{kube-apiserver},3501
│ │ ├─{kube-apiserver},11069
│ │ └─{kube-apiserver},7069
│ ├─pause,2192
│ ├─{containerd-shim},2033
│ ├─{containerd-shim},2034
│ ├─{containerd-shim},2035
│ ├─{containerd-shim},2036
│ ├─{containerd-shim},2037
│ ├─{containerd-shim},2039
│ ├─{containerd-shim},2041
│ ├─{containerd-shim},2042
│ ├─{containerd-shim},2234
│ ├─{containerd-shim},3487
│ └─{containerd-shim},4256
├─containerd-shim,2047 -namespace k8s.io -idb9b130d529f0ee8b338d9a803abdf0
│ ├─etcd,2296 --advertise-client-urls=https://192.168.40.180:2379...
│ │ ├─{etcd},2338
│ │ ├─{etcd},2339
│ │ ├─{etcd},2340
│ │ ├─{etcd},2341
│ │ ├─{etcd},2346
│ │ ├─{etcd},2354
│ │ ├─{etcd},2372
│ │ ├─{etcd},2895
│ │ └─{etcd},15302
│ ├─pause,2150
│ ├─{containerd-shim},2048
│ ├─{containerd-shim},2049
│ ├─{containerd-shim},2050
│ ├─{containerd-shim},2051
│ ├─{containerd-shim},2052
│ ├─{containerd-shim},2053
│ ├─{containerd-shim},2054
│ ├─{containerd-shim},2061
│ ├─{containerd-shim},2215
│ ├─{containerd-shim},2216
│ └─{containerd-shim},19518
├─containerd-shim,2393 -namespace k8s.io -idf186608e53d90033cd7d7c1a0bf662
│ ├─pause,2416
│ ├─runsvdir,3143 -P /etc/service/enabled
│ │ ├─runsv,3211 felix
│ │ │ └─calico-node,3219 -felix
│ │ │ ├─{calico-node},3229
│ │ │ ├─{calico-node},3230
│ │ │ ├─{calico-node},3231
│ │ │ ├─{calico-node},3236
│ │ │ ├─{calico-node},3239
│ │ │ ├─{calico-node},3283
│ │ │ ├─{calico-node},3284
│ │ │ ├─{calico-node},3285
│ │ │ ├─{calico-node},3296
│ │ │ ├─{calico-node},3338
│ │ │ ├─{calico-node},3339
│ │ │ ├─{calico-node},15177
│ │ │ └─{calico-node},19367
│ │ ├─runsv,3212 monitor-addresses
│ │ │ └─calico-node,3221 -monitor-addresses
│ │ │ ├─{calico-node},3233
│ │ │ ├─{calico-node},3234
│ │ │ ├─{calico-node},3235
│ │ │ ├─{calico-node},3240
│ │ │ └─{calico-node},3242
│ │ ├─runsv,3213 allocate-tunnel-addrs
│ │ │ └─calico-node,3220 -allocate-tunnel-addrs
│ │ │ ├─{calico-node},3223
│ │ │ ├─{calico-node},3226
│ │ │ ├─{calico-node},3228
│ │ │ ├─{calico-node},3232
│ │ │ └─{calico-node},3237
│ │ ├─runsv,3214 bird
│ │ │ └─bird,3379 -R -s /var/run/calico/bird.ctl -d -c ...
│ │ ├─runsv,3215 bird6
│ │ │ └─bird6,3380 -R -s /var/run/calico/bird6.ctl -d -c ...
│ │ └─runsv,3216 confd
│ │ └─calico-node,3222 -confd
│ │ ├─{calico-node},3224
│ │ ├─{calico-node},3225
│ │ ├─{calico-node},3227
│ │ ├─{calico-node},3238
│ │ ├─{calico-node},3241
│ │ ├─{calico-node},3243
│ │ ├─{calico-node},3244
│ │ ├─{calico-node},3252
│ │ └─{calico-node},3255
│ ├─{containerd-shim},2394
│ ├─{containerd-shim},2395
│ ├─{containerd-shim},2396
│ ├─{containerd-shim},2397
│ ├─{containerd-shim},2398
│ ├─{containerd-shim},2399
│ ├─{containerd-shim},2400
│ ├─{containerd-shim},2401
│ ├─{containerd-shim},2403
│ ├─{containerd-shim},2456
│ ├─{containerd-shim},2864
│ ├─{containerd-shim},6220
│ ├─{containerd-shim},23674
│ └─{containerd-shim},23675
├─containerd-shim,2549 -namespace k8s.io -idba899f4ee9078d10dfe11a5bc326d4
│ ├─kube-proxy,2599 --config=/var/lib/kube-proxy/config.conf--hostname-overrid
│ │ ├─{kube-proxy},2611
│ │ ├─{kube-proxy},2612
│ │ ├─{kube-proxy},2613
│ │ ├─{kube-proxy},2615
│ │ ├─{kube-proxy},2653
│ │ └─{kube-proxy},3591
│ ├─pause,2570
│ ├─{containerd-shim},2550
│ ├─{containerd-shim},2551
│ ├─{containerd-shim},2552
│ ├─{containerd-shim},2553
│ ├─{containerd-shim},2554
│ ├─{containerd-shim},2555
│ ├─{containerd-shim},2556
│ ├─{containerd-shim},2557
│ ├─{containerd-shim},2558
│ ├─{containerd-shim},2576
│ └─{containerd-shim},28433
├─crond,1825 -n
├─dbus-daemon,737 --system --address=systemd: --nofork --nopidfile--systemd-activ
├─dockerd,1399 -H fd:// --containerd=/run/containerd/containerd.sock
│ ├─{dockerd},1407
│ ├─{dockerd},1408
│ ├─{dockerd},1409
│ ├─{dockerd},1410
│ ├─{dockerd},1447
│ ├─{dockerd},1486
│ └─{dockerd},1551
├─earlyoom,735 -r 3600 -m 2,2 -s 100,100 -p -n
├─gssproxy,726 -D
│ ├─{gssproxy},727
│ ├─{gssproxy},728
│ ├─{gssproxy},729
│ ├─{gssproxy},730
│ └─{gssproxy},731
├─kubelet,1397 --bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf--kube
│ ├─{kubelet},1400
│ ├─{kubelet},1401
│ ├─{kubelet},1402
│ ├─{kubelet},1403
│ ├─{kubelet},1497
│ ├─{kubelet},1512
│ ├─{kubelet},1529
│ ├─{kubelet},1530
│ ├─{kubelet},1538
│ ├─{kubelet},1549
│ ├─{kubelet},1628
│ ├─{kubelet},1635
│ ├─{kubelet},1858
│ └─{kubelet},1859
├─lsmd,743 -d
├─lvmetad,495 -f
├─master,1243 -w
│ ├─cleanup,3673 -z -t unix -u
│ ├─local,3675 -t unix
│ ├─pickup,8361 -l -t unix -u
│ ├─qmgr,1246 -l -t unix -u
│ └─trivial-rewrite,11469 -n rewrite -t unix -u
├─ntpd,2358 -u ntp:ntp -g
├─polkitd,733 --no-debug
│ ├─{polkitd},749
│ ├─{polkitd},750
│ ├─{polkitd},751
│ ├─{polkitd},752
│ ├─{polkitd},753
│ └─{polkitd},754
├─rngd,744 -f
├─rpc.idmapd,16816
├─rpc.mountd,16817
├─rpc.statd,16277
├─rpcbind,725 -w
├─rsyslogd,1406 -n
│ ├─{rsyslogd},1412
│ └─{rsyslogd},1413
├─sshd,1396 -D
│ └─sshd,26820
│ └─bash,26830
│ └─pstree,19114 -aph
├─systemd-journal,467
├─systemd-logind,734
├─systemd-udevd,499
└─tuned,1081 -Es /usr/sbin/tuned -l -P
├─{tuned},1392
├─{tuned},1393
├─{tuned},1394
└─{tuned},2349
[root@starctomaster1 ~]# vim get_pstree.sh
while true; do
date
pstree
sleep 10
done
[root@starctomaster1 ~]# nohup bash get_pstree.sh > get_ps.log 2>&1 &
作者:UStarGao
链接:https://www.starcto.com/systemtool/317.html
来源:STARCTO
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
UCloud云平台推荐
随便看看
- 2021-08-01MySQL主从同步之半同步复制
- 2021-01-24Zabbix4.0本地安装部署教程
- 2021-11-03Redis持久化解决方案实操
- 2021-07-10MySQL基于Percona XtraBackup 实现全备&增量备份与恢复
- 2021-03-27初识Redis数据库