查看系统负载

W命令/uptime命令

  • W命令可以查看系统当前的负载情况
[root@www ~]# w
 08:34:03 up 1 min,  1 user,  load average: 1.78, 0.73, 0.27
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.204.1    08:33    3.00s  0.04s  0.02s w
  •  第一行显示的内容为:1,系统时间 2,系统运行时间 3,登录用户数量 4,平均负载(三个数值,第一个是1分钟内的平均负载,第二个是5分钟内的平均负载,第三个是15分钟内的平均负载) #平均负载是X分钟平均有多少个进程占用CPU
  • 第二行的内容是下面行的说明:1,登录用户 2,登录终端 3,登录时间点 
  • 比较重要的是第一行的load average 的三个数值中的第一个,一般情况下该值越大说明CPU负载越大
  • 某一时刻1颗CPU只能有一个进程在使用其资源
  • 占用CPU的进程可以是Running,也可以是waiting

 查看CPU信息的命令

  • cat /proc/cpuinfo  #查看最后一段信息的processor,如果是3,则为4个。(这里的个数不是物理CPU个数,比如机器里面有两个四核CPU,物理CPU个数为8)
  • lscpu
[root@www ~]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                1
On-line CPU(s) list:   0
Thread(s) per core:    1
Core(s) per socket:    1
座:                 1
NUMA 节点:         1
厂商 ID:           GenuineIntel
CPU 系列:          6
型号:              42
型号名称:        Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz
步进:              7
CPU MHz:             2294.829
BogoMIPS:            4589.65
超管理器厂商:  VMware
虚拟化类型:     完全
L1d 缓存:          32K
L1i 缓存:          32K
L2 缓存:           256K
L3 缓存:           3072K
NUMA 节点0 CPU:    0
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts nopl xtopology tsc_reliable nonstop_tsc aperfmperf eagerfpu pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 x2apic popcnt xsave avx hypervisor lahf_lm epb xsaveopt dtherm arat pln pts

top命令

  • top命令动态显示进程所占的系统资源  #q退出
[root@www ~]# top
top - 08:53:38 up 21 min,  1 user,  load average: 0.00, 0.03, 0.09
Tasks:  97 total,   1 running,  96 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.3 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1005628 total,   726728 free,   132984 used,   145916 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   709128 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
 5348 root      20   0  301088   6540   5100 S  0.3  0.7   0:01.79 vmtoolsd
 5938 root      20   0  158860   5596   4252 S  0.3  0.6   0:00.34 sshd
    1 root      20   0  127892   6504   4140 S  0.0  0.6   0:02.30 systemd
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd
.....

  • top命令执行的结果是动态输出的,每3秒刷新一次,它的特点是把占用系统资源最高的进程放到前面
  • RES这一项是进程所占的内存大小
  • %mem为使用内存大小百分比
  • 在top界面按M键,使显示内容按内存使用大小排序
  • 在top界面按1键,来显示所有CPU的使用情况
  • top-bn1可以一次性输出所有信息,但是它是静态的,方便shell脚本使用

free命令

  • free查看内容和swap使用情况关注最后一列的available,这个数字是真正剩余的物理内存大小
[root@www ~]# free
              total        used        free      shared  buff/cache   available
Mem:        1005628      133060      726464        7636      146104      708944
Swap:       2097148           0     2097148

#available是free的物理内存加上buff/cache所剩余(暂时不使用)的物理内存之和

  • buffer和cached区别

 buffer:这部分内存是从CPU产生即将写入磁盘里去的那部分数据

 cached:这部分内存是先从磁盘里读出来,然后临时存到内存里的那部分数据  

  • free -k/free -h/free -m以不用容量单位显示内容,默认为k       

手动增加swap

[root@www ~]# dd if=/dev/zero of=/bigfile bs=1M count=1000 #创建一个增加1G内存容量的文件
记录了1000+0 的读入
记录了1000+0 的写出
1048576000字节(1.0 GB)已复制,18.7426 秒,55.9 MB/秒
[root@www ~]# mkswap /bigfile             #格式化为swap格式
正在设置交换空间版本 1,大小 = 1023996 KiB
无标签,UUID=969ba398-81ac-416d-9453-86443f98630b
[root@www ~]# chmod 600 /bigfile
[root@www ~]# swapon /bigfile  挂载文件
  • 开机自动挂载新增swap
vi /etc/fstab
  • 增加以下内容
/bigfile        swap     swap    defaults    0     0 
03-07 05:46