我并不擅长使用Linux,但是我确实喜欢有限的曝光。 我们使用一个虚拟化的红帽服务器来进行软件开发,我要做的事情之一是检查谁在占用CPU,看看我们怎样才能避免这种情况。 我可以很容易地解释用户和进程,但是如果系统列使用(比方说)50.8%的CPU,我怎么能找出它在做什么,并尽量减less它? 我收集的都是内核内核,但似乎至less有20%,而且通常更高。 这是一个示例输出:
245 processes: 232 sleeping, 8 running, 4 zombie, 1 stopped CPU states: cpu user nice system irq softirq iowait idle total 47.9% 0.0% 50.8% 0.3% 0.7% 0.0% 0.0% cpu00 68.9% 0.0% 29.2% 0.3% 1.3% 0.0% 0.0% cpu01 26.8% 0.0% 72.5% 0.3% 0.1% 0.0% 0.0% Mem: 3816924k av, 3795652k used, 21272k free, 0k shrd, 266548k buff 2836408k actv, 541432k in_d, 58992k in_c Swap: 2097136k av, 0k used, 2097136k free 3080380k PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME CPU COMMAND 23447 romanmur 25 0 6896 6896 356 R 33.4 0.1 0:09 1 bzip2 23961 tomjose 25 0 1076 1076 960 S 5.4 0.0 0:00 1 make_headers. 23887 paulhewl 25 0 3996 3996 348 R 4.4 0.1 0:00 0 bzip2 3902 romanmur 15 0 4112 4108 1628 S 2.1 0.1 0:23 0 smbd 23446 romanmur 15 0 708 708 616 S 0.5 0.0 0:00 1 tar 24541 damianwy 24 0 1776 1776 960 S 0.4 0.0 0:00 0 sh 24493 root 24 -1 1372 1372 1100 R < 0.3 0.0 0:00 1 X 1771 root 15 0 1108 1108 496 S 0.2 0.0 14:26 1 cmaperfd 23262 root 15 0 1308 1308 884 R 0.2 0.0 0:03 1 top 15209 paulhewl 15 0 488 488 428 S 0.2 0.0 0:00 1 tee 2719 richardp 15 0 6108 6104 2108 S 0.1 0.1 1:02 0 smbd 23857 paulhewl 22 0 1900 1900 652 S 0.1 0.0 0:00 1 make 23886 paulhewl 19 0 712 712 624 S 0.1 0.0 0:00 0 tar 24431 root 23 0 1052 1052 936 S 0.1 0.0 0:00 1 startx 24521 paulhewl 24 0 1056 1056 896 S 0.1 0.0 0:00 1 sh 24523 paulhewl 25 0 416 416 344 R 0.1 0.0 0:00 1 mips-linux-gc
谢谢!
我同情困境。
top是美好的,但也有点棘手的理解,主要是因为一个系统是如此复杂。 例如,如果你有一个双核心的CPU,那么对于一个命令而言,CPU在100%上运行并不是一个实际的问题 – 它只是意味着一个命令完全使用一个核心,而另一个核心应该能够接pipe立即服务其他命令。
对于系统负载(一目了然)来说,一个好的起始位置是从system load averages for the past 1, 5, and 15 minutes的w man手册页system load averages for the past 1, 5, and 15 minutes的右边的最上面的三个数字(如果您的顶部没有显示这个数字,请键入w ) system load averages for the past 1, 5, and 15 minutes (同样适用于top )。 基本上,系统可以在队列中处理下一个命令之前需要多长时间…… 1.01秒,3.26秒等等。首先,我会比其他细节更注重这些值告诉你你的系统忙或不忙。
上面的输出显示, bzip2是拍摄快照时CPU的最高用户。
我build议进一步阅读解释系统的IO,RAM和CPU监视工具。
这里有一些起点希望缓解狩猎: 顶部列 , SysStat和其他工具,并更有效地使用顶部 。