w命令、vmstat命令、top命令、sar命令、nload命令

简介:

w、uptime查看系统负载

clipboard(7).png

12:23:32  是系统当前时间12点23分32秒

up 26 min  是登录系统的时间为 26分钟

1 user  目前登录了1个用户

load avaerage 系统负载,有三个数字分别表示1分钟、5分钟、15分钟时间段内系统的负载值是多少。数字的含义为:单位时间段内使用cpu的活动进程有多少个。(这个数值为0时说明linux在空跑,没有任何进程在使用。一般这个值不超过逻辑cpu的数量。查看cpu数量使用命令cat /proc/cpuinfo)


USER 用户名

TTY 登录的终端 网络登录是pts/0,pts/1等,tty直接登录。

FROM 远程登录的地址

LOGIN@ 登录的时间(什么时候登录的)

IDLE 用户空闲时间,用户执行任何操作后改时间被重置

JCPU 和该终端链接的所有进程占用时间

PCPU 当前进程所占用的时间

WHAT 当前正在运行进程的命令行


备注:

(1)区别与who命令,w命令不仅可以看到登录服务器的用户信息,而且还可以看到这些用户做了什么。

(2)who am i 命令,显示出自己在系统中的用户名,登录终端,登录时间。

(3)whoami 命令,显示自己在系统中的用户名。

(4)logname 命令,可以显示自己初次登录到系统中的用户名,主要识别sudo前后情形。

(5)last命令,查看近一个月用户登录服务器的情况。

(6)tty命令,来查看所连接的设备或终端。


uptime命令显示的内容和w命令显示的内容差不多,但是只显示了w命令的前半部分内容。

clipboard.png



vmstat命令

vmstat 可以查看服务器的状态值,包括服务器的cpu使用率、内存使用,虚拟内存交换情况,IO读写情况。

clipboard(3).png

vmstat n1 n2  (n1,n2代表数字。n1为多长时间动态显示一次。n2为显示的次数。如果没有n2,那么它会一直显示,按ctrl+c结束显示。单独的vmstat只会静态的显示一次状态。)


proc 显示进程相关信息

r:run。表示有多少个进程处于run的状态(正在运行和等待运行的进程)。当这个数字长期大于cpu逻辑个数,那么说明cpu不够用了。

b:表示进程被cpu以外的资源(硬盘、网络等)阻断,处于等待状态。进程被阻塞。


memory内存相关信息

swap 切换到交换分区的内存量(当内存不够用时,内存中的数据会暂时存放在swap中),如果该数字持续变化说明内存不够了

free 表示当前空闲的内存量

buff 缓冲大小

cache 缓存大小


swap 内存交换相关信息

si 有多少kb的数据从swap进入到内存中。和swap有关,当swap那列在改变时,该列就会跟着改变。

so 有多少kb的数据从内存进入到swap中。和swap有关,当swap那列在改变时,该列就会跟着改变。


io 磁盘相关信息

bi 从磁盘读出来写入到内存中的数据量(读磁盘)

bo 从内存读出来写入到磁盘中的数据量(写磁盘)

这两个数值很大的话说明磁盘在频繁读写,当大量数据频繁读写会造成b列(proc中)增加


system 显示采集间隔内发生的中断次数

in 表示在某一时间间隔中观测到的每秒设备中断次数

cs 表示每秒产生的上下文切换次数


CPU显示CPU的使用状态(us+sy+id=100%)

us 表示用户级别资源(网站服务、数据库服务等)占用的cpu的百分比(长时间大于50,说明cpu资源不够了)

sy 表示系统本身的进程服务占用cpu百分比

id 表示cpu空闲状态的百分比

wa wait,和b类似,等待使用cpu的百分比(数值过大说明cpu资源不够用了。)

st 表示被偷走的cpu所占百分比(该数值一般为0)


top命令

top查看具体进程资源使用情况(每3秒钟刷新一次动态的信息,按q退出。)

clipboard(5).png

-c 具体进程的命令

-bn1 静态显示所有进程(常用语shell脚本)


第一行是负载信息(和w命令查看出来的内容一致)

第二行是进程信息(总的又92个进程,有1个是在run状态,91个在sleep状态。0个在停止状态。0个僵尸进程(僵尸进程为主进程没有在运行,但是还有子进程在运行))

第三行是CPU的使用信息

第四行是内存使用信息

第五行是交换区使用信息

最下面为进程详细信息:

PID 进程在系统中的id号,可以配合kill命令来结束进程,进程一旦被杀死就恢复不了了。

RES 表示进程所用的物理内存大小(单位kb)

%MEM 表示内存使用百分比(单位kb)

%CPU 表示cpu使用百分比

COMMAND 进程的命令



sar命令

sar是linux下系统状态分析工具,它将指定的操作系统状态(平均负载、网卡流量、磁盘状态、内存使用等)计数器显示到标准输出设备。它不同于其它系统状态监控工具的地方在于,它可以打印历史信息,可以显示从零开始到当前时刻的系统状态信息。


安装sar工具,使用命令:yum install -y sysstat


初次运行sar命令可能会报错,因为sar命令还没有生成相应的数据库文件。其数据库文件保存在/var/log/sa/目录下,该目录下存放两种文件,分别以sa日期或sar日期的格式命名(sar是第二天生成,sa文件10分钟更新一次。sar文件是直接可以cat的,但是sa文件需要用sar命令加载。),文件最多保留一个月。


sar -f filename 从指定文件提取报告

clipboard(6).png


sar -n DEV n1 n2 查看网卡流量(n1为多长时间显示一次,n2为显示的次数)

clipboard(1).png

rxpck/s 表示接收数据包的个数

txpck/s 表示发送数据包的个数

rxKB/s 表示接收的数据量

txKB/s 表示发送的数据量

注意! 当rxpck/s的值大于4000或者rxKB/s的值大于5000时则可能遭受攻击(需配合抓包工具进一步确认)!


sar -q 查看系统负载(配合-f使用,查看历史负载)

clipboard(2).png


sar -b查看磁盘信息

clipboard(4).png



nload命令

noload监控网卡流量

安装nload工具需要先安装epel-release

yum install -y epel-release

yum inttall -y nload


直接运行nload

clipboard(8).png

该界面显示系统网络动态信息,可以使用左右方向件查看不用网卡的信息,按q退出。可以根据实时网速和总带宽比较查看是否被攻击。


本文转自 豆渣锅 51CTO博客,原文链接:http://blog.51cto.com/754599082/2044789


相关文章
|
负载均衡 Java 微服务
Java错误:com.netflix.client.ClientException: Load balancer does not have available server for client
Java错误:com.netflix.client.ClientException: Load balancer does not have available server for client
虾皮二面:Spring Bean 默认是单例的,如何保证并发安全?
Spring 的 Bean 默认都是单例的,某些情况下,单例是并发不安全的,以 Controller 举例,问题根源在于,我们可能会在 Controller 中定义成员变量,如此一来,多个请求来临,进入的都是同一个单例的 Controller 对象,并对此成员变量的值进行修改操作,因此会互相影响,无法达到并发安全(不同于线程隔离的概念,后面会解释到)的效果。 首先来举个例子,证明单例的并发不安全性:
|
搜索推荐 数据挖掘
新用户来自哪里 新用户因何而来
本文讲的是新用户来自哪里 新用户因何而来【IT168 评论】当流量红利时代进入瓶颈,企业对新用户的增长情况需要投入更多的关注。用户来自哪里,哪些渠道更优质,什么类型的活动能带来更好的效果,这些问题都能够通过有效的用户行为数据分析得到答案。
1073 0
|
7天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
17天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1327 7
|
5天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
305 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
4天前
|
监控 JavaScript Java
基于大模型技术的反欺诈知识问答系统
随着互联网与金融科技发展,网络欺诈频发,构建高效反欺诈平台成为迫切需求。本文基于Java、Vue.js、Spring Boot与MySQL技术,设计实现集欺诈识别、宣传教育、用户互动于一体的反欺诈系统,提升公众防范意识,助力企业合规与用户权益保护。
|
16天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1399 87