你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!


📈用户数目📈

目前论坛共有2843位seeker

🎉欢迎新用户🎉

NodeSeek
New on NodeSeek? Please read our Community Rules.

linux top命令笔记-以不知名小鸡为例

swagswag 楼主 #0
in 日常

哈哈,最近在学linux就对top命令进行了一些整理,还望各位大佬不要笑话,欢迎到我的博客来查看以获得更好体验! https://696988.xyz/post/21

引言

top 是 Linux 操作系统中的一个常用命令,用于实时显示系统进程的状态信息。它显示了系统中正在运行的进程,包括它们的 CPU 使用率、内存使用情况、进程 ID 等。通过 top 命令,系统管理员可以监控系统的性能,并对占用系统资源过多的进程进行处理。

<!-- more -->

例子

运行 top 后,系统返回:

top - 14:28:28 up 35 days,  2:01,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  52 total,   1 running,  51 sleeping,   0 stopped,   0 zombie
%Cpu(s): 17.3 us,  4.1 sy,  0.0 ni, 78.3 id,  0.3 wa,  0.0 hi,  0.0 si,  0.0 st
top - 14:28:47 up 35 days,  2:01,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  52 total,   1 running,  51 sleeping,   0 stopped,   0 zombie
%Cpu(s): 13.3 us,  0.0 sy,  0.0 ni, 86.7 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
MiB Mem :    256.0 total,      8.9 free,    152.0 used,     95.1 buff/cache
MiB Swap:     32.0 total,      0.0 free,     32.0 used.    104.0 avail Mem 

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND                                      
      1 root      20   0  109608   6884   4324 S   0.0   2.6   5:15.00 systemd                                      
     52 root      20   0   32000   6000   5168 S   0.0   2.3   1:26.96 systemd-journal                              
     71 systemd+  20   0   16052    736      0 S   0.0   0.3   1:54.93 systemd-network                              
     82 root      20   0    3748   1008    764 S   0.0   0.4   0:14.20 cron                                         
     83 message+  20   0    8260   1924   1244 S   0.0   0.7   0:15.94 dbus-daemon                                  
     85 root      20   0  151164    668      0 S   0.0   0.3   0:02.65 rsyslogd                                     
     86 root      20   0   14020   2816   1992 S   0.0   1.1   0:09.32 systemd-logind                               
     89 systemd+  20   0   24112   1156    128 S   0.0   0.4   0:05.97 systemd-resolve                              
    208 root      20   0    2508    116      0 S   0.0   0.0   0:00.00 agetty                                       
    209 root      20   0    2508    112      0 S   0.0   0.0   0:00.00 agetty                                       
    210 root      20   0    2508    112      0 S   0.0   0.0   0:00.00 agetty                                       
    368 root      20   0   40052    528    324 S   0.0   0.2   0:21.84 master                                       
    371 postfix   20   0   40352    824    560 S   0.0   0.3   0:04.60 qmgr                                         
   3863 root      20   0 1263236  13156   6912 S   0.0   5.0  34:30.50 containerd                                   
   4004 root      20   0 1391224  16936      0 S   0.0   6.5  13:19.93 dockerd                                      
  17188 root      20   0  726728  17160  10236 S   0.0   6.5  33:04.98 nezha-agent                                  
  18784 root      20   0   15084    968      0 S   0.0   0.4   0:00.02 systemd                                      
  18785 root      20   0  104368   2112      0 S   0.0   0.8   0:00.00 (sd-pam)                                     
  28052 root      20   0    6272   1888      0 S   0.0   0.7   0:45.18 screen                                       
  28053 root      20   0    4164      4      4 S   0.0   0.0   0:00.00 bash                                         
  28054 root      20   0    4164    160      0 S   0.0   0.1   0:00.00 bash                                         
  28058 root      20   0    4164      8      4 S   0.0   0.0   0:00.00 bash                                         
  29013 root      20   0    4164    128      4 S   0.0   0.0   0:00.00 bash                                         
  30870 root      20   0    4164    524      4 S   0.0   0.2   0:00.00 bash                                         
  30882 root      20   0    4164    436      4 S   0.0   0.2   0:00.00 bash                                         
  30883 root      20   0    4164    392      4 S   0.0   0.1   0:00.00 bash                                         
  30884 root      20   0   41920  37684      4 S   0.0  14.4   0:48.90 bash                                         
  30893 root      20   0    4164    424      4 S   0.0   0.2   0:00.00 bash                                         
  30900 root      20   0    4164    432      4 S   0.0   0.2   0:00.00 bash                                         

解释

里面包括:

  • 第一行:系统运行时间、用户数、平均负载(即系统执行的任务数目)
  • Tasks 行:任务数,其中包括正在运行的、休眠的、停止的和僵尸进程。
  • %Cpu(s) 行:CPU 使用情况,给出不同状态下 CPU 使用的百分比。
  • MiB Mem 行:内存使用情况。
  • 剩下的是进程列表,按照 CPU 使用率排序,列出每个进程的 PID、用户、内存使用率、以及正在执行的命令。

我们来逐个逐项解释一下:

  • top - 14:28:28 up 35 days, 2:01, 1 user, load average: 0.00, 0.00, 0.00top:表示运行的命令是 top,它是一个系统监视工具,显示当前系统的资源使用情况。14:28:28:表示当前系统时间。up 35 days, 2:01:表示系统已经运行了 35 天 2 小时 1 分钟。1 user:表示当前系统有 1 个用户。load average: 0.00, 0.00, 0.00:表示系统的平均负载,是一个三元组,分别代衠过去 1、5、15 分钟的平均负载。

  • Tasks: 52 total, 1 running, 51 sleeping, 0 stopped, 0 zombieTasks:表示当前系统运行的任务数量。total:表示当前总任务数。running:表示当前正在运行的任务数。sleeping:表示当前处于睡眠状态的任务数。stopped:表示当前处于停止状态的任务数。zombie:表示当前处于僵尸状态的任务数。

  • %Cpu(s): 17.3 us, 4.1 sy, 0.0 ni, 78.3 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st%Cpu(s):表示 CPU 的使用率。us:表示用户空间占用 CPU 的时间比率。sy:表示内核空间占用 CPU 的时间比率。

  • MiB Mem : 这是内存(Memory)的单位,MiB 是兆字节的缩写(1 MiB = 1024 * 1024 Bytes)。

    • 256.0 total:这是系统内存的总量,256.0 MiB。
    • 8.9 free:这是当前空闲内存的量,8.9 MiB。
    • 152.0 used:这是当前已使用的内存量,152.0 MiB。
    • 95.1 buff/cache:这是用于缓存的内存量,95.1 MiB。
  • "MiB Swap"表示交换空间的大小,以兆字节为单位。

    • "32.0 total" 表示交换空间总大小为 32.0 MB
    • "0.0 free" 表示没有空闲的交换空间
    • "32.0 used" 表示 32.0 MB 的交换空间正在使用
    • "104.0 avail Mem" 表示可用内存,包括未使用的缓存/缓冲区和已分配但未使用的内存,共计 104 MB

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND

  1. PID:进程的唯一标识符
  2. USER:进程所有者的用户名
  3. PR:优先级
  4. NI:"Nice"值,表示进程的调度优先级
  5. VIRT:虚拟内存大小(以KB为单位)
  6. RES:实际内存使用(以KB为单位)
  7. SHR:共享内存大小(以KB为单位)
  8. S:状态,可以是D(不可中断),R(运行),S(睡眠)等
  9. %CPU:进程占用的CPU百分比
  10. %MEM:进程占用的内存百分比
  11. TIME+:进程使用的时钟周期(以分钟为单位)
  12. COMMAND:启动该进程的命令名称/命令行

COMMAND 里的内容:

  1. systemd:是 Linux 系统的核心,负责启动和管理系统上的各种服务和进程。

  2. systemd-journal:记录系统日志并将其保存到系统日志文件中。

  3. systemd-network:管理和配置网络连接。

  4. cron:是一个计划任务工具,可以在指定的时间执行命令或脚本。

  5. dbus-daemon:是一个用于在应用程序之间进行通信的中间件。

  6. rsyslogd:是一个日志管理工具,负责收集系统日志并将其记录到系统日志文件中。

  7. systemd-logind:管理和监控系统登录和注销。

  8. systemd-resolve:管理域名解析。

  9. agetty:是一个终端控制程序,允许用户从终端登录系统。

  10. containerd:是一个轻量级容器管理器,用于管理容器的生命周期。

  11. dockerd:是 Docker 容器引擎的核心,负责管理容器的生命周期。

  12. nezha-agent:是一个用于管理和监控应用程序的代理程序。

  13. (sd-pam):是一个 PAM(Pluggable Authentication Modules)的守护进程,用于认证用户。

  14. screen:是一个是一个终端复制程序,它可以允许用户在同一时刻运行多个 shell 会话

其他提示

  • 可以按下 shift+m 来按占用从大到小排序
  • 类似的命令还有 htop ps -ef

Comments

  • swagswag 楼主 #1

    好吧,果然长文没人看 xhj017

  • 好帖 绑定

  • 以后俺的博客内容就靠抄了 xhj017

  • 帮你补充:
    h: 帮助
    q: 退出
    l: 负载
    t: 处理器
    1: 处理器汇总模式
    m: 内存
    E: 内存显示单位
    z: 配色
    W: 把当前配置写入用户配置文件($HOME/.config/procps/toprc)

  • 不错 收藏 xhj025

  • 博客主题不错,收藏了

  • 不错 收藏起来

  • apt install htop
    htop可以动态刷新,还可以选中一个进程停掉
    可以把htop当任务管理器用

  • 收藏起来

  • htop好用+1

登录 或者 注册 后评论.