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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 进程管理工具

發(fā)布時間:2025/5/22 linux 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 进程管理工具 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Linux進程管理命令:
?? ?pstree、ps、top、pidof、htop、glances、pmap、vmstat、dstat、kill、pkill、job、bg、fg、nohup、pgrep、
?? ?
?? ?pstree:display a tree of processes
?? ?ps:report a snapshot of the current processes.
?? ??? ?Linux系統(tǒng)上運行中的各個進程的相關(guān)信息都保存在/proc/PID目錄下的各文件中;
?? ??? ??? ?所以這些狀態(tài)查看工具無非都是通過查看這些目錄下的相關(guān)文件來實現(xiàn)的;
?? ??? ?ps [options…]
?? ??? ??? ?支持兩種風(fēng)格的選項:加"-"和不加"-"
?? ??? ??? ?常用組合:
?? ??? ??? ??? ?u:以用戶為中心組織進程狀態(tài)信息顯示;
?? ??? ??? ??? ?a:與終端相關(guān)的進程;
?? ??? ??? ??? ?x:與終端無關(guān)的進程;
?? ??? ??? ?~]#ps aux
?? ??? ??? ??? ?USER??? PID???????? %CPU???????????? %MEM???????? VSZ????????????????????? RSS??????? TTY?????? STAT??? START?? TIME???????? COMMAND
?? ??? ??? ??? ?屬主???? 進程號? 使用cup時間百分比? 使用內(nèi)存百分比?? 已用虛擬內(nèi)存大小?? 常駐內(nèi)存集?? 終端類型?? 進程狀態(tài)??? 啟動時間? 累計占用CPU的時間?? 由哪個命令?????????????????????????? 啟動的
?? ??? ??? ??? ??? ?VSZ:Virtual memory Size 虛擬內(nèi)存大小,進程在其線性地址空間占用的內(nèi)存大小;
?? ??? ??? ??? ??? ??? ?虛擬/線性內(nèi)存集
?? ??? ??? ??? ??? ?RSS:ReSident Size 常駐內(nèi)存大小;
?? ??? ??? ??? ??? ??? ?常駐內(nèi)存集
?? ??? ??? ??? ??? ??? ?虛擬內(nèi)存集大小一般大于常駐內(nèi)存集大小,除了常駐內(nèi)存集的數(shù)據(jù)剩下的都可以被交換到swap分區(qū)中;
?? ??? ??? ??? ??? ?TTY:通過哪個終端啟動的
?? ??? ??? ??? ??? ??? ??:與終端無關(guān);
?? ??? ??? ??? ??? ?STAT:進程狀態(tài)
?? ??? ??? ??? ??? ??? ?幫助:man ps
?? ??? ??? ??? ??? ??? ?R:running
?? ??? ??? ??? ??? ??? ?S:可中斷的sleeping
?? ??? ??? ??? ??? ??? ?D:不可中斷的sleeping
?? ??? ??? ??? ??? ??? ?T:stopped
?? ??? ??? ??? ??? ??? ?Z:僵死態(tài)
?? ??? ??? ??? ??? ??? ?+:前臺進程
?? ??? ??? ??? ??? ??? ?l:多線程進程
?? ??? ??? ??? ??? ??? ?N:低優(yōu)先級進程
?? ??? ??? ??? ??? ??? ?<:高優(yōu)先級進程
?? ??? ??? ??? ??? ??? ?s:session leader
?? ??? ??? ?~]#ps -ef
?? ??? ??? ??? ?-e:顯示所有進程
?? ??? ??? ??? ?-f:顯示完整格式的程序信息
?? ??? ??? ?~]#ps -ejH
?? ??? ??? ??? ?已進程層級格式顯示進程相關(guān)信息
?? ??? ??? ?~]#ps -eFH
?? ??? ??? ??? ?相對于上一個命令組合顯示更完整的格式的進程信息
?? ??? ??? ?~]#ps -U username
?? ??? ??? ??? ?顯示某用戶的運行的進程
?? ??? ??? ?~]#ps stat,euid,ruid,tty,tpgid,sess,pgrp,ppid,pid,pcpu,comm,…
?? ??? ??? ??? ?顯示指定選項
?? ??? ??? ??? ?pri:優(yōu)先級
?? ??? ??? ??? ?ni:nice
?? ??? ??? ??? ?psr:processor,運行在哪顆CPU上;
?? ?pgrep、pkill:look up or signal processes based on name and other attributes
?? ??? ?pgrep [options] pattern
?? ??? ?pkill [options] pattern
?? ??? ??? ?-u uid:effective? user
?? ??? ??? ?-U uid:real user
?? ??? ??? ?-t terminal:與指定終端相關(guān)的進程
?? ??? ??? ?-l:顯示進程名
?? ??? ??? ?-a:完整格式的進程名
?? ??? ??? ?-P:顯示其父進程為此處指定的進程的進程列表
?? ?pidof:find the process ID of a running program.
?? ??? ?根據(jù)進程名獲取其PID
?? ?top:display Linux processes
?? ??? ?選項:
?? ??? ??? ?-d:指定刷新時間間隔,默認為3s;
?? ??? ??? ?-b:以批次方式顯示,從第一屏刷到最后一屏;
?? ??? ??? ?-n #:顯示多少批次;
?? ??? ?有許多內(nèi)置命令
?? ??? ??? ?排序:
?? ??? ??? ??? ?P:以占據(jù)的CPU百分比排序;
?? ??? ??? ??? ?M:以占用的內(nèi)存百分比排序;
?? ??? ??? ??? ?T:以累計占用CPU時長排序;
?? ??? ??? ?修改刷新時間間隔:s+鍵入秒數(shù);
?? ??? ??? ?中止指定進程:k+進程號;
?? ??? ?信息顯示:
?? ??? ??? ?1:Def - 22:12:23 up 12:38,? 2 users,? load average: 0.00, 0.01, 0.05? =》? uptime
?? ??? ??? ??? ?系統(tǒng)時間??????????? 主機已運行時間? 使用者數(shù)量??????? 負載均衡????????? 一分鐘? 五分鐘? 十五分鐘????????? 使用"l"可以隱藏第一行信息
?? ??? ??? ?Tasks: 100 total,?? 1 running,? 99 sleeping,?? 0 stopped,?? 0 zombie
?? ??? ??? ?進程總數(shù)量???????????????????????????? 運行中的進程??? 睡眠中的進程?????????? 停止的進程???????? 僵死的進程
?? ??? ??? ?%Cpu(s):????????????????? 0.0 us,?????????? 3.1 sy,?? 0.0 ni,? 96.9 id,? 0.0 wa,????????? 0.0 hi,???? 0.0 si,????? 0.0 st
?? ??? ??? ?CPU的使用情況??? 用戶空間程序占據(jù)的百分比?? 內(nèi)核空間?????? nice????????? 空閑的???????? 等待IO完成時間??? 硬件中斷??? 軟件中斷???? 虛擬機竊取的時間???? 使用"1"可以顯示多個cpu
?? ??? ??? ?KiB Mem :? 1867048 total,? 1515904 free,??? 86300 used,?? 264844 buff/cache
?? ??? ??? ? 內(nèi)存使用情況??????? 物理內(nèi)存總大小??????????????? 空閑空間????????????????? 已使用內(nèi)存???????? 已使用的緩沖和緩存占據(jù)的空間
?? ??? ??? ?KiB Swap:? 2097148 total,? 2097148 free,??????? 0 used.? 1550164 avail Mem????? =》free -m
?? ??? ??? ?交換分區(qū)使用情況?? 總空間大小????????? 空間交換空間??????????????? 已使用交換空間????????? 物理內(nèi)存可使用空間?????????????????????????? ?
?? ??? ??? ?1?? PID USER????? PR??? NI??? VIRT???????? RES?????? SHR???????? S????? %CPU???????? %MEM???? TIME+?? COMMAND??????????????????????????????????????????? ?
?? ??? ????????????? 進程號? 屬主????????? 優(yōu)先級???? nice????? 虛擬內(nèi)存集? 常駐內(nèi)存集? 共享內(nèi)存大小? 狀態(tài)?? 占據(jù)CPU百分比? 占據(jù)內(nèi)存百分比? 累計運行時長??????? 啟動命令
?? ??? ?退出:q
?? ?htop:interactive process viewer???? 界面美觀
?? ??? ?安裝htop:
?? ??? ??? ?tar -zxvf htop-1.0.2.tar.gz
?? ??? ??? ?cd htop-1.0.2.tar.gz
?? ??? ??? ?yum groups install Development\ Tools
?? ??? ??? ?yum install ncurses-devel.x86_64
?? ??? ??? ?./configure
?? ??? ??? ?make
?? ??? ??? ?make install
?? ??? ?選項:
?? ??? ??? ?s:跟蹤選定進程的系統(tǒng)調(diào)用;
?? ??? ??? ?l:顯示選定進程打開的文件列表;
?? ??? ??? ?a:將選定進程綁定至某指定cpu核心;
?? ??? ?幫助:man htop、top界面鍵入h
?? ?vmstat:Report virtual memory statistics
?? ??? ?vmstat [options] [delay [count]]
?? ??? ?各字段信息:
?? ??? ??? ?procs:
?? ??? ??? ??? ?r:等待運行的進程數(shù);
?? ??? ??? ??? ?b:處于不可中斷睡眠態(tài)的進程數(shù)(被阻塞的隊列的長度);
?? ??? ??? ?memory:
?? ??? ??? ??? ?swpd:交換內(nèi)存的使用總量;
?? ??? ??? ??? ?free:空間物理內(nèi)存的總量;
?? ??? ??? ??? ?buffer:用于buffer的內(nèi)存總量;
?? ??? ??? ??? ?cache:用于cache的內(nèi)存總量;
?? ??? ??? ?swap:
?? ??? ??? ??? ?si:數(shù)據(jù)從swap到內(nèi)存的速率(Kb/s);
?? ??? ??? ??? ?so:數(shù)據(jù)從內(nèi)存進入swap的速率(Kb/s);
?? ??? ??? ?io:
?? ??? ??? ??? ?bi:從塊設(shè)備讀入數(shù)據(jù)到系統(tǒng)中的速率(Kb/s);
?? ??? ??? ??? ?bo:保存數(shù)據(jù)到塊設(shè)備的速率(Kb/s);
?? ??? ??? ?system:
?? ??? ??? ??? ?in:終端速率(Kb/s);
?? ??? ??? ??? ?cs:進程/上下文切換速率(Kb/s);
?? ??? ??? ?cpu:
?? ??? ??? ??? ?us:用戶空間占據(jù)CPU的時間比例;
?? ??? ??? ??? ?sy:內(nèi)核空間占據(jù)CPU的時間比例;
?? ??? ??? ??? ?id:空閑時間比例;
?? ??? ??? ??? ?wa:等待IO完成所需要的時間比例;
?? ??? ??? ??? ?st:被vm竊取的時間比例
?? ??? ?選項:
?? ??? ??? ?-s:顯示內(nèi)存的統(tǒng)計數(shù)據(jù)信息;
?? ?pmap:report memory map of a process
?? ??? ?pmap [options] pid [...]? =》cat /proc/PID/maps
?? ??? ?選項:
?? ??? ??? ?-x:以擴展格式顯示;
?? ?glances:
?? ??? ?幫助:man glances
?? ??? ??? ?可以查看內(nèi)建命令;
?? ??? ?常用選項:
?? ??? ??? ?-b:以Byte為單位顯示網(wǎng)卡數(shù)據(jù)速率;
?? ??? ??? ?-d:關(guān)閉磁盤IO模塊;
?? ??? ??? ?-f /path/to/somefile:設(shè)定輸入文件位置;
?? ??? ??? ?-o {HTML|CSV}:輸出格式;
?? ??? ??? ?-m:禁用mount模塊;
?? ??? ??? ?-n:禁用網(wǎng)路模塊;
?? ??? ??? ?-t # :延遲時間間隔;
?? ??? ??? ?-1:每個cpu的相關(guān)數(shù)據(jù)單獨顯示;
?? ??? ?C/S模式下運行g(shù)lances命令:
?? ??? ??? ?服務(wù)模式:
?? ??? ??? ??? ?glances -s -B IPADDR(指明監(jiān)聽于本機的哪個地址)
?? ??? ??? ?客戶端模式:
?? ??? ??? ??? ?glances -c IPADDR(指明服務(wù)器端的地址)
?? ?dstat:versatile tool for generating system resource statistics
?? ??? ?選項:
?? ??? ??? ?-c:顯示CPU相關(guān)信息;
?? ??? ??? ??? ?-C #,#,…,total
?? ??? ??? ?-d:顯示disk相關(guān)信息;
?? ??? ??? ??? ?-D total,sda[#],sdb[#],…
?? ??? ??? ?-g:顯示page相關(guān)統(tǒng)計信息;
?? ??? ??? ?-m:顯示memory相關(guān)統(tǒng)計信息;
?? ??? ??? ?-n:顯示network相關(guān)統(tǒng)計信息;
?? ??? ??? ?-p:顯示process相關(guān)統(tǒng)計信息;
?? ??? ??? ?-r:顯示io請求的相關(guān)統(tǒng)計信息;
?? ??? ??? ?-s:顯示swapped的相關(guān)統(tǒng)計信息;
?? ??? ??? ?
?? ??? ??? ?--tcp:顯示tcp相關(guān)統(tǒng)計信息;
?? ??? ??? ?--udp:顯示udp相關(guān)統(tǒng)計信息;
?? ??? ??? ?--unix:
?? ??? ??? ?--raw:
?? ??? ??? ?--socket:
?? ??? ??? ?--icp:
?? ??? ??? ?
?? ??? ??? ?--top-cpu:顯示最占用CPU的進程;
?? ??? ??? ?--top-mem:顯示最占用內(nèi)存的進程;
?? ??? ??? ?--top-io:顯示最占用io的進程;
?? ??? ??? ?--tcp-lantency:顯示延遲最大的進程;
?? ?kill:terminate a process
?? ??? ?向進程發(fā)送控制信號,以實現(xiàn)對進程的控制;
?? ??? ?顯示當前系統(tǒng)可用進程:
?? ??? ??? ?man 7 signal
?? ??? ??? ?kill -l
?? ??? ??? ?常用信號:
?? ??? ??? ??? ?1)SIGHUP:無需關(guān)閉進程而讓其重讀配置文件;
?? ??? ??? ??? ?2)SIGINT:終止正在進行的進程,相當于Ctrl+c;
?? ??? ??? ??? ?9)SIGKILL:殺死正在運行的進程;
?? ??? ??? ??? ?15)SIGTERM:終止正在進行的進程;
?? ??? ??? ?指定信號的方法:
?? ??? ??? ??? ?信號的數(shù)字標識:1,2,9,…
?? ??? ??? ??? ?信號完整名稱:SIGHUP,SIGINT,SIGKILL,…
?? ??? ??? ??? ?信號的簡寫名稱:HUP,INT,KILL,…
?? ??? ??? ?向進程發(fā)信號:
?? ??? ??? ??? ?kill [-SIGNAL] PID...
?? ??? ??? ?終止名稱之下的所有進程:
?? ??? ??? ??? ?killall [-SIGNAL] Program
?? ?
?? ?Linux的作業(yè)控制:
?? ??? ?前臺作業(yè):通過終端啟動,且啟動后一直占據(jù)終端;
?? ??? ?后臺作業(yè):可以通過終端啟動,但啟動后即轉(zhuǎn)入后臺運行(釋放終端);
?? ??? ?如何讓作業(yè)運行于后臺?
?? ??? ??? ?運行中的作業(yè)
?? ??? ??? ??? ?Ctrl+z:停止
?? ??? ??? ?尚未啟動的作業(yè)
?? ??? ??? ??? ?# COMMAND &
?? ??? ??? ??? ??? ?雖然這樣作業(yè)被送往后臺而釋放了終端(前端),但是依然與終端相關(guān);
?? ??? ??? ??? ??? ?如果希望送往后臺后,剝離與終端的關(guān)系可使用:nohup COMMAND &
?? ??? ?查看所有作業(yè)情況:
?? ??? ??? ?jobs
?? ??? ?作業(yè)控制:
?? ??? ??? ?fg [[%]JOB_NUM]:將指定的后臺作業(yè)調(diào)回前臺;
?? ??? ??? ?bg [[%]JOB_NUM]:讓送往后臺的處于停止狀態(tài)的進程繼續(xù)運行;
?? ??? ??? ?kill [%JOB_NUM]:殺死指定作業(yè)號的進程;
?? ?進程優(yōu)先級調(diào)整:
?? ??? ?進程默認啟動時的nice為0,優(yōu)先級為120;
?? ??? ?nice:run a program with modified scheduling priority
?? ??? ??? ?對啟動時的進程的優(yōu)先級進程調(diào)整;
?? ??? ??? ?nice -n 5 htop
?? ??? ?renice:alter priority of running processes
?? ??? ??? ?renice -n 2 pid
?? ??? ??? ?對啟動后的進程的優(yōu)先級進程調(diào)整;
?? ??? ?在生產(chǎn)環(huán)境中,如果某一進程占用cpu過多,內(nèi)核會根據(jù)情況自動降低其優(yōu)先級;
?? ??? ??? ?

注:根據(jù)馬哥視頻做的學(xué)習(xí)筆記,如有錯誤,歡迎指正;侵刪

?

轉(zhuǎn)載于:https://www.cnblogs.com/guowei-Linux/p/9787325.html

總結(jié)

以上是生活随笔為你收集整理的Linux 进程管理工具的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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