在Linux系统中,vmstat命令用于报告虚拟内存统计信息。它提供了对系统内存、进程、I/O等关键指标的实时监视。基本用法如下:

vmstat [选项] [时间间隔] [次数]
  • 选项:用于指定vmstat命令的一些额外选项。
    • -a, --active:显示活跃和非活跃内存的详细信息。
    • -d, --disk:显示磁盘I/O统计信息。
    • -S, --unit:指定输出单位。可选值为 k、K、m、M,默认为 kB。
    • -t, --timestamp:显示时间戳。
    • -V, --version:显示vmstat命令的版本信息。
  • 时间间隔:可选参数,指定两次采样之间的时间间隔,单位为秒。如果不指定时间间隔,默认为一次性的统计数据。
  • 次数:可选参数,指定采样的次数。如果不指定次数,则默认为持续输出。

示例:

  1. 显示默认虚拟内存统计信息:

    vmstat
    
  2. 每1秒采样一次,连续输出3次虚拟内存统计信息:

    vmstat 1 3
    
  3. 显示活跃和非活跃内存的详细信息:

    vmstat -a
    
  4. 显示磁盘I/O统计信息:

    vmstat -d
    
  5. 显示时间戳:

    vmstat -t
    

注意:vmstat命令的输出结果中的各列含义如下:

  • procs:进程统计信息,包括运行队列长度、上下文切换次数等。
  • memory:内存统计信息,包括物理内存、虚拟内存、活跃和非活跃内存等。
  • swap:交换空间统计信息,包括交换分区使用情况。
  • io:I/O统计信息,包括块设备的读写次数、传输速度等。
  • system:系统统计信息,包括中断次数、上下文切换次数等。
  • cpu:CPU统计信息,包括用户态、系统态、空闲时间等。

vmstat命令可以提供对系统性能的实时监视,帮助了解系统的运行状况、检测性能瓶颈和优化系统配置。