Linux運維基礎進程管理實時監(jiān)控控制
發(fā)布日期:2021-12-11 11:03 | 文章來源:gibhub
1.后臺運行作業(yè)
1.sleep 999 & (運行作業(yè)) [root@localhost ~]# sleep 999 & [1] 3670 2.ps -ef|grep sleep(查看進程) [root@localhost ~]# ps -ef|grep sleep root 3670 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3671 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3672 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3673 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3674 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3675 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3676 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3677 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3678 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3686 950 0 10:54 ? 00:00:00 sleep 60 3.fg(調最后一個) [root@localhost ~]# fg sleep 999 4.jobs(查看任務) [root@localhost ~]# jobs [1] sleep 999 & [3] sleep 999 & [4] sleep 999 & [6]- sleep 999 & [7]+ sleep 999 ctr1+z(Done)完成 5.說明 fg %N (調指定的任務) stopped(停滯狀態(tài)) bg %3 (運行狀態(tài)) +(默認操作的) -(第二個操作的)
2.使用信號控制進程
基本進程管理信號
信號編號ID | 短名稱 | 定義名 | 用途 |
---|---|---|---|
1 | HUP | 掛起 | 讓一個進程不用重啟就可以重讀配置文件,并讓新的配置信息生效 |
2 | INT | 鍵盤中斷 | 中斷一個前臺進程。ctrl+c就是用的SIGINT信號 |
9 | KILL | 中斷,無法攔截 | 導致立即終止程序。無法被攔截、忽略或處理 |
15默認值 | TERM | 終止 | 導致程序終止。和SIGKILL不同,可以被攔截、忽略或處理。要求程序終止的友好方式,允許自我清理 |
kill命令根據(jù)ID向進程發(fā)送信號。雖其名稱為kill,但該命令可用于發(fā)送任何信號,而不僅僅是終止程序的信號
1.查看進程 [root@localhost ~]# ps -ef|grep sleep root 3670 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3672 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3673 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3675 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3676 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3901 950 0 10:59 ? 00:00:00 sleep 60 root 3904 3642 0 10:59 pts/1 00:00:00 grep --color=auto sleep 2.刪除指定任務 [root@localhost ~]# kill %1 [root@localhost ~]# ps -ef|grep sleep root 3672 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3673 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3675 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3676 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3901 950 0 10:59 ? 00:00:00 sleep 60 root 3906 3642 0 11:00 pts/1 00:00:00 grep --color=auto sleep [1] sleep 999 3.kill -l(列出所有可以支持的程序) [root@localhost ~]# kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8 43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7 58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX [root@localhost ~]# 4. kill 3672(刪除進程) 查看進程 [root@localhost ~]# ps -ef|grep sleep root 3672 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3673 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3675 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3676 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3925 950 0 11:00 ? 00:00:00 sleep 60 root 4039 3642 0 11:00 pts/1 00:00:00 grep --color=auto sleep [root@localhost ~]# kill 3672 [root@localhost ~]# ps -ef|grep sleep root 3673 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3675 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3676 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3925 950 0 11:00 ? 00:00:00 sleep 60 root 4054 3642 0 11:01 pts/1 00:00:00 grep --color=auto sleep [3] sleep 99 5.killall sleep(刪除所有sleep) 查看進程:[root@localhost ~]# ps -ef|grep sleep root 3673 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3675 3642 0 10:54 pts/1 00:00:00 sleep 999 root 3676 3642 0 10:54 pts/1 00:00:00 sleep 999 root 4164 950 0 11:01 ? 00:00:00 sleep 60 root 4174 3642 0 11:01 pts/1 00:00:00 grep --color=auto sleep 成功刪除[root@localhost ~]# ps -ef|grep sleep root 4185 3642 0 11:02 pts/1 00:00:00 grep --color=auto sleep
3.監(jiān)控進程活動
IO負載
負載數(shù)屬于全局計數(shù)器計算,是所有CPU的總和數(shù)。
由于從睡眠返回的任務可能會重新調度到不同的CPU,難以精確的每CPU計數(shù),但累計數(shù)的準確度可以保障。
顯示的平均負載代表所有的CPU。
顯示負載值,實施監(jiān)控
[root@localhost ~]# top
1.查看負載 [root@localhost ~]# uptime 11:12:36 up 45 min, 2 users, load average: 0.06, 0.01, 0.20 2.顯示負載值,實施監(jiān)控 [root@localhost ~]# top top - 11:15:03 up 47 min, 2 users, load average: 0.00, 0.00, 0.16 Tasks: 328 total, 1 running, 327 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.0 us, 0.7 sy, 0.0 ni, 99.0 id, 0.0 wa, 0.3 hi, 0.0 si, 0.0 st MiB Mem : 804.8 total, 67.5 free, 474.7 used, 262.5 buff/cache MiB Swap: 2048.0 total, 1427.5 free, 620.5 used. 196.8 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3884 root 20 0 0 0 0 I 0.3 0.0 0:00.57 kworker+ 4404 root 20 0 64856 4880 4008 R 0.3 0.6 0:00.17 top 1 root 20 0 245372 7252 4356 S 0.0 0.9 0:03.43 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp 4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par+ 6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker+ 8 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 mm_perc+ 9 root 20 0 0 0 0 S 0.0 0.0 0:00.24 ksoftir+ 10 root 20 0 0 0 0 I 0.0 0.0 0:00.35 rcu_sch+ 11 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migrati+ 12 root rt 0 0 0 0 S 0.0 0.0 0:00.00 watchdo+ 13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cpuhp/0 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmp+ 16 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 netns 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kauditd 18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khungta+ 說明按m t l [root@localhost ~]# top 不顯示 按1 顯示cpu信息
4.實時進程監(jiān)控
top用于實現(xiàn)全屏動態(tài)顯示系統(tǒng)信息
//top命令交互式子命令: M //根據(jù)駐留內存大小進行排序,默認根據(jù)CPU百分比排序 P //根據(jù)CPU使用百分比進行排序 T //根據(jù)累計時間(占據(jù)CPU時長)進行排序 l //是否顯示平均負載和啟動時間 t //是否顯示進程和CPU狀態(tài)相關信息 m //是否顯示內存相關信息 c //是否顯示完整的命令行信息 q //退出top命令 k //終止某個進程 1 //顯示所有CPU的信息 s //修改刷新時間間隔 us //表示用戶空間; sy //表示內核空間; ni //表示調整nice值,CPU占用的比率; id //表示空閑百分比; wa //表示等待IO完成所占據(jù)的時間百分比; hi //表示hard interrupt,硬件中斷占據(jù)的時間百分比; si //表示軟中斷占據(jù)的時間百分比; st //表示steal,被虛擬化技術偷走的時間(比如運行虛擬機) PR //優(yōu)先級 NI //nice值 VIRT //虛擬內存集 RES //常駐內存集 SHR //共享內存大小 S //進程狀態(tài)
以上就是Linux運維基礎進程管理實時監(jiān)控控制的詳細內容,更多關于Linux運維進程的資料請關注本站其它相關文章!
版權聲明:本站文章來源標注為YINGSOO的內容版權均為本站所有,歡迎引用、轉載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務器上建立鏡像,否則將依法追究法律責任。本站部分內容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內容涉嫌侵權,請聯(lián)系alex-e#qq.com處理。
相關文章