当前位置: 首页 > news >正文

Kylin麒麟操作系统 | 系统监控

以下所使用的环境为:
虚拟化软件:VMware Workstation 17 Pro
麒麟系统版本:Kylin-Server-V10-SP3-2403-Release-20240426-x86_64

一、系统状态查询工具

1. 静态显示系统进程信息ps

ps命令会生成一个静态列表,列表中显示的进程其实是你执行命令时,捕获当前系统进程的一个快照信息。执行完命令后出现的进程,不会自动更新到当前显示中。如果需要实时更新进程信息,则需要使用到top命令和系统监控应用。

列出当前系统的所有进程信息

会显示进程的PID、进程附属终端、进程状态、进程占用的CPU时间、可执行文件的名字

ps -ax

在这里插入图片描述

列出当前系统的全部进程信息,包含详细信息

除了ps -ax提供的信息外,还显示进程属主的名称、进程占用CPU和内存的百分比、显示虚拟内存大小和未交换物理内存的大小(字节)、进程的开始运行时间

ps -aux

在这里插入图片描述

结合管道符操作符,将当前系统运行状态中指定进程过滤出

ps -ef | grep ssh

在这里插入图片描述

集合管道操作符和sort命令,根据内存使用量降序排序

ps -aux | sort -rnk 4

在这里插入图片描述

2. 实时显示系统进程信息top

top命令的功能是实时显示系统运行状态,包含处理器、内存、服务、进程等重要资产信息。可以将top命令比作加强版的Windows任务管理器。还可以对进程做更进一步的操作,例如杀死某个进程。

top的互动命令

命令描述
Space刷新
h显示帮助
k杀死进程,后续需要输入进程ID和信号值
n设置要显示的进程数量
u按用户排序
r按pid修改进程的优先级
M按内存使用量排序
P按CPU使用率排序
q退出top

杀死指定进程

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

3. 系统监控工具

麒麟操作系统提供了一个图形界面的系统监控工具【系统监视器】,功能界面有点类似于Windows的任务管理器。

在这里插入图片描述
在这里插入图片描述

4. 显示系统内存使用情况free

free命令的功能是显示系统内存使用量,包含物理内存和交换内存的总量、使用量、空闲量情况。

显示内存总量、使用内存大小、空闲内存大小、共享内存大小、buff的大小和cache的大小(缓存)、以及可用空间(free的默认单位是字节)

在这里插入图片描述

如果需要以MB为单位显示,可以添加[-m]参数;如果要显示单位,可以添加[-h]参数

free -m

在这里插入图片描述

5. 显示块设备信息blkid

blkid命令能够查看Linux系统中的全部块设备信息,也就是硬盘或光盘设备,可以根据块设备名称、文件系统类型、卷标签、UUID等参数进行信息检索。

显示当前系统的块设备信息,只有root用户才有权限查看

blkid

在这里插入图片描述

查看指定硬盘的块设备信息

blkid /dev/sda1

在这里插入图片描述

6. 查看系统的磁盘使用情况lsblk

lsblk命令提供更多的信息和输入格式控制,它是从 udev 读取信息,无需root用户也可以使用该命令。命令可以输出主设备名、子设备名、设备文件大小、设备是否只读、设备类型、设备的挂载路径。默认情况下,命令是以树状结构输出相关参数信息。

查看当前系统的磁盘使用情况

lsblk

在这里插入图片描述

以列表方式输出磁盘使用情况

lsblk -l

在这里插入图片描述

7. 显示磁盘空间使用量df

df的功能是显示系统上磁盘空间的使用量情况,命令会显示磁盘的名称、类型、容量、已用容量、可用容量、已使用的百分比、挂载点。

显示系统全部磁盘的使用量

df

在这里插入图片描述

显示系统全部磁盘的使用量,同时显示单位

df -h

在这里插入图片描述

显示系统全部磁盘的使用量,显示单位和磁盘类型

df -hT

在这里插入图片描述

显示指定文件类型的磁盘使用量

df -t xfs

在这里插入图片描述

8. 查看文件或目录大小du

du命令来自英文 disk usage 的缩写,该命令可以查看文件或目录的大小,df和du的区别在于,df是查看磁盘使用量,而du是查看文件或目录在磁盘中的占用情况。默认情况下,du命令以千字节为单位显示磁盘的使用情况。

以易读的容量格式显示查看目录和各个文件的大小信息

du -h

在这里插入图片描述

以易读的方式查看指定目录内的文件总大小

du -sh /etc/selinux

在这里插入图片描述

显示指定文件的大小信息(默认单位kb)

du /etc/selinux/config

在这里插入图片描述

二、影响服务器性能因素

影响服务器性能的因素

  • 系统级别
    • 内存
    • CPU
    • 磁盘I/O
    • 网络I/O带宽
  • 应用程序及软件
    • Nginx、MySQL、Tomcat
    • 应用程序代码

系统性能评估

  1. 使用率:表示资源用于服务的时间或容量百分比。100%的使用率,表示容量已经用完或全部时间都用在服务
  2. 饱和度:表示资源的繁忙程度,通常与等待队列的长度相关。100%的饱和度,表示资源无法接受更多的请求
  3. 错误数:发生错误的事件个数。错误越多,表明系统的问题越严重。

常用的系统性能组合分析命令

命令说明
top、uptime检查系统的整体负载
vmstat、sar、iostat、top检查是否是CPU瓶颈
free、vmstat检查是否是内存瓶颈
iostat检查是否是磁盘I/O瓶颈
netstat、iftop检测是否是网络带宽瓶颈

1. 查看系统负载uptime

uptime命令能够显示系统已经运行多久时间、当前登录用户数,以及过去1分钟、5分钟、15分钟的负载信息。其中三个时间段的负载值一般不能大于系统逻辑CPU核数的2倍。

  • >系统逻辑CPU核数的2倍,CPU很繁忙,负载很高,可能会影响系统性能
  • <系统逻辑CPU核数的2倍,系统还存在空闲时间片
  • =系统逻辑CPU核数的2倍,CPU或服务器处于闲置

查看当前系统的负载与相关信息

uptime

在这里插入图片描述

查看当前系统的CPU核心数

cat /proc/cpuinfo | grep "cpu cores"

在这里插入图片描述

2. 监视系统资源状态vmstat

vmstat用于监视系统资源状态,可以查看关于进程、内存、硬盘I/O等整体运行状态。vmstat输出一段时间内的平均值,该值是自系统上次启动以来计算的平均值。

在这里插入图片描述

  • **r:**等待运行时间的进程数量
  • **b:**处于不可中断睡眠状态的进程数。睡眠过程分为两种,一种是可中断一种是不可中断。其中不可中断指的是在中断后数据会丢失
  • **swpd:**使用的虚拟内存数(KB)
  • **free:**可用的内存量(KB)
  • **buff:**缓存数量(用作应用程序的缓存,KB)
  • **cache:**缓存数量(用于硬盘空间的缓存,KB)
  • **si:**从磁盘中交换到内存的平均速率(KB/秒)
  • **so:**从内存中交换硬盘的平均速率(KB/秒)
  • **bi:**从内存向磁盘交换数据的平均块数/秒
  • **bo:**从硬盘向内存交换数据的平均块数/秒
  • **in:**每秒中断数量
  • **cs:**上下文切换数量/秒
  • **us:**用户时间
  • **sy:**系统时间
  • **id:**空闲时间
  • **wa:**等待时间
  • **st:**窃取时间

us+sy的参考值为80%,如果大于80%说明可能存在CPU资源不足。

3. 监控系统资源的占用情况pidstat

pidstat用于监控全部或指定进程的cpu、内存、线程、设备IO等系统资源的占用情况。与vmstat相对比,vmstat只能给出系统总体的上下文切换情况(关注整体),而pidstat可以查看进程的具体CPU上下文切换(关注进程)。

在这里插入图片描述

4. 统计系统运行状态sar

sar命令可以统计系统运行状态,使用sar会增加系统开销,不过开销是可估量,对系统的统计结果不会有很大影响。

统计CPU设备的负载信息

sar -u		# -u选项,针对某个系统的CPU统计输出

在这里插入图片描述

相关文章:

  • Element-Plus,使用 El-form中 的 scroll-to-error 没有效果问题记录
  • openlayers结合turf geojson面获取面积和中心点
  • redis存取list集合
  • 腿足机器人之十三-强化学习PPO算法
  • 【AI+智造】用DeepSeek分析设备温度、振动、速度、加速度量化数据:南通制造业数字化转型的“智能引擎” ——基于设备全生命周期管理的开源技术方案
  • 光谱相机的市场发展趋势
  • AWS ALB 实现灰度验证指南:灵活流量分配与渐进式发布
  • Maven的传递性、排除依赖、生命周期、插件
  • 【随手笔记】RTthread软件占用资源记录
  • 阻塞赋值和非阻塞赋值
  • Rust中的异步编程:构建简单的网页爬虫
  • 多通道数据采集和信号生成的模块化仪器如何重构飞机电子可靠性测试体系?
  • 数字化赋能:制造业如何突破低效生产的瓶颈?
  • 光流法处理水流:原理与应用
  • 本地部署DeepSeek全攻略:Ollama+Chatbox保姆级教程
  • 如何使用Python编程实现捕获笔记本电脑麦克风的音频并通过蓝牙耳机实时传输
  • BIO、NIO、AIO解析
  • 【AI学习从零至壹】Numpy基础知识
  • 鸿蒙 ArkUI 实现敲木鱼小游戏
  • 2025年跟上AI新时代:带AI人工智能的蜜罐系统T-Pot
  • 中国德国商会报告:76%在华德企受美国关税影响,但对华投资战略依然稳固
  • 创新创业50人论坛开幕在即,双创青年为何选择来上海筑梦?
  • 长和获准出售巴拿马运河港口以外的港口?外交部:该报道没有依据
  • 南京明孝陵石兽遭涂鸦“到此一游”,景区:已恢复原貌,警方在排查
  • 马斯克的“星舰基地”成为新城镇,首任市长为SpaceX员工
  • 少数人的奢侈品还是所有人的必需品:我们如何解构创造力?