linux top命令介绍以及使用

文章目录


介绍 top 命令

top 是一个在类 Unix 系统中广泛使用的命令行工具,用于实时显示系统的资源使用情况。它提供了有关 CPU、内存、进程等的详细信息,使用户能够监控系统的性能和健康状态。以下是对 top 命令及其主要功能的详细介绍。

1. top 的基本功能

  • 实时监控 : top 实时显示系统的资源使用情况,包括 CPU 和内存使用、任务状态等。
  • 动态更新: 输出信息会定期更新,默认每 3 秒刷新一次,但用户可以根据需要调整刷新频率。
  • 进程管理 : top 列出了当前运行的进程,并提供了多种操作来管理这些进程,如排序、杀死进程等。

2. 如何启动 top

在终端中输入 top 并按回车,即可启动 top 命令。启动后,你将看到一个包含系统资源和进程信息的动态更新的界面。

3. top 的输出解释

top 命令的输出分为几个主要部分,每个部分提供不同类型的信息:

bash 复制代码
top - 14:11:32 up 1023 days, 23:10,  2 users,  load average: 0.00, 0.01, 0.05
Tasks: 118 total,   1 running, 116 sleeping,   0 stopped,   1 zombie
%Cpu(s):  3.2 us,  3.2 sy,  0.0 ni, 93.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  3880184 total,   407804 free,   630472 used,  2841908 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  2950964 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                      
    1 root      20   0   52964   4000   2460 S   0.0  0.1 122:54.86 systemd                                                                      
    2 root      20   0       0      0      0 S   0.0  0.0   0:16.26 kthreadd                                                                     
    4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                                                                 
    6 root      20   0       0      0      0 S   0.0  0.0  56:48.31 ksoftirqd/0
    7 root      rt   0       0      0      0 S   0.0  0.0  17:36.28 migration/0                                                                  
    8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh                                                                       
    9 root      20   0       0      0      0 S   0.0  0.0 443:35.78 rcu_sched                                                                    
   10 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 lru-add-drain                                                                
   11 root      rt   0       0      0      0 S   0.0  0.0   3:37.92 watchdog/0                                                                   
   12 root      rt   0       0      0      0 S   0.0  0.0   3:07.31 watchdog/1                                                                   
   13 root      rt   0       0      0      0 S   0.0  0.0  17:39.39 migration/1                                                                  
   14 root      20   0       0      0      0 S   0.0  0.0  47:57.19 ksoftirqd/1                                                                  
   16 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/1:0H                                                                 
   18 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kdevtmpfs                                                           
   19 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 netns                                                                        
   20 root      20   0       0      0      0 S   0.0  0.0   0:23.32 khungtaskd                                                                   
   21 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 writeback                                                                    
   22 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kintegrityd                                                                  
   23 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 bioset

系统概况

复制代码
top - 14:11:32 up 1023 days, 23:10,  2 users,  load average: 0.00, 0.01, 0.05
  • 当前时间 (14:11:32): 显示系统当前时间。
  • 系统运行时间 (up 1023 days, 23:10): 系统从上次启动以来的运行时间。
  • 登录用户数 (2 users): 当前系统中的登录用户数量。
  • 负载均衡 (load average: 0.00, 0.01, 0.05): 系统负载平均值,分别表示过去1分钟、5分钟和15分钟的平均负载。较低的负载表示系统负荷较轻。

任务和 CPU 使用情况

复制代码
Tasks: 118 total,   1 running, 116 sleeping,   0 stopped,   1 zombie
%Cpu(s):  3.2 us,  3.2 sy,  0.0 ni, 93.5 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
  • 任务状态 (Tasks): 显示当前系统中的任务状态,包括总任务数、运行中的任务、休眠中的任务、停止的任务和僵尸任务数量。
  • CPU 使用情况 (%Cpu(s)): 显示 CPU 的使用情况,包括用户空间、系统空间、空闲、等待 I/O 操作、硬中断、软件中断等的占比。

内存和交换空间

复制代码
KiB Mem :  3880184 total,   407804 free,   630472 used,  2841908 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  2950964 avail Mem
  • 内存使用情况 (KiB Mem): 显示系统内存的总量、已用量、空闲量以及缓冲区和缓存的占用量。
  • 交换空间使用情况 (KiB Swap): 显示系统交换空间的总量、已用量和空闲量。

进程信息

复制代码
  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
    1 root      20   0   52964   4000   2460 S   0.0  0.1 122:54.86 systemd
    2 root      20   0       0      0      0 S   0.0  0.0   0:16.26 kthreadd
    4 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H
  • PID: 进程 ID。
  • USER: 启动进程的用户。
  • PR: 进程优先级。
  • NI: 进程的 nice 值(优先级调整)。
  • VIRT: 进程使用的虚拟内存总量。
  • RES: 进程实际使用的物理内存量。
  • SHR: 进程使用的共享内存量。
  • S: 进程状态(如运行中、休眠中、僵尸等)。
  • %CPU: 进程使用的 CPU 百分比。
  • %MEM: 进程使用的内存百分比。
  • TIME+: 进程使用的总 CPU 时间。
  • COMMAND: 启动进程的命令。

4. 常用操作

  • 排序 : 按下 P 键可以按 CPU 使用率排序,按下 M 键可以按内存使用量排序。
  • 终止进程 : 按下 k 键并输入进程 ID,可以终止指定的进程。
  • 刷新间隔 : 按下 d 键并输入秒数,可以调整信息的刷新频率。

总结

top 命令是一个强大的系统监控工具,可以帮助用户实时查看系统资源使用情况、管理进程并诊断系统问题。通过理解 top 的输出,你可以更好地掌握系统的运行状态,进行性能优化和故障排查。

查看逻辑CPU的个数

bash 复制代码
cat /proc/cpuinfo| grep "processor"| wc -l

查看系统运行时间

bash 复制代码
cat /proc/uptime| awk -F. '{run_days=$1 / 86400;run_hour=($1 % 86400)/3600;run_minute=($1 % 3600)/60;run_second=$1 % 60;printf("系统已运行:%d天%d时%d分%d秒",run_days,run_hour,run_minute,run_second)}'
相关推荐
SelectDB1 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
zzzzzz3103 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode3 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
用户0328472220703 天前
如何搭建本地yum源(上)
运维
大树886 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠6 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质6 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
小宇宙Zz6 天前
Maven依赖冲突
java·服务器·maven
Inhand陈工6 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智6 天前
ARP代理--工作原理
运维·网络·arp·arp代理