linux机器性能如何查看

使用 top、htop 命令查看系统资源实时使用情况,free

Linux系统中,有多种方法可以查看机器的性能,以下是一些常用的命令和工具,以及它们的详细使用方法:

top 和 htop

  • top:实时显示系统的任务管理器,默认按CPU使用率排序。

    top
    • 输出说明:
      • %Cpu(s):CPU使用率,包括用户空间、系统空间、空闲等。
      • Tasks:进程总数、运行中的进程数、睡眠中的进程数。
      • Mem:内存使用情况,包括总内存、已用内存、空闲内存。
      • Swap:交换分区的使用情况。
      • PID:进程ID。
      • USER:进程所有者。
      • PR:优先级。
      • NI:nice值。
      • VIRT:虚拟内存使用量。
      • RES:物理内存使用量。
      • SHR:共享内存使用量。
      • S:进程状态(S=睡眠,R=运行,Z=僵尸,T=停止)。
      • %CPU:CPU使用率。
      • %MEM:内存使用率。
      • TIME+:进程运行时间。
      • COMMAND:进程命令行。
  • htop:top的增强版,支持鼠标操作和更直观的界面。

    htop
    • 特点:
      • 支持横向和纵向滚动。
      • 支持按F2进入设置菜单,调整显示选项。
      • 支持按F9删除进程,按F5切换树状视图。

vmstat

  • vmstat:报告虚拟内存统计信息,包括进程、内存、分页、块IO、陷阱和CPU活动。
    vmstat 2
    • 输出说明:
      • procs:r列表示运行队列中的进程数,b列表示阻塞队列中的进程数。
      • memory:swpd列表示使用的交换内存,free列表示空闲内存,buff列表示缓冲区内存,cache列表示缓存内存。
      • swap:si列表示从磁盘交换到内存的速率,so列表示从内存交换到磁盘的速率。
      • io:bi列表示块设备每秒接收的请求数,bo列表示块设备每秒完成的请求数。
      • system:in列表示每秒中断次数,cs列表示每秒上下文切换次数。
      • cpu:us列表示用户空间CPU使用率,sy列表示系统空间CPU使用率,id列表示空闲CPU使用率,wa列表示等待IO的CPU使用率,st列表示被偷走的CPU时间(虚拟机)。

iostat

  • iostat:报告CPU统计信息和块设备或分区的IO统计信息。
    iostat -x 2
    • 输出说明:
      • CPU:%user列表示用户空间CPU使用率,%nice列表示nice值的CPU使用率,%system列表示系统空间CPU使用率,%iowait列表示等待IO的CPU使用率,%steal列表示被偷走的CPU时间,%idle列表示空闲CPU使用率。
      • Device:tps列表示每秒事务数,kB_read/s列表示每秒读取的KB数,kB_wrtn/s列表示每秒写入的KB数,kB_read列表示读取的总KB数,kB_wrtn列表示写入的总KB数。

free

  • free:显示系统的内存使用情况,包括总内存、已用内存、空闲内存和交换分区。
    free -h
    • 输出说明:
      • total:总内存大小。
      • used:已用内存大小。
      • free:空闲内存大小。
      • shared:共享内存大小。
      • buff/cache:缓冲区和缓存内存大小。
      • available:可用内存大小。

df

  • df:显示文件系统的磁盘空间使用情况。
    df -h
    • 输出说明:
      • Filesystem:文件系统名称。
      • Size:文件系统总大小。
      • Used:已用空间大小。
      • Avail:可用空间大小。
      • Use%:已用空间百分比。
      • Mounted on:挂载点。

lsblk

  • lsblk:列出所有块设备及其挂载点。
    lsblk
    • 输出说明:
      • NAME:设备名称。
      • MAJ:MIN:主设备号和次设备号。
      • RM:是否可移除。
      • SIZE:设备大小。
      • TYPE:设备类型(disk、part、loop等)。
      • MOUNTPOINT:挂载点。

netstat

  • netstat:显示网络连接、路由表、接口统计信息等。
    netstat -tulnp
    • 输出说明:
      • Proto:协议类型(TCP、UDP)。
      • Local Address:本地地址和端口。
      • Foreign Address:远程地址和端口。
      • State:连接状态(LISTEN、ESTABLISHED等)。
      • PID/Program name:进程ID和程序名称。

sar

  • sar:系统活动报告工具,用于收集、报告和保存系统活动信息。
    sar -u 2
    • 输出说明:
      • Linux:系统版本。
      • CPU:CPU使用率统计信息,包括%user、%nice、%system、%iowait、%steal、%idle等。

mpstat

  • mpstat:报告CPU统计信息,适用于多核系统。
    mpstat -P ALL 2
    • 输出说明:
      • CPU:CPU编号。
      • %usr:用户空间CPU使用率。
      • %nice:nice值的CPU使用率。
      • %sys:系统空间CPU使用率。
      • %iowait:等待IO的CPU使用率。
      • %irq:硬中断CPU使用率。
      • %soft:软中断CPU使用率。
      • %steal:被偷走的CPU时间。
      • %guest:虚拟机CPU使用率。
      • %gnice:虚拟机nice值的CPU使用率。
      • %idle:空闲CPU使用率。

dmidecode

  • dmidecode:显示硬件信息,如CPU、内存、主板等。
    sudo dmidecode -t memory
    • 输出说明:
      • Memory Device:内存设备信息,包括大小、类型、频率等。

lshw

  • lshw:显示硬件信息,比dmidecode更详细。
    sudo lshw -short
    • 输出说明:
      • H/W path:硬件路径。
      • Class:硬件类别。
      • Description:硬件描述。
      • Id:硬件ID。
      • Bus info:总线信息。
      • Supported by:驱动支持情况。
      • Configuration:硬件配置信息。

glxinfo

  • glxinfo:如果系统支持OpenGL,可以查看显卡和GPU信息。
    glxinfo | grep "OpenGL"
    • 输出说明:
      • OpenGL vendor string:显卡厂商。
      • OpenGL renderer string:显卡型号。
      • OpenGL version string:OpenGL版本。
      • OpenGL shading language version string:GLSL版本。

lscpu

  • lscpu:显示CPU架构信息。
    lscpu
    • 输出说明:
      • Architecture:CPU架构。
      • CPU op-mode(s):CPU操作模式(32位、64位)。
      • Byte Order:字节序(Little Endian、Big Endian)。
      • CPU(s):CPU数量。
      • On-line CPU(s) list:在线CPU列表。
      • Thread(s) per core:每个核心的线程数。
      • Core(s) per socket:每个插槽的核心数。
      • Socket(s):CPU插槽数。
      • Vendor ID:CPU厂商ID。
      • CPU family:CPU系列。
      • Model:CPU型号。
      • Model name:CPU型号名称。
      • Stepping:CPU步进。
      • CPU MHz:CPU频率。
      • BogoMIPS:CPU性能指标。
      • Virtualization:虚拟化支持情况。
      • L1d cache:L1数据缓存大小。
      • L1i cache:L1指令缓存大小。
      • L2 cache:L2缓存大小。
      • L3 cache:L3缓存大小。
      • NUMA node(s):NUMA节点数。
      • Flags:CPU支持的指令集。

cat /proc/meminfo

  • cat /proc/meminfo:显示内存详细信息。
    cat /proc/meminfo | grep MemTotal
    • 输出说明:
      • MemTotal:总内存大小。
      • MemFree:空闲内存大小。
      • Buffers:缓冲区内存大小。
      • Cached:缓存内存大小。
      • SwapTotal:交换分区总大小。
      • SwapFree:交换分区空闲大小。

cat /proc/cpuinfo

  • cat /proc/cpuinfo:显示CPU详细信息。
    cat /proc/cpuinfo | grep "model name" | uniq
    • 输出说明:
      • model name:CPU型号名称。
      • cpu MHz:CPU频率。
      • cache size:缓存大小。
      • physical id:物理ID。
      • core id:核心ID。
      • siblings:兄弟核心数。
      • flags:CPU支持的指令集。

cat /proc/diskstats

  • cat /proc/diskstats:显示磁盘I/O统计信息。
    cat /proc/diskstats
    • 输出说明:
      • major:主设备号。
      • minor:次设备号。
      • device name:设备名称。
      • reads completed successfully:成功读取次数。
      • reads merged:合并读取次数。
      • sectors read:读取的扇区数。
      • time spent reading (ms):读取时间(毫秒)。
      • writes completed successfully:成功写入次数。
      • writes merged:合并写入次数。
      • sectors written:写入的扇区数。
      • time spent writing (ms):写入时间(毫秒)。
      • IO requests currently in progress:正在进行的I/O请求数。
      • time spent doing I/O (ms):进行I/O的时间(毫秒)。
      • weighted time spent doing I/O (ms):加权I/O时间(毫秒)。

cat /proc/net/dev

  • cat /proc/net/dev:显示网络接口统计信息。
    cat /proc/net/dev
    • 输出说明:
      • Interface:网络接口名称。
      • Receive:接收数据包统计信息,包括字节数、数据包数、错误数、丢包数等。
      • Transmit:发送数据包统计信息,包括字节数、数据包数、错误数、丢包数等。

cat /proc/loadavg

  • cat /proc/loadavg:显示系统负载平均值。
    cat /proc/loadavg
    • 输出说明:
      • 1分钟平均负载:过去1分钟的系统平均负载。
      • 5分钟平均负载:过去5分钟的系统平均负载。
      • 15分钟平均负载:过去15分钟的系统平均负载。
      • 正在运行的进程数:当前正在运行的进程数。
      • 总进程数:系统总进程数。
      • 最后一项:最近一次进程调度的进程ID。

uptime

  • uptime:显示系统运行时间和负载信息。
    uptime
    • 输出说明:
      • 当前时间:系统当前时间。
      • 系统运行时间:系统已运行的时间。
      • 用户登录数:当前登录的用户数。
      • 1分钟、5分钟、15分钟平均负载:系统负载平均值。

ps 和 pstree

  • ps:显示当前进程的状态。

    ps aux
    • 输出说明:
      • USER:进程所有者。
      • PID:进程ID。
      • CPU%:CPU使用率。
      • MEM%:内存使用率。
      • VSZ:虚拟内存大小。
      • RSS:物理内存大小。
      • TTY:终端名称。
      • STAT:进程状态(R=运行,S=睡眠,Z=僵尸,T=停止)。
      • START:进程启动时间。
      • TIME:进程运行时间。
      • COMMAND:进程命令行。
  • pstree:以树状结构显示进程关系。

    pstree
    • 输出说明:
      • 树状结构:父进程在上,子进程在下,清晰展示进程之间的父子关系。

nvidia-smi

  • nvidia-smi:如果系统安装了NVIDIA显卡驱动,可以查看GPU信息和使用情况。
    nvidia-smi
    • 输出说明:
      • GPU:GPU编号和型号。
      • Memory Usage:显存使用情况,包括总显存、已用显存、空闲显存。
      • Processes:正在使用GPU的进程列表,包括PID、GPU利用率、显存使用量等。
      • Driver Version:驱动版本。
      • CUDA Version:CUDA版本。
      • Temperature:GPU温度。
      • Power Usage:GPU功耗。
      • GPU Utilization:GPU利用率。
      • Memory Utilization:显存利用率。

到此,以上就是小编对于linux机器性能如何查看的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/10376.html

赞 (0)
酷番叔酷番叔
上一篇 2025年8月10日 14:31
下一篇 2025年8月10日 14:41

相关推荐

  • 如何查看Linux文件目录是否存在?

    在Linux系统管理和日常操作中,判断文件或目录是否存在是基础且高频的操作,无论是编写脚本、排查问题还是执行文件管理任务,都需先确认目标路径的有效性,本文将详细介绍几种常用的查看方法,涵盖基础命令、脚本适用场景及实用技巧,帮助用户灵活应对不同需求,基础命令:ls命令ls(list)是最直观的目录查看命令,通过列……

    2025年9月13日
    41800
  • Linux如何进入终端?

    在Linux系统中,终端(Terminal)是用户与系统内核交互的核心接口,通过命令行可以高效执行系统管理、程序开发、文件操作等任务,进入终端的方式因Linux发行版(如桌面版、服务器版)及使用环境(本地、远程)的不同而有所差异,以下从多个场景详细介绍进入终端的具体方法,桌面发行版图形界面下的终端进入方式大多数……

    2025年9月9日
    34600
  • Linux系统中如何下载文件?命令行工具怎么操作?

    在Linux系统中,下载文件是日常操作中非常常见的需求,无论是通过命令行工具还是图形界面,Linux都提供了多种高效的方式,本文将详细介绍几种主流的下载方法,涵盖不同场景下的使用技巧,命令行工具:高效灵活的下载方式命令行工具是Linux环境下下载文件的首选,尤其适合服务器管理或远程操作场景,以下是几种常用的命令……

    2025年8月22日
    33200
  • rootfs和vmlinux如何整合

    rootfs(根文件系统)和vmlinux(Linux内核未压缩映像)是Linux系统的核心组成部分,两者的整合是将内核态功能与用户态程序结合,形成可引导的完整系统的关键过程,rootfs提供了系统运行所需的用户空间环境,包括目录结构、库文件、配置和可执行程序;vmlinux则是内核的核心代码,负责硬件抽象、进……

    2025年9月27日
    22800
  • Linux如何查看机器内存大小?

    在Linux系统中,监控和管理内存是系统运维和性能优化的重要环节,准确查看机器内存大小及使用情况,可以帮助用户判断系统负载、规划资源分配以及排查性能问题,本文将详细介绍Linux下查看内存大小的多种方法,涵盖基础命令、系统文件及高级工具,并解释关键输出字段的含义,最后通过FAQs解答常见疑问,通过free命令查……

    2025年9月17日
    28600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信