首页 > 代码库 > 系统负载命令

系统负载命令

[root@awen ~]# w
09:10:14 up 21 min, 1 user, load average: 0.00, 0.01, 0.03
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.252.222 08:50 0.00s 0.12s 0.05s w
时间 系统运行时间 登录用户数 平均负载
当前登录有哪些用户 从哪里登录
load average
第一个数值表示1分钟内系统的平均负载
第二个数值表示5分钟内系统的平均负载
第三个数值表示15分钟内系统平均负载
-------------------------------------------------------------------------------------------------------
cat/proc/cpuinfo查看几核
grep -c ‘processor‘ /proc/cpuinfo 查看有几个CPU
----------------------------------------------------------------------------------------------------
[root@awen ~]# vmstat 1
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 880792 7000 41584 0 0 27 1 25 15 0 0 99 0 0
0 0 0 880776 7008 41580 0 0 0 12 34 24 0 0 96 4 0
0 0 0 880776 7008 41584 0 0 0 0 18 7 0 0 100 0 0
0 0 0 880776 7008 41584 0 0 0 0 26 11 0 0 100 0 0
0 0 0 880776 7008 41584 0 0 0 0 25 12 0 0 100 0 0
0 0 0 880776 7008 41584 0 0 0 0 20 9 0 0 100 0 0
 
pros 进程相关
r表示运行和等待CPU时间片的进程数
b表示等待资源的进程数
 
memory 内存相关
swpd 切换到交换分区的进程数量
free当前空闲的内存数量
buff缓冲大小
cache缓存大小
 
swap内存交换情况
si由交换区写入内存的数量
so由内存写入交换区的数量
 
io磁盘使用情况
bi从快设备读取数据的量
bo从快设备写入数据的量
 
system显示采集间隔内中断的次数
in表示在某一时间间隔中观测到的每秒设备中断数
cs表示每秒产生的上下文切换次数
 
CPU显示cpu的使用状态
us显示了用户下所花费cpu时间的百分比
sy显示系统花费cpu时间百分比
id表示cpu处于空闲状态的百分比
wa表示I/O等待所占用cpu时间百分比
st表示被偷走的cpu所占百分比
----------------------------------------------------------------------------------------------
top - 09:43:55 up 54 min, 1 user, load average: 0.00, 0.01, 0.03
Tasks: 74 total, 1 running, 73 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.3%us, 0.0%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1020076k total, 139532k used, 880544k free, 7184k buffers
Swap: 1048572k total, 0k used, 1048572k free, 41700k cached
 
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1268 root 20 0 99.7m 4124 3144 S 0.3 0.4 0:00.34 sshd
1320 root 20 0 15008 1276 996 R 0.3 0.1 0:00.02 top
1 root 20 0 19360 1520 1228 S 0.0 0.1 0:00.82 init
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root RT 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
4 root 20 0 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
5 root RT 0 0 0 0 S 0.0 0.0 0:00.00 stopper/0
6 root RT 0 0 0 0 S 0.0 0.0 0:00.01 watchdog/0
7 root 20 0 0 0 0 S 0.0 0.0 0:01.84 events/0
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 events/0
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 events_long/0
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 events_power_ef
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 cgroup
12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 khelper
13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 netns
14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 async/mgr
15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 pm
 
每隔3秒变一次
top -bn1 一次性把全部的信息显示出来而非动态显示
-----------------------------------------------------------------------------------------------
安装sar yum install -y sysstat
sar -n DEV
IFACE表示设备名称
rxpck/s表示每秒进入收取的包的数量
txpck/s表示每秒发出去的包的数量
如果rxpck/s那一列的数值大于4000或者rxKB/s大于5000,很有可能被攻击了
 
sar -n DEV 1 5 时时查看网卡流量
sar -n DEV -f /var/log/sa/XX查看历史流量
sar -q 查看历史负载
 
---------------------------------------------------------------------------------------------------
 
[root@awen ~]# free
total used free shared buffers cached
Mem: 1020076 211064 809012 208 10112 108328
-/+ buffers/cache: 92624 927452
Swap: 1048572 0 1048572
 
第一个数值 内存总大小
第二个数值 已经使用
第三个数值 剩余内存
 
----------------------------------------------------------------------------------------------------
[root@awen ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 19360 1520 ? Ss 13:13 0:00 /sbin/init
root 2 0.0 0.0 0 0 ? S 13:13 0:00 [kthreadd]
root 3 0.0 0.0 0 0 ? S 13:13 0:00 [migration/0]
root 4 0.0 0.0 0 0 ? S 13:13 0:00 [ksoftirqd/0]
root 5 0.0 0.0 0 0 ? S 13:13 0:00 [stopper/0]
root 6 0.0 0.0 0 0 ? S 13:13 0:00 [watchdog/0]
root 7 0.0 0.0 0 0 ? S 13:13 0:00 [events/0]
root 8 0.0 0.0 0 0 ? S 13:13 0:00 [events/0]
root 9 0.0 0.0 0 0 ? S 13:13 0:00 [events_long/0]
 
SATA表示进程的状态
D 不能中断的进程
R 正在运行的进程
S 已经中断的进程
T 已经停止或者暂停的进程
W 表示从内核2.6XX以后,表示没有足够的内存页分配
X 已经死掉的进程
Z 僵尸进程
< 高优先级进程
N 低优先级进程
L 在内存中被锁定了的内存页
s 主进程
l 多线程进程
+代表在前台运行的进程
-----------------------------------------------------------------------------------------------------
[root@awen ~]# netstat -lnp 打印当前系统启动了哪些端口
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1154/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1233/master
tcp 0 0 :::22 :::* LISTEN 1154/sshd
tcp 0 0 ::1:25 :::* LISTEN 1233/master
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node PID/Program name Path
unix 2 [ ACC ] STREAM LISTENING 8733 1/init @/com/ubuntu/upstart
unix 2 [ ACC ] STREAM LISTENING 10904 1071/dbus-daemon /var/run/dbus/system_bus_socket
unix 2 [ ACC ] STREAM LISTENING 11297 1233/master public/cleanup
unix 2 [ ACC ] STREAM LISTENING 11304 1233/master private/tlsmgr
unix 2 [ ACC ] STREAM LISTENING 11308 1233/master private/rewrite
 
netstat -an
--------------------------------------------------------------------------------------------------
tcpdump tshark
yum install -y tcpdump 安装
-nn 显示第三列和第四列显示成IP+端口号的形式 不加则显示主机名+服务器名
-s 0 抓取大于64K的包
wireshark
yum install -y wireshark 安装
tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host‘ -e “http.request.method”-e "http.request.uri"
 

系统负载命令