CPU
Memory
IO
Network
CPU
找出系统中使用CPU最多的进程木马与使用率?
一、uptime命令:
1). 23:42:59 当前时间
2). up 18 min 系统运行时间 ,说明此服务器连续运行18分钟
3). 2 users 当前登录用户数
4). load average: 0.97, 0.31, 0.21 系统负载,即任务队列的平均长度。 三个数值分别为1分钟、5分钟、15分钟前到现在的平均值。
注:
如果在视图界面也就是init 5的情况下,打开终端输入uptime默认当前用户会有2个,因为系统默认使用root用户启动了init 5的视图界面程序。
根据前辈的经验:如果服务器的CPU为1核心,则load average中的数字 >=3 负载过高,如果服务器的CPU为4核心,则load average中的数字 >=12 负载过高。
二、使用top命令
1)运行top , 找出使用CPU最多的进程 ,按大写的P,可以按CPU使用率来排序显示
2)按照实际使用CPU,从大到小排序显示所有进程列表
注:
-pcpu 可以显示出进程绝对路径,方便找出木马程序运行的路径。
(3)运行top ,按1 来显示出CPU核心数。#我这里是八核
三、CPU使用率
我的Linux系统CPU飙到393%?
答:一个CPU核心使用率为100%,两核就是200%…
而我的是八核,所以可以飙到800%。由此可见这很正常!
内存
找出系统中使用内存最多的进程?
一、使用top命令
1)运行top , 然后按下大写的M 可以按内存使用率来排序显示
2)按照实际使用内存,从大到小降序显示所有进程列表(-rss去掉减号‘-’就是升序)
硬盘I/O
通过iostat命令查看哪块硬盘哪个分区是否存在瓶颈?
常用参数:
-d 仅显示磁盘统计信息
-k 以K为单位显示每秒的磁盘请求数,默认单位块.
-p device | ALL 用于显示块设备及系统分区的统计信息.
使用方法:
iostat -d -k -p 设备名称
如:iostat -d -k -p /dev/sdb
案例:
公司有台奇怪的服务器,明明是刚买没多久,运行程序就是卡,看了一下CPU和内存都正常。那这是哪里出现了问题呢?
解决办法:
使用iotop命令,一眼看出到底是哪个进程在对磁盘读写最多...
参数:
-o, -only 只显示在读写硬盘的程序
-d SEC, -delay=SEC 设定显示时间间隔。 刷新时间
退出,按q或ctrl+C
Network
1)安装nethogs工具,查看各个进程的流量情况
2)安装 nload 工具,查看总体流量趋势情况
不积跬步,无以至千里;不积小流,无以成江海。