centos8平台使用pstree查看進程樹


一,pstree用途

Linux pstree命令將所有行程以樹狀圖顯示,樹狀圖將會以 pid (如果有指定) 或是以 systemd 這個基本行程為根 (root)

說明:centos6及更舊版本為init為root進程

 

說明:劉宏締的架構森林是一個專注架構的博客,地址:https://www.cnblogs.com/architectforest

         對應的源碼可以訪問這里獲取: https://github.com/liuhongdi/

 說明:作者:劉宏締 郵箱: 371125307@qq.com

 

二,pstree所屬的包

1,查詢所屬的包

[root@blog ~]# whereis pstree
pstree: /usr/bin/pstree /usr/bin/pstree.x11 /usr/share/man/man1/pstree.1.gz

[root@blog ~]# rpm -qf /usr/bin/pstree
psmisc-23.1-3.el8.x86_64

 

2,如果找不到pstree命令,可以用yum安裝

[root@blog ~]# yum install psmisc

 

三,查看pstree的版本與幫助

1,查看版本

[root@blog ~]# pstree --version
pstree (PSmisc) 23.1
Copyright (C) 1993-2017 Werner Almesberger and Craig Small

 

2,查看幫助

[root@blog ~]# pstree --help 

 

四,例子一:查看進程樹

[root@blog ~]# pstree
systemd─┬─AliYunDun───25*[{AliYunDun}]
        ├─AliYunDunUpdate───3*[{AliYunDunUpdate}]
...

 

說明:子進程有多少個,會用數字加*標出

 

五,例子二:顯示每個進程的pid

[root@blog ~]# pstree -p
systemd(1)─┬─AliYunDun(30330)─┬─{AliYunDun}(30331)
           │                  ├─{AliYunDun}(30332)
           │                  ├─{AliYunDun}(30343)
           │                  ├─{AliYunDun}(30344)
           │                  ├─{AliYunDun}(30345)
           │                  ├─{AliYunDun}(30346)
           │                  ├─{AliYunDun}(30347)
           │                  ├─{AliYunDun}(30348)
           │                  ├─{AliYunDun}(30349)
           │                  ├─{AliYunDun}(30350)
           │                  ├─{AliYunDun}(30351)
           │                  ├─{AliYunDun}(30352)
           │                  ├─{AliYunDun}(30353)
           │                  ├─{AliYunDun}(30354)
           │                  ├─{AliYunDun}(30355)
           │                  ├─{AliYunDun}(30356)
           │                  ├─{AliYunDun}(30357)
           │                  ├─{AliYunDun}(30358)
           │                  ├─{AliYunDun}(30359)
           │                  ├─{AliYunDun}(30360)
           │                  ├─{AliYunDun}(30361)
           │                  ├─{AliYunDun}(30362)
           │                  ├─{AliYunDun}(30363)
           │                  ├─{AliYunDun}(17188)
           │                  └─{AliYunDun}(17367)
           ├─AliYunDunUpdate(30315)─┬─{AliYunDunUpdate}(30316)
           │                        ├─{AliYunDunUpdate}(30317)
           │                        └─{AliYunDunUpdate}(30321) 

說明:-p:同時列出每個進程的PID

 

六,例子三:顯示某個進程及其子進程:

[root@blog ~]# pstree -p 30315
AliYunDunUpdate(30315)─┬─{AliYunDunUpdate}(30316)
                       ├─{AliYunDunUpdate}(30317)
                       └─{AliYunDunUpdate}(30321)

說明:顯示30315及其子進程,並顯示pid

 

七,例子四:查看mysql用戶的進程

[root@blog ~]# pstree mysql
mysqld_safe───mysqld───45*[{mysqld}]

 

八,例子五:顯示指定進程的父進程:

# -a 表示輸出命令行選項

# p表PID

# s表示指定進程的父進程

[root@blog ~]# pstree -aps 8244
systemd,1 --system --deserialize 20
  └─redis-server,8240
      └─{redis-server},8244

 

九,例子六:顯示命令行參數

# -t表示顯示線程

# -a表示顯示命令行參數

# -p表示顯示pid

[root@blog ~]# pstree -a -t -p 17246
mysqld_safe,17246 /usr/local/soft/mysql/bin/mysqld_safe --datadir=/data/mysql/data --pid-file=/data/mysql/var/mysqld.pid
  └─mysqld,17700 --basedir=/usr/local/soft/mysql --datadir=/data/mysql/data --plugin-dir=/usr/local/soft/mysql/lib/plugin--log-error=/data/mysql/log/mysqld.log
      ├─{mysqld},17710
      ├─{mysqld},17711
      ├─{mysqld},17712
      ├─{mysqld},17713
      ├─{mysqld},17714
      ├─{mysqld},17715
      ├─{mysqld},17716
      ├─{mysqld},17717
      ├─{mysqld},17718
      ├─{mysqld},17719
      ├─{mysqld},17720
      ├─{mysqld},17721
      ├─{mysqld},17722
      ├─{mysqld},17723
      ├─{mysqld},17724
      ├─{mysqld},17725
      ├─{mysqld},17726
      ├─{mysqld},17727
      ├─{mysqld},17728
      ├─{mysqld},17729
      ├─{mysqld},17730
      ├─{mysqld},17731
      ├─{mysqld},17732
      ├─{mysqld},17733
      ├─{mysqld},17734
      ├─{mysqld},17735
      ├─{mysqld},17736
      ├─{mysqld},17739
      ├─{mysqld},17740
      ├─{mysqld},17743
      ├─{mysqld},17744
      ├─{mysqld},17745
      ├─{mysqld},17746
      ├─{mysqld},17747
      ├─{mysqld},17748
      ├─{mysqld},17754
      ├─{mysqld},17755
      ├─{mysqld},17756
      ├─{mysqld},17759
      ├─{mysqld},17760
      ├─{mysqld},29999
      ├─{mysqld},24718
      ├─{mysqld},24719
      ├─{xpl_worker0},17737
      └─{xpl_worker1},17738

 

十,查看centos版本: 

[root@blog ~]$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core) 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM