Linux系统负载查询

查询Linux系统负载情况,一般需要了解三个方面的信息:

1、Linux系统配置。如Linux版本号、CPU、内存、网络、磁盘等;

2、收集系统负载信息的手段。常用的工具包有sysstat和procps等。

3、查询结果分析。通过工具包获取系统负载信息,要具体分析系统是否负载、某项指标参数是否超标、系统的瓶颈集中哪几项等。

一、查询Linux系统配置

  查询CPU配置:

  • lscpu命令

    获取CPU架构、是否支持超线程、主频、缓存信息等。当然更详细的信息存储在/proc/cpuinfo文件。

  查询内存配置

  • free命令

    free命令在man文档中的介绍为"Display amount of free and used memory in the system.",free -g 表示用GB显示内存信息,free -m表示用MB显示内存信息。

    回显结果中"Mem: "行表示从OS层面看内存使用情况。"-/+ buffers/cache: "表示从应用程序角度看内存使用情况。

    其中(- buffers/cache) used内存数=[Mem:] used - buffers - cached,反映的是被程序实实在在吃掉消耗的内存;

      (+ buffers/cache) free内存数=[Mem:] free + buffers + cached,反映的是系统中还可以被挪用的内存;

    buffer: A buffer is something that has yet to be "written" to disk.
    cache: A cache is something that has been "read" from the disk and stored for later use.

二、查询系统负载

系统平均负载即在特定时间间隔内运行队列中的平均进程数。如果一个进程满足如下条件就会加入到运行队列中,

1 它没有在等待I/O操作的结果;2 它没有主动进入等待状态;3 没有被停止,包含等待终止。

常用查询命令:

 command  descriptions
uptime tell how long the system has been running.
top display Linux tasks.
iostat report central processing unit(cpu) statistics and input/output statistics for device, partitions and network filesystems(NFS).
vmstat report virtual memory statistics.

sysstat软件包:包含监测系统性能及效率的一组工具。

1、cifsiostat用于输出cifs文件系统的读写操作信息。

2、iostat用于输出CPU、I/O系统和磁盘分区的统计信息,可以用来分析磁盘I/O、带宽等信息。

3、mpstat用于输出CPU的各种统计信息,可以用于分析程序运行在内核态和用户态的工作情况。

4、pidstat用于监控被Linux内核管理的单个任务。

5、sadf用于格式化输出sar的输出数据。

6、sar用于定时收集系统的各种状态信息,然后可以对系统各个时间点的状态进行监控。

procps软件包:包含一组提供系统信息的实用程序。

1、ps用于查看某一时刻的进程。

2、sysctl用于在运行时配置内核参数。

3、free用于查询内存和swap信息。

4、pgrep,pkill用于通过名称和其他属性查找或者发送信号给进程。

5、pmap用于显示一个或者多个进程所使用的内存数量。

6、pwdx用于显示一个进程的工作目录。

7、skill、snice被废弃的命令,由killall、pkill、pgrep替代。

8、slabtop用于实时显示系统的内核缓存信息。

9、tload使用图形显示系统的平均负载。

10、top用于动态显示进程信息。

11、uptime用于显示系统运行时间和最近1min、5min和10min内的平均负载。

12、vmstat用于显示processes、memory、paging、block IO、tps、and cpu使用信息,

13、w显示登录的账户和他们活动情况。

14、watch定时执行程序,并全屏显示。

当然还有更多的第三方工具包用于监控Linux系统运行和性能情况,比如atop、htop、iotop等。

查询当前进程中所有的线程:

top命令

top -Hp <pid>

/proc/<pid>文件

cat /proc/<pid>/status

ls /proc/<pid>/task/ | wc -l

ps命令

ps hHp <pid> | wc -l

ps -T -p <pid>

三、结果分析

对于通过Linux命令和工具收集到的数据需要理解每个字段的含义 ,用于分析当前系统的负载情况,比如,内存占用过高、CPU繁忙、IO等待时间过长等。

    

    

---恢复内容结束---

原文地址:https://www.cnblogs.com/HopkinsCybn/p/10014137.html

时间: 2024-08-22 09:35:07

Linux系统负载查询的相关文章

linux中uptime命令查看linux系统负载

阅读目录 uptime cat /proc/loadavg 何为系统负载呢? 进阶参考 uptime uptime 另外还有一个参数 -V(大写),是用来查询版本的 procps是一个实用程序包,主要包括ps top kill等程序主要用来显示与控制一些系统信息,进程状态之类的内容. 以下显示输入uptime的信息: 04:03:58 up 10 days, 13:19, 1 user, load average: 0.54, 0.40, 0.20 当前时间 04:03:58 系统已运行的时间

linux 系统负载高 如何检查

1:load Average 1.1:什么是Load?什么是Load Average? Load 就是对计算机干活多少的度量(WikiPedia:the system Load is a measure of the amount of work that a compute system is doing) 简单的说是进程队列的长度.Load Average 就是一段时间(1分钟.5分钟.15分钟)内平均Load.[参考文章:unix Load Average Part1:How It Wor

查看Linux系统负载

防伪码:没有相当程度的孤独是不可能有内心的平和. 1.概念 负载信息有3个数值,第一个数值表示1分钟内系统的平均负载值,第二个数值表示5分钟内系统的平均负载值,第三个数值表示15分钟内系统的平均负载值. 平均负载数值表示单位时间内CPU活动进程数.这个数值越大,说明服务器压力越大.一般情况下这个值只要不超过服务器的cpu数量(Linux中,CPU一个核心就代表一个CPU)就没有关系. 2.查看方法 2.1 w命令 [[email protected] ~]#w 16:18:00 up 378 d

Linux系统监测—查询系统CPU,内存,IO信息

查看系统负载的工具:uptime,w,都能查看系统负载,系统平均负载是处于运行或不可打扰状态的进程的平均数, 可运行:运行态,占用CPU,或就绪态,等待CPU调度. 不可打扰:阻塞,正在等待I/O 例1. 使用uptime查看系统负载 # uptime 19:26:17 up 49 days, 7:34, 1 user, load average: 0.67, 0.51, 0.41 这里我们关注的是最后三列,即系统1分钟.5分钟.15分钟内的平均负载,判断一个系统负载是否偏高需要计算单核CPU的

linux 系统下查询当前raid级别

Linux系统下不安装第三方软件查询当前raid级别 测试环境   HP BL685 G7     SUSE 11 SP4 udevadmin info --query=all --name=/dev/sda --attribute-walk|grep raid ATTRS{raid_level}=="RAID 1(1+0)"

监测linux系统负载与CPU、内存、硬盘、用户数的shell脚本

本节主要内容: 利用Shell脚本来监控Linux系统的负载.CPU.内存.硬盘.用户登录数. 一.linux系统告警邮件脚本 # vim /scripts/sys-warning.sh #!/bin/bash #site: www.jquerycn.cn #监控系统负载与CPU.内存.硬盘.登录用户数,超出警戒值则发邮件告警. #提取本服务器的IP地址信息 IP=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":"

linux系统负载状态检查脚本

为了便于分析问题,编写了一个linux状态检查脚本,脚本可放置任意目录,脚本执行检测后会输出日志记录到当前目录下.直接执行脚本可用于一次检测,可通过日志进行分析.如果需要长时间监测,可执行-x参数,脚本会自动增加计划任务,并将日志输出到/tmp目录下.如果需要删除计划任务,可执行-xx参数. 脚本下载地址: wget http://jinxiang.oss-cn-hangzhou.aliyuncs.com/vmstatuscheck.sh #使用方法:  #例:./vmstatuscheck.s

Linux系统man查询命令等级及意义

1:用户命令,可由任何人启动的 2:系统调用,由内核提供的函数 3:库函数 4:设备,/dev目录下的特殊文件 5:文件格式描述,例如/etc/passwd 6:游戏 7:杂项,例如宏命令包.惯例等 8:系统管理员工具,只能有root启动 9:其他(Linux特定的),用来存放内核例行程序的文档 n:新文档,可能要移到更适合的领域 o:老文档,可能会在一段期限内保留 l:本地文档,与本特定系统有关 详情参考:http://blog.sina.com.cn/s/blog_4b9eab320101e

Linux 系统版本查询命令

1.# uname -a (Linux查看版本当前操作系统内核信息) 2.# cat /proc/version (Linux查看当前操作系统版本信息) 3.# cat /etc/issue 或 cat /etc/redhat-release (Linux查看版本当前操作系统发行版信息) 4.# cat /proc/cpuinfo (Linux查看cpu相关信息,包括型号.主频.内核信息等) 5.# getconf LONG_BIT (Linux查看版本多少位) 6.# lsb_release