日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

Linux性能相关工具

發(fā)布時(shí)間:2025/6/15 linux 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux性能相关工具 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
  • 進(jìn)程管理相關(guān)命令:

  • pstree : 樹(shù)狀顯示進(jìn)程

    • 選項(xiàng):

      -p : 顯示PID,可以指定查看某個(gè)用戶

  • ps : 查看進(jìn)程狀態(tài)

    • 三種選項(xiàng)風(fēng)格:

      UNIX : 帶 -
      BSD : 不帶 -
      GUN : --

    • 選項(xiàng):

      a : 所有與終端有關(guān)的進(jìn)程
      x : 所有與終端無(wú)關(guān)的進(jìn)程
      u : 顯示進(jìn)程所有者信息
      f : 顯示進(jìn)程樹(shù),相當(dāng)于--forest
      k | --sort : 對(duì)某列屬性排序(默認(rèn)升序,屬性前加-表示降序)
      o : 定制要顯示屬性信息:PID,CMD,%cpu,%mem
      L : 顯示支持的屬性列表
      -C : 指定要顯示的命令,多個(gè)命令用,分隔
      -L : 顯示線程
      -e : 顯示所有進(jìn)程,相當(dāng)于-A
      -f : 顯示完整格式程序信息
      -F : 顯示更完整格式的進(jìn)程信息
      -H : 以進(jìn)程層級(jí)格式顯示進(jìn)程相關(guān)信息
      -u userlist : 指定有效的用戶ID或名稱
      -U userlist : 指定真正的用戶ID或名稱
      -g gid或groupname : 指定有效的gid或組名稱
      -G gid或groupname : 指定真正的gid或組名稱
      -p pid : 顯示指pid的進(jìn)程
      --ppid pid : 顯示屬于pid的子進(jìn)程

    • ps輸出的屬性:

      • STAT : 進(jìn)程狀態(tài)

        R :running
        S : interruptable sleeping 可中斷休眠
        D : uninterruptable sleeping 不可中斷的休眠
        T : stopped 停止
        Z : zombie 僵死
        + : 前臺(tái)進(jìn)程
        l : 多線程進(jìn)程
        L :內(nèi)存分頁(yè)并帶鎖
        N :低優(yōu)先級(jí)進(jìn)程
        < : 高優(yōu)先級(jí)進(jìn)程
        s : session leader,會(huì)話(子進(jìn)程)發(fā)起者

      • VSZ: Virtual memory SiZe,虛擬內(nèi)存集,線性內(nèi)存
      • RSS: ReSident Size, 常駐內(nèi)存集
      • ni:nice 值
      • pri:priority 優(yōu)先級(jí)
      • psr:processor CPU編號(hào)
      • rtprio: 實(shí)時(shí)優(yōu)先級(jí)
    • 查找占用最多內(nèi)存和CPU的進(jìn)程:
      ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head #查看內(nèi)存
      ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%cpu | head #查看CPU

    • 使用watch實(shí)用程序執(zhí)行重復(fù)的輸出以實(shí)現(xiàn)對(duì)就程進(jìn)行實(shí)時(shí)的監(jiān)視:
      watch -n 1 'ps -eo pid,ppid,cmd,%mem,%cpu --sort=-%mem | head'
  • pgrep : 搜索進(jìn)程

    • 使用ps [option] | grep等方式實(shí)現(xiàn)也可
    • pgrep使用擴(kuò)展正則表達(dá)式搜索

      pgrep [option] pattern
        -u uid : 生效者
        -U uid : 真實(shí)發(fā)起者
        -l : 顯示進(jìn)程名
        -a : 顯示完整格式的進(jìn)程名
        -t terminal : 與指定終端相關(guān)的進(jìn)程
        -P pid : 顯示指定進(jìn)程的子進(jìn)程

  • top : 實(shí)時(shí)監(jiān)測(cè)

    • 選項(xiàng):

      -d : 指定刷新時(shí)間,默認(rèn)3秒
      -b : 顯示全部進(jìn)程(不分頁(yè))
      -n : 指定刷新次數(shù),達(dá)到次數(shù)后退出

    • top顯示的信息:

      第一行: top - :當(dāng)前系統(tǒng)時(shí)間  up : 系統(tǒng)運(yùn)行時(shí)間  user : 在線用戶數(shù)  load average : 系統(tǒng)平均負(fù)載  
      第二行: total : 總進(jìn)程數(shù)  running : 運(yùn)行中進(jìn)程  sleeping : 休眠進(jìn)程數(shù)  stopped : 停止進(jìn)程數(shù)  zombie : 僵死進(jìn)程數(shù)
      第三行: us : 用戶空間占用CPU百分比  sy : 系統(tǒng)空間占用CPU百分比  ni : 用戶進(jìn)程空間內(nèi)改變過(guò)優(yōu)先級(jí)的進(jìn)程占用CPU百分比  id : 空閑CPU百分比  wa : 等待IO的CPU百分比  hi : 硬中斷  si : 軟中斷  st : 虛擬機(jī)偷走的百分比
      第四行: Men :內(nèi)存信息行
      第五行: Swap :交換空間信息行
      第六行:  PID : 進(jìn)程號(hào)  USER : 用戶   PR : 優(yōu)先級(jí)  NI : NICE值  VIRT : 虛擬內(nèi)存集  RES : 常駐內(nèi)存  SHR : 共享內(nèi)存 S : 進(jìn)程狀態(tài)   %CPU : 占用CPU百分比  %MEN : 占用內(nèi)存百分比  TIME+ : 運(yùn)行時(shí)間  COMMAND : 命令行

    • top內(nèi)按鍵命令:

      M : 按內(nèi)存占用百分比大小排序
      P :按cpu占用百分比大小排序,默認(rèn)
      T :按累計(jì)占有時(shí)長(zhǎng)進(jìn)行排序
      l : 是否顯示負(fù)載信息
      t :是否顯示cpu和進(jìn)程的統(tǒng)計(jì)信息
      m :是否顯示內(nèi)存和交互分區(qū)的信息
      q :退出
      k :kill,殺掉進(jìn)程
      s :改變top刷新頻率**

  • kill : 向進(jìn)程發(fā)送控制信號(hào),以實(shí)現(xiàn)對(duì)進(jìn)程管理,每個(gè)信號(hào)對(duì)應(yīng)一個(gè)數(shù)字,信號(hào)名稱以SIG開(kāi)頭(可省略),不區(qū)分大小寫

    • 顯示當(dāng)前系統(tǒng)可用信號(hào): kill -l ; trap -l
    • 常用信號(hào): man 7 signal

      1 | SIGHUP: 無(wú)須關(guān)閉進(jìn)程而讓其重讀配置文件
      2 | SIGINT: 中止正在運(yùn)行的進(jìn)程;相當(dāng)于Ctrl+c
      3 | SIGQUIT:相當(dāng)于ctrl+\
      9 | SIGKILL: 強(qiáng)制殺死正在運(yùn)行的進(jìn)程
      15 | SIGTERM:終止正在運(yùn)行的進(jìn)程(默認(rèn))
      18 | SIGCONT:繼續(xù)運(yùn)行
      19 | SIGSTOP:后臺(tái)休眠

    • 指定信號(hào)的方法:
        (1)信號(hào)的數(shù)字標(biāo)識(shí):1, 2, 9
        (2)信號(hào)完整名稱:SIGHUP
        (3)信號(hào)的簡(jiǎn)寫名稱:HUP

    • kill進(jìn)程用法:
      • 按PID:
        kill [-SIGNAL] pid …
        kill –n SIGNAL pid
        kill –s SIGNAL pid
      • 按名稱:
        killall [-SIGNAL] comm…
      • 按模式:
        pkill [options] pattern
        -SIGNAL
        -u uid: effective user,生效者
        -U uid: real user,真正發(fā)起運(yùn)行命令者
        -t terminal: 與指定終端相關(guān)的進(jìn)程
        -l: 顯示進(jìn)程名(pgrep可用)
        -a: 顯示完整格式的進(jìn)程名(pgrep可用)
        -P pid: 顯示指定進(jìn)程的子進(jìn)程
           


  
  

  • I/O監(jiān)控工具:

  • vmstat : 服務(wù)器I/O狀態(tài)

    vmstat [options] [delay [count]] vmstat 1 10 #1秒刷新一次,刷新10次后退出
    • 選項(xiàng):
      -s : 顯示內(nèi)存的統(tǒng)計(jì)數(shù)據(jù)
    • 顯示的信息:

    procs:
    r: 可運(yùn)行(運(yùn)行中或等待運(yùn)行)進(jìn)程的個(gè)數(shù)
    b: 處于不可中斷睡眠態(tài)的進(jìn)程個(gè)數(shù)(被阻塞的隊(duì)列的長(zhǎng)度)
    memory:
    swpd: 交換內(nèi)存的使用總量
    free:空閑物理內(nèi)存總量
    buffer:用于buffer的內(nèi)存總量
    cache:用于cache的內(nèi)存總量
    swap:
    si:從磁盤交換進(jìn)內(nèi)存的數(shù)據(jù)速率(kb/s)
    so:從內(nèi)存交換至磁盤的數(shù)據(jù)速率(kb/s)
    io:
    bi:從塊設(shè)備讀入數(shù)據(jù)到內(nèi)存中的速率(kb/s)
    bo: 保存數(shù)據(jù)至塊設(shè)備的速率
    system:
    in: interrupts 中斷速率,包括時(shí)鐘
    cs: context switch 進(jìn)程切換速率
    cpu:
    us : 用戶CPU時(shí)間,
    sy : 系統(tǒng)CPU時(shí)間,太高表示系統(tǒng)調(diào)用時(shí)間長(zhǎng),例如IO操作頻繁
    id : 空閑的CPU時(shí)間
    wt : 等待IO的時(shí)間
    st : 虛擬機(jī)占用的CPU時(shí)間

  • iotop : 類似top的監(jiān)視IO使用狀況的工具

    • 選項(xiàng):
      -o : 只顯示正在產(chǎn)生IO的進(jìn)程或線程,可以在iotop運(yùn)行中按o生效
      -a : 顯示累計(jì)IO量
      -k : 使用kB為單位
      -P : 僅顯示進(jìn)程,默認(rèn)顯示進(jìn)程和線程
      -n NUM : 設(shè)置監(jiān)測(cè)次數(shù),默認(rèn)無(wú)限次
      -d SEC : 設(shè)置監(jiān)測(cè)間隔,默認(rèn)為1秒
      -p PID : 指定監(jiān)測(cè)的進(jìn)程/線程
      -u USER : 指定監(jiān)測(cè)某個(gè)用戶
      -b : 非交互模式,用于記錄日志
      -t : 加上時(shí)間戳,非交互模式
      -q : 禁止顯示開(kāi)頭幾行,非交互模式
      -q : 只在第一次監(jiān)測(cè)時(shí)顯示列名
      -qq : 永遠(yuǎn)不顯示列名
      -qqq : 永遠(yuǎn)不現(xiàn)實(shí)IO匯總

    • iotop輸出的信息:

    第一行 : Read和Weite的速率總計(jì)
    第二行 : 實(shí)際的速率
    第三行:
      TID : 線程ID(按p切換為進(jìn)程ID)
      PRIO : 優(yōu)先級(jí)
      USER : 用戶
      DISK READ : 磁盤讀速率
       DISK WRITE : 磁盤寫速率
      SWAPIN : swap交換百分比
      IO> : IO等待的百分
      COMMAND : 線程/進(jìn)程命令

  • iostat : 統(tǒng)計(jì)CPU和設(shè)備IOS信息

    iostat 1 10 #1秒刷新一次,刷新10次后退出
  • pmap : 進(jìn)程對(duì)應(yīng)的內(nèi)存映射

    • 用法:pmap [options] pid [...]
    • 選項(xiàng):
      -x: 顯示詳細(xì)格式的信息
      例:pmap 1 #查看進(jìn)程PID為1的進(jìn)程內(nèi)存映射
  • dastat : 系統(tǒng)資源統(tǒng)計(jì),代替vmstat,iostat

    • 用法:dstat [-afv] [options..] [delay [count]]
    • 選項(xiàng):
      -c:顯示CPU系統(tǒng)占用,用戶占用,空閑,等待,中斷,軟件中斷等信息
      -C:當(dāng)有多個(gè)CPU時(shí)候,此參數(shù)可按需分別顯示cpu狀態(tài),例:-C 0,1 顯示cpu0和cpu1的信息
      -d:顯示磁盤讀寫數(shù)據(jù)大小
      -n:顯示網(wǎng)絡(luò)狀態(tài)
      -N eth1:指定要顯示的網(wǎng)卡,有多塊網(wǎng)卡時(shí)以,分隔
      -l:顯示系統(tǒng)負(fù)載情況
      -m:顯示內(nèi)存使用情況
      -g:顯示頁(yè)面使用情況
      -p:顯示進(jìn)程狀態(tài)
      -s:顯示交換分區(qū)使用情況。
      -r:I/O請(qǐng)求情況
      -y:系統(tǒng)狀態(tài)
      --ipc:顯示ipc消息隊(duì)列,信號(hào)等信息
      --socket:用來(lái)顯示tcp udp端口狀態(tài)
      -a:此為默認(rèn)選項(xiàng),等同于-cdngy
      -v:等同于 -pmgdsc -D total
      --output file : 把狀態(tài)信息以csv的格式重定向到指定的文件中,例:dstat --output
      --top-cpu:顯示最占用CPU的進(jìn)程
      --top-io: 顯示最占用io的進(jìn)程
      --top-mem: 顯示最占用內(nèi)存的進(jìn)程
      --top-latency: 顯示延遲最大的進(jìn)程
       

       

  • EPEL源上的監(jiān)控工具:

  • htop : 升級(jí)版的top

  • glances : 監(jiān)控系統(tǒng)資源利用情況

    • glances 會(huì)用一下幾種顏色來(lái)代表狀態(tài):
        綠色:OK(一切正常)
        藍(lán)色:CAREFUL(需要注意)
        紫色:WARNING(警告)
        紅色:CRITICAL(嚴(yán)重)
    • 選項(xiàng):
      -b: 以Byte為單位顯示網(wǎng)卡數(shù)據(jù)速率
      -d: 關(guān)閉磁盤I/O模塊
      -m: 禁用mount模塊
      -n: 禁用網(wǎng)絡(luò)模塊
      -1:每個(gè)CPU的相關(guān)數(shù)據(jù)單獨(dú)顯示
      -t #: 延遲時(shí)間間隔
      -o {HTML|CSV}:輸出格式
      -f /path/to/somefile: 設(shè)定輸入文件位置

    • glances內(nèi)按鍵命令:
      a : 對(duì)進(jìn)程自動(dòng)排序
      c : 按 CPU 百分比對(duì)進(jìn)程排序
      m : 按內(nèi)存百分比對(duì)進(jìn)程排序
      p : 按進(jìn)程名字母順序?qū)M(jìn)程排序
      i : 按讀寫頻率(I/O)對(duì)進(jìn)程排序
      d : 顯示/隱藏磁盤 I/O 統(tǒng)計(jì)信息
      f : 顯示/隱藏文件系統(tǒng)統(tǒng)計(jì)信息
      n : 顯示/隱藏網(wǎng)絡(luò)接口統(tǒng)計(jì)信息
      s : 顯示/隱藏傳感器統(tǒng)計(jì)信息
      y : 顯示/隱藏硬盤溫度統(tǒng)計(jì)信息
      l : 顯示/隱藏日志(log)
      b : 切換網(wǎng)絡(luò) I/O 單位(Bytes/bits)
      w : 刪除警告日志
      x : 刪除警告和嚴(yán)重日志
      1 : 切換全局 CPU 使用情況和每個(gè) CPU 的使用情況
      h : 顯示/隱藏這個(gè)幫助畫面
      t : 以組合形式瀏覽網(wǎng)絡(luò) I/O
      u : 以累計(jì)形式瀏覽網(wǎng)絡(luò) I/O
      q : 退出(‘ESC‘ 和 ‘Ctrl&C‘ 也可以)

    • glances監(jiān)測(cè)遠(yuǎn)程系統(tǒng):
    • 服務(wù)器模式:
      glances -s -B IPADDR
      IPADDR : 指明監(jiān)聽(tīng)本機(jī)哪個(gè)地址(默認(rèn)為所有地址)
    • 客戶端模式:
      glances -c IPADDR
      IPADDR : 要監(jiān)測(cè)的遠(yuǎn)程服務(wù)端地址

轉(zhuǎn)載于:https://blog.51cto.com/bigboss/2051339

總結(jié)

以上是生活随笔為你收集整理的Linux性能相关工具的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。