作者信息:https://home.cnblogs.com/u/huangjiabobk

在Linux中,如何监控系统资源使用情况?

在Linux环境中,监控系统资源使用情况是系统管理和故障排查的关键环节。以下是一些主要的方法和命令来监控不同类型的系统资源:

1. CPU使用情况
  • tophtop:实时显示系统中各个进程对CPU资源的使用状况。top 是一个经典的命令行工具,而 htop 是其增强版本,提供了彩色界面和垂直/水平滚动功能。

    # 使用top命令
    top
    
    # 如果系统中有htop,则使用htop命令
    htop
    
  • mpstat:用于多处理器环境下的CPU使用情况统计,可显示每个CPU核心的负载。

    mpstat [interval] [count]
    
2. 内存使用情况
  • free:显示系统总的内存使用情况,包括物理内存和交换空间。

    free -h # 更人性化的单位显示
    
  • vmstat:除了内存外,还可以查看虚拟内存统计信息,如页入页出、交换活动等。

    vmstat [interval] [count]
    
3. 磁盘I/O监控
  • iostat:监控磁盘设备的读写操作统计信息。

    iostat [-dx] [interval] [count]
    
  • iotop:类似于top命令,但专门用于显示磁盘I/O使用情况,包括进程级别的读写速率和带宽使用。

    iotop
    
4. 系统整体统计
  • sar:系统活动报告工具,能记录并报告CPU、内存、磁盘、网络等各种资源的历史统计数据。

    sar -u [interval] [count] # CPU使用率
    sar -b [interval] [count] # I/O和传输速率
    sar -d [interval] [count] # 磁盘I/O统计
    
5. 进程活动监控
  • pspgrep/pkill:查看当前运行的进程及其资源使用情况。

    ps aux # 查看所有进程详细信息
    pgrep <process_name> # 按进程名查找进程ID
    pkill <process_name> # 结束指定名称的进程
    
  • lsof:列出当前系统打开的文件及其对应的进程信息。

    lsof
    
6. 网络流量监控
  • netstatss:显示网络连接、路由表、接口统计等信息。

    netstat -tulnp # 显示监听端口和网络连接
    ss -s # 统计套接字信息
    
7. 系统负载和运行时间
  • uptime:显示系统运行时间和负载。

    uptime
    

综上所述,可以根据需要定期收集系统数据,并根据实际情况作出相应调整,例如优化内存分配、限制高负载进程、调整磁盘I/O调度策略等,以保持系统高效稳定运行。此外,还有其他高级监控工具如 collectdPrometheusGrafana 等可以配合使用,实现长期监控和可视化展示。

posted @ 2024-04-11 10:48  黄嘉波  阅读(117)  评论(0编辑  收藏  举报
版权声明:原创作品,谢绝转载!否则将追究法律责任。--作者 黄嘉波