linux 系統效能管理工具
top
top命令可實時地顯示Linux系統的程式、CPU、記憶體、負載等的資訊。它是我們瞭解系統整體狀態最好的工具。
top - 10:06:09 up 31 days, 2:14, 1 user, load average: 0.00, 0.00, 0.00 Tasks: 47 total, 1 running, 46 sleeping, 0 stopped, 0 zombie Cpu0 : 0.0% us, 0.0% sy, 0.0% ni, 100.0% id, 0.0% wa, 0.0% hi, 0.0% si Cpu1 : 0.3% us, 0.0% sy, 0.0% ni, 99.7% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 1034732k total, 472336k used, 562396k free, 16460k buffers Swap: 1052248k total, 0k used, 1052248k free, 357940k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 16 0 1504 480 1352 S 0.0 0.0 0:00.59 init 2 root RT 0 0 0 0 S 0.0 0.0 0:00.06 migration/0 3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 4 root RT 0 0 0 0 S 0.0 0.0 0:00.04 migration/1 5 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/1 6 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 events/0 7 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 events/1 8 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 khelper 9 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 kblockd/0 10 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 kblockd/1 11 root 17 0 0 0 0 S 0.0 0.0 0:00.00 khubd 38 root 15 0 0 0 0 S 0.0 0.0 0:00.00 pdflush 37 root 15 0 0 0 0 S 0.0 0.0 0:00.00 kirqd 41 root 6 -10 0 0 0 S 0.0 0.0 0:00.00 aio/0 40 root 16 0 0 0 0 S 0.0 0.0 0:00.00 kswapd0 42 root 5 -10 0 0 0 S 0.0 0.0 0:00.00 aio/1
top命令的執行狀態是一個實時的顯示過程,我們可在這個介面監控系統執行情況。我們可透過幾個按鍵來控制top命令,如按q可退出top命令狀態,按s可輸入資訊的更新頻率等。這些命令可按h幫助鍵查詢。如:
Help for Interactive Commands - procps version 3.2.1 Window 1:Def: Cumulative mode Off. System: Delay 3.0 secs; Secure mode Off. Z,B Global: 'Z' change color mappings; 'B' disable/enable bold l,t,m Toggle Summaries: 'l' load avg; 't' task/cpu stats; 'm' mem info 1,I Toggle SMP view: '1' single/separate states; 'I' Irix/Solaris mode f,o . Fields/Columns: 'f' add or remove; 'o' change display order F or O . Select sort field . Move sort field: '' next col right R . Toggle normal/reverse sort c,i,S . Toggle: 'c' cmd name/line; 'i' idle tasks; 'S' cumulative time x,y . Toggle highlights: 'x' sort field; 'y' running tasks z,b . Toggle: 'z' color/mono; 'b' bold/reverse (only if 'x' or 'y') u . Show specific user only n or # . Set maximum tasks displayed k,r Manipulate tasks: 'k' kill; 'r' renice d or s Set update interval W Write configuration file q Quit ( commands shown with '.' require a visible task display window ) Press 'h' or '?' for help with Windows, any other key to continue
ps
ps命令可查詢系統的程式狀態,常用的命令引數是ps -aux,該命令可顯示所有使用者的程式,如果程式的命令太長,則顯示的程式資訊會不全。我們可用ps -auxw命令來加長顯示,w引數可多加幾個,最多可加三個,以顯示更長的程式資訊。
debian:~# ps -aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 1416 448 ? S May24 0:06 init [3] root 2 0.0 0.0 0 0 ? SW May24 0:00 [keventd] root 3 0.0 0.0 0 0 ? SW May24 0:00 [keventd] root 4 0.0 0.0 0 0 ? SW May24 0:00 [keventd] root 5 0.0 0.0 0 0 ? SW May24 0:00 [keventd] root 6 0.0 0.0 0 0 ? SWN May24 0:11 [ksoftirqd_CPU0] root 7 0.0 0.0 0 0 ? SWN May24 0:11 [ksoftirqd_CPU1] root 8 0.0 0.0 0 0 ? SWN May24 0:10 [ksoftirqd_CPU2] root 9 0.0 0.0 0 0 ? SWN May24 0:10 [ksoftirqd_CPU3] root 10 0.0 0.0 0 0 ? SW May24 17:29 [kswapd] root 11 0.0 0.0 0 0 ? SW May24 0:00 [kreclaimd] root 12 0.0 0.0 0 0 ? SW May24 15:47 [bdflush] root 13 0.0 0.0 0 0 ? SW May24 0:00 [kupdated] root 14 0.0 0.0 0 0 ? SW May24 0:00 [mdrecoveryd] root 21 0.0 0.0 0 0 ? SW May24 0:00 [scsi_eh_2] root 24 0.0 0.0 0 0 ? SW May24 0:47 [kjournald] root 84 0.0 0.0 0 0 ? SW May24 0:00 [khubd] root 177 0.0 0.0 0 0 ? SW May24 0:59 [kjournald] root 178 0.0 0.0 0 0 ? SW May24 0:00 [kjournald] root 514 0.0 0.0 1476 600 ? S May24 0:06 syslogd -m 0
ps命令的引數有以下幾個:
-a 顯示所有終端下所執行的程式 a 顯示在當前終端下所執行的程式 -A 顯示所有的程式,包含所有的服務 -f 顯示UID,PPIP,C,STIME欄位 -H 以樹狀格式顯示,可表達程式間的相互關係 S 列出包含已死亡的子程式資訊 u 以使用者為單位列出程式資訊 v 顯示程式的虛擬記憶體資訊 V 顯示ps的版本資訊 x 顯示所有程式
kill
kill命令可終止程式,後接程式號即可。如我們可用上面的ps命令查出你想終止的程式的程式號為299,用kill 299則可把該程式終止。
free
free可顯示系統的記憶體使用情況。-b、-k、-m三個參數列示以bytes,kilobytes和megabytes為單位顯示記憶體的使用情況。
debian:~# free -m total used free shared buffers cached Mem: 2010 2005 5 456 146 1150 -/+ buffers/cache: 708 1301 Swap: 2000 127 1872
vmstat
使用vmstat 2 命令可每隔2秒顯示一行系統資訊,這些資訊包括CPU佔用效、記憶體使用情況和磁碟IO等。透過它我們可實時監控系統的資源使用情況,進行系統最佳化。
debian:~# vmstat 2 procs memory swap io system cpu r b w swpd free buff cache si so bi bo in cs us sy id 0 0 0 130804 6000 149744 1179340 0 0 0 1 1 2 0 0 2 0 0 0 130804 6000 149744 1179396 0 0 28 162 266 387 0 0 100 0 0 0 130804 6000 149744 1179472 0 0 30 110 222 280 0 0 99 1 0 0 130804 6000 149744 1179516 0 0 22 122 235 306 9 2 89 0 0 0 130804 6000 149748 1179580 0 0 24 148 373 469 10 1 90 1 0 0 130804 6000 149748 1179628 0 0 24 90 271 356 13 1 85 1 0 0 130804 6000 149748 1179700 0 0 28 118 263 322 23 2 76 0 0 0 130804 6000 149748 1179760 0 0 30 148 279 409 14 1 85
sar
sar工具可幫我們收集動態的系統資訊,它的引數很豐富,功能強大。sar工具的特點是可透過計數器和計數間隔來定期、定量地輸出系統狀態資訊。如:
debian:~# sar -b 2 10 09時47分48 tps rtps wtps bread/s bwrtn/s 09時47分50 23.50 3.50 20.00 28.00 176.00 09時47分52 47.50 6.50 41.00 52.00 424.00 09時47分54 28.50 4.50 24.00 36.00 204.00 09時47分56 52.00 9.50 42.50 76.00 352.00 09時47分58 30.50 5.00 25.50 40.00 216.00 09時48分00 28.50 4.50 24.00 36.00 204.00 09時48分02 32.00 3.50 28.50 28.00 412.00 09時48分04 46.00 5.50 40.50 44.00 388.00 09時48分06 26.00 5.00 21.00 40.00 196.00 09時48分06 tps rtps wtps bread/s bwrtn/s 09時48分08 35.00 5.00 30.00 40.00 264.00 Average: 34.95 5.25 29.70 42.00 283.60
上面的命令表示隔2秒輸出一條磁碟I/O資訊,共輸出10條。-b表示輸出磁碟I/O資訊,如果是-B則可輸出paging資訊,引數還很多,請用man sar檢視。
watch
watch命令可重複執行某個命令,監控命令的執行狀態。下面這個命令可讓我們監控Z2.log檔案的大小變化。
debian:~# watch -n 3 du /home/Jims/zope/log/Z2.log
-n 3表示每隔3秒執行一次du /home/Jims/zope/log/Z2.log。
sysctl
使用sysctl -a可顯示所有執行中的核心引數,用sysctl -w fs.file-max=10240 命令可修改fs.file-max核心引數的值,並使引數馬上生效。但重啟系統後,引數設定會失效,因為命令列只能修改執行中的核心引數。如果我們要把引數設定固定下來,可把核心引數寫入/etc/sysctl.conf檔案。該檔案的格式如下:
# /etc/sysctl.conf - Configuration file for setting system variables # See sysctl.conf (5) for information. # Controls IP packet forwarding net.ipv4.ip_forward = 0 # Controls source route verification net.ipv4.conf.default.rp_filter = 1 # Controls the System Request debugging functionality of the kernel kernel.sysrq = 0 # Controls whether core dumps will append the PID to the core filename. # Useful for debugging multi-threaded applications. kernel.core_uses_pid = 1
ulimit
使用ulimit -a可顯示系統的資源限制情況。
netstat
netstat -nal可顯示所有的網路連線。
pppstats
使用pppstats可得到ppp連線的狀態資訊。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9099175/viewspace-915524/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Linux系統效能調優之效能分析Linux
- Linux新核心:提升系統效能Linux
- LINUX系統效能調諧 (zt)Linux
- LINUX系統效能調諧(轉)Linux
- Linux系統效能調優技巧Linux
- Linux 常用系統效能監控命令Linux
- linux系統檢視系統資源分析效能情況Linux
- Linux中監控系統效能常用的命令!Linux
- Linux系統效能測試指令碼(unixbenchnmon)Linux指令碼
- Linux系統效能監控採集項Linux
- Linux 效能優化之 IO 子系統Linux優化
- 如何更新 Linux 核心來提升系統效能Linux
- (3)Linux效能調優之Linux檔案系統Linux
- linux系統網橋管理工具brctl 安裝及使用Linux
- 介紹幾款有用的linux系統管理工具 (轉)Linux
- vmstat檢視分析Linux系統負載效能Linux負載
- (轉)使用 Nmon 監控 Linux 的系統效能Linux
- Linux下使用NMON監控、分析系統效能Linux
- 用sysctl進行調整Linux系統效能Linux
- 在Linux中,如何監控系統的效能?Linux
- 在Linux中,如何理解系統管理工具,如Webmin和Ajenti。LinuxWeb
- Linux 基礎教程 36-檢視系統效能Linux
- Linux系統PHP效能最佳化詳細教程。LinuxPHP
- Linux系統Memcached效能最佳化詳細教程。Linux
- Linux系統Redis效能最佳化詳細教程。LinuxRedis
- UNIX和linux系統效能監控工具oswatcherLinux
- 使用vmstat標識linux系統的效能瓶頸Linux
- Linux日誌檔案系統及效能分析(轉)Linux
- 在Linux中,如何進行系統效能調優?Linux
- 在Linux中,如何進行系統效能監控?Linux
- Linux系統下分析記憶體使用情況的管理工具Linux記憶體
- Sysstat 11.1.4/11.0.4 釋出,Linux 系統管理工具包Linux
- linux系統效能調優第一步——效能分析(vmstat) (轉載)Linux
- Linux作業系統效能指標監控與通知Linux作業系統指標
- linux系統中配置hugepage,提升oracle資料庫效能LinuxOracle資料庫
- 一張圖記住常用Linux系統效能診斷工具Linux
- 提高Linux系統效能加速網路應用程式(轉)Linux
- 在Linux中,如何進行系統效能瓶頸分析?Linux