1、top命令的第一行“top - 11:35:24 up 47 days, 12:16, 4 users, load average: 0.14, 0.12, 0.13” 显示的内容依次为
系统当前时间
系统到目前为止已运行的时间
当前登录系统的用户数量
系统负载(任务队列的平均长度)三个值分别为1分钟、5分钟、15分钟前到现在的平均值【这三个一般会小于1,如果持续高于5,请仔细查看那个程序影响系统的运行】
扩展:
查看当前登陆用户: who
查看可疑IP登陆: last -f /var/log/wtmp
寻找可疑ip登陆次数及信息: cat /var/log/secure
找出通过 tcp 和 udp 连接服务器的 IP 地址列表:
netstat -ntu (
这是所有与服务器连接的外部 IP 信息列表 , 可以看到第五列是所有的外部 IP 信息 ;)
使用
grep
将tcp
过滤出来 : netstat -ntu | grep tcp (也可以使用egrep
过滤多个条件# netstat -ntu | egrep 'tcp|udp'
)使用 awk 将第五列单独截出来 : netstat -ntu | grep tcp | awk '{print $5}'
使用 cut 将列信息以
:
为分隔符再分成不同的列 , 显示第一个 field : netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1使用 sort 默认字符顺序将字段值排序 : netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort
使用 uniq 将已经排序好的字段计算不同值的数目(
uniq -c
根据相近的值计算和 , 因此之前需要排序好) : netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c使用 sort -nr 数字降序方式再排一下结果(使用
sort -n
, 可以按照数字升序排) : netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr使用 head 或 tail 取头部几行或尾部几行 : netstat -ntu | grep tcp | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head -2
2、top命令的第二行“Tasks: 184 total, 1 running, 183 sleeping, 0 stopped, 0 zombie” 显示的内容依次
所有启动的进程数
正在运行的进程数
挂起的进程数
停止的进程数
僵尸进程数
3、top命令的第三行“Cpu(s): 1.4 us, 0.6 sy, 0.0 ni, 97.9 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st 显示的内容依次为
us — (user)用户空间占用CPU百分比
sy —(system)内核空间占用CPU百分比
ni — (niced)用户空间内改变过优先级的进程占用CPU百分比
空闲CPU百分比
wa — (IO wait)等待输入输出CPU时间百分比
hi — 硬中断(Hardware IRQ)CPU服务于硬件中断所耗费的时间总额
si — 软中断(Software Interrupts)CPU服务软中断所耗费的时间总额
Steal Time
4、top命令第四行“KiB Mem: 508820k total, 480172k used, 28648k free, 41944k buffers”显示内容依次为
物理内存总量
已使用的物理内存
空闲物理内存
内核缓存内存量。
5、top命令第5行“Swap: 392184k total, 0k used, 392184k free, 259152k cached”显示内容依次为
total — 物理内存总量/交换区总量
used — 使用中的内存总量/已使用交互区总量
free — 空闲内存总量/空闲交换区总量
buffers — 缓存的内存量/缓冲的交换区总量。
6、top命令第5行“PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND ”显示内容依次为
PID:进程ID
USER:进程所有者
PR:优先级
NI:nice值,负值表示高优先级,正值表示低优先级
VIRT:进程使用的虚拟内存总量
RES:进程使用的、未被换出的物理内存大小
SHR:共享内存大小
S:进程状态,D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU 上次更新到现在的CPU时间占用百分比
%MEM:进程使用的物理内存百分比
TIME+:进程使用CPU总时间/ 进程使用的CPU时间总计,单位1/100秒
COMMAND:进程名称(命令名/命令行)