在Linux中,如何使用top、htop、vmstat等命令监控系统性能?

简介: 在Linux中,如何使用top、htop、vmstat等命令监控系统性能?

在Linux系统中,tophtopvmstat 是三个常用的命令行工具,用于监控系统性能。它们分别提供了不同的视角和信息,帮助管理员了解系统的运行状况。

1. top 命令

top 是一个实时显示系统进程状态的动态视图工具,可以显示系统总体负载、各个进程的资源消耗(CPU、内存)等情况。

  • 基本用法
top
  • 主要功能
  • 显示系统整体信息,包括系统运行时间、总进程数、负载平均值等;
  • 列出当前正在运行的进程,按照CPU使用率排序;
  • 显示每个进程的PID、用户、优先级、CPU和内存使用量等;
  • 可以通过按键操作(如P切换CPU排序,M切换内存排序,k杀死进程等)进行交互式操作。
2. htop 命令

htoptop 的一个增强版本,提供了彩色界面、横向和纵向滚动、树状视图展示进程层次结构等功能。

  • 前提
    需要先安装 htop,对于大部分基于Debian/Ubuntu的系统:
sudo apt-get install htop
  • 对于基于RPM的系统如CentOS/RHEL:
sudo yum install htop
  • 基本用法
htop
  • 特点
  • 提供更丰富的色彩标识,让信息更易读;
  • 支持鼠标操作,如点击列标题进行排序;
  • 显示进程的线程信息;
  • 可以直接在界面上搜索进程;
  • 可以标记和跟踪进程;
  • 动态显示系统和CPU的统计图表。
3. vmstat 命令

vmstat 主要用于报告虚拟内存统计信息,也能报告CPU使用率、IO、中断、系统切换次数等系统活动的信息。

  • 基本用法
vmstat [interval] [count]
  • 不带参数运行将会显示系统当前状态,带上间隔时间(秒)和刷新次数则持续输出指定次数的系统状态更新。
  • 示例
vmstat 1 5  # 每隔1秒打印一次系统状态,总共打印5次
  • 输出信息
  • procs:系统进程相关信息,包括运行队列长度、等待CPU时间片的进程数、不可中断睡眠进程数等;
  • memory:内存使用情况,包括物理内存、交换空间的使用和缓存使用情况;
  • swap:页面交换信息;
  • io:块设备的IO统计数据;
  • system:系统总体统计信息,包括CPU使用率、系统切换次数等。
4. iostat命令
  • iostat命令用于监控系统输入输出设备和CPU的使用情况。它的特点是汇报磁盘活动统计情况,同时也会汇报出CPU使用情况。但需要注意的是,iostat不能对某个进程进行深入分析,仅对系统的整体情况进行分析。

综上所述:在使用这些命令时,需要根据实际需求选择合适的命令和参数,以获取最准确的监控数据。例如,如果需要实时监控系统的整体性能和进程的运行情况,可以使用top或htop命令;如果需要了解系统的内存使用情况,可以使用vmstat命令;如果需要监控磁盘输入输出状态,可以使用iostat命令。

相关文章
|
9月前
|
Ubuntu Linux Anolis
Linux系统禁用swap
本文介绍了在新版本Linux系统(如Ubuntu 20.04+、CentOS Stream、openEuler等)中禁用swap的两种方法。传统通过注释/etc/fstab中swap行的方式已失效,现需使用systemd管理swap.target服务或在/etc/fstab中添加noauto参数实现禁用。方法1通过屏蔽swap.target适用于新版系统,方法2通过修改fstab挂载选项更通用,兼容所有系统。
831 3
Linux系统禁用swap
|
9月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
1410 3
|
Ubuntu Linux 网络安全
Linux系统初始化脚本
一款支持Rocky、CentOS、Ubuntu、Debian、openEuler等主流Linux发行版的系统初始化Shell脚本,涵盖网络配置、主机名设置、镜像源更换、安全加固等多项功能,适配单/双网卡环境,支持UEFI引导,提供多版本下载与持续更新。
903 3
Linux系统初始化脚本
|
10月前
|
运维 Linux 开发者
Linux系统中使用Python的ping3库进行网络连通性测试
以上步骤展示了如何利用 Python 的 `ping3` 库来检测网络连通性,并且提供了基本错误处理方法以确保程序能够优雅地处理各种意外情形。通过简洁明快、易读易懂、实操性强等特点使得该方法非常适合开发者或系统管理员快速集成至自动化工具链之内进行日常运维任务之需求满足。
665 18
|
9月前
|
安全 Linux Shell
Linux系统提权方式全面总结:从基础到高级攻防技术
本文全面总结Linux系统提权技术,涵盖权限体系、配置错误、漏洞利用、密码攻击等方法,帮助安全研究人员掌握攻防技术,提升系统防护能力。
1061 1
|
9月前
|
监控 安全 Linux
Linux系统提权之计划任务(Cron Jobs)提权
在Linux系统中,计划任务(Cron Jobs)常用于定时执行脚本或命令。若配置不当,攻击者可利用其提权至root权限。常见漏洞包括可写的Cron脚本、目录、通配符注入及PATH变量劫持。攻击者通过修改脚本、创建恶意任务或注入命令实现提权。系统管理员应遵循最小权限原则、使用绝对路径、避免通配符、设置安全PATH并定期审计,以防范此类攻击。
1354 1
|
10月前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
2525 10
|
10月前
|
安全 Linux 数据安全/隐私保护
为Linux系统的普通账户授予sudo访问权限的过程
完成上述步骤后,你提升的用户就能够使用 `sudo`命令来执行管理员级别的操作,而无需切换到root用户。这是一种更加安全和便捷的权限管理方式,因为它能够留下完整的权限使用记录,并以最小权限的方式工作。需要注意的是,随意授予sudo权限可能会使系统暴露在风险之中,尤其是在用户不了解其所执行命令可能带来的后果的情况下。所以在配置sudo权限时,必须谨慎行事。
1756 0
|
10月前
|
Ubuntu Linux 开发者
国产 Linux 发行版再添新成员,CutefishOS 系统简单体验
当然,系统生态构建过程并不简单,不过为了帮助国产操作系统优化生态圈,部分企业也开始用国产操作系统替代 Windows,我们相信肯定会有越来越多的精品软件登录 Linux 平台。
817 0
|
10月前
|
Ubuntu 安全 Linux
Linux系统入门指南:从零开始学习Linux
Shell脚本是一种强大的自动化工具,可以帮助您简化重复的任务或创建复杂的脚本程序。了解Shell脚本的基本语法和常用命令,以及编写和运行Shell脚本的步骤,将使您更高效地处理日常任务。
732 0