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)}'
相关推荐
疯狂飙车的蜗牛28 分钟前
从零玩转CanMV-K230(4)-小核Linux驱动开发参考
linux·运维·驱动开发
恩爸编程1 小时前
探索 Nginx:Web 世界的幕后英雄
运维·nginx·nginx反向代理·nginx是什么·nginx静态资源服务器·nginx服务器·nginx解决哪些问题
Michaelwubo2 小时前
Docker dockerfile镜像编码 centos7
运维·docker·容器
远游客07133 小时前
centos stream 8下载安装遇到的坑
linux·服务器·centos
好像是个likun3 小时前
使用docker拉取镜像很慢或者总是超时的问题
运维·docker·容器
LIKEYYLL5 小时前
GNU Octave:特性、使用案例、工具箱、环境与界面
服务器·gnu
云云3215 小时前
搭建云手机平台的技术要求?
服务器·线性代数·安全·智能手机·矩阵
云云3215 小时前
云手机有哪些用途?云手机选择推荐
服务器·线性代数·安全·智能手机·矩阵
cominglately6 小时前
centos单机部署seata
linux·运维·centos
CircleMouse6 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos