监控系统进程
使用 `ps`、`top` 和 `htop` 等工具查看运行中的进程、识别资源占用过高的进程,并有效管理进程状态
监控系统进程 是 CoddyKit 上的免费 Linux Server Deployment & SSH Mastery 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Linux Server Deployment & SSH Mastery 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Linux Server Deployment & SSH Mastery 课程共包含 4 节课。
什么是进程?
在 Linux 中,进程是正在运行的程序实例。您执行的每个命令、打开的每个应用程序,都会启动一个或多个进程。
了解进程对于服务器管理至关重要。它可以帮助您监控系统状态、排查问题,并确保服务器平稳运行。
介绍 `ps`:进程快照
ps 命令(“process status”的缩写)可以显示当前正在运行的进程快照。
默认情况下,它会显示与当前终端会话相关的进程。这就像快速拍下系统当前状态的照片。
尝试直接运行 ps:
ps使用 `ps` 查看所有进程
要查看系统中运行的所有进程,而不仅仅是当前终端中的进程,您需要为 ps 使用特定选项。
常用方法有两种:
ps aux:显示所有用户的所有进程。ps -ef:同样显示所有进程,并采用完整格式。
让我们使用 ps aux 获取完整的进程列表:
ps aux解读 `ps aux` 输出
ps aux 的输出可能看起来令人不知所措,但其中几个关键列提供了重要信息:
- USER:拥有该进程的用户。
- PID:Process ID,即进程 ID,每个进程都有一个唯一编号。
- %CPU:该进程占用的 CPU 时间百分比。
- %MEM:该进程占用的物理内存百分比。
- COMMAND:启动该进程的命令。
这些信息可以帮助您确定哪个用户正在运行哪些进程,以及这些进程消耗了多少资源。
认识 `top`:实时监控
ps 提供的是快照,而 top(进程表)则会动态、实时地显示系统中的进程。
它每隔几秒更新一次,显示当前占用资源最多的进程。它支持交互操作,您可以对进程进行排序和筛选。
要退出 top,请按 q。
top了解 `top` 的显示内容
top 命令会显示两个主要部分:
- 摘要区域:顶部显示系统运行时间、用户数量、平均负载以及 CPU 和内存统计信息。
- 进程列表:摘要下方列出各个进程,默认通常按 CPU 使用率排序。
查找较高的 %CPU 和 %MEM 值,即可发现繁忙的进程。
`htop`:增强版 `top`
htop 是一个交互式进程查看器,类似于 top,但界面更加友好,并且提供了更多功能。
您通常需要先在服务器上安装它。对于基于 Debian/Ubuntu 的系统,请使用:
sudo apt update && sudo apt install htop安装完成后,只需输入 htop 即可运行。
htop使用 `htop` 的功能
与 top 相比,htop 有多项改进:
- 可视化条形图:使用彩色的 ASCII 条形图显示 CPU、内存和交换空间的使用情况。
- 更轻松的导航:使用方向键滚动,使用功能键执行常用操作(例如 F6 排序、F4 筛选、F9 终止进程)。
- 进程树:以层级树结构查看进程。
这是一个功能强大的进程可视化管理工具。
查找资源占用大户
top 和 htop 都非常适合查找占用过多资源(CPU 或内存)的进程。
在 top 中,进程通常按 %CPU 排序。在 htop 中,您可以通过点击列或使用 F6 轻松排序。
较高的 %CPU 或 %MEM 值表示该进程是“资源占用大户”,可能会拖慢服务器。
进程监控检查
您需要实时快速确定哪些进程占用的 CPU 和内存最多。哪个命令最适合完成这项任务?
回顾:监控您的进程
我们已经了解了 Linux 服务器上用于监控进程的基本工具:
ps:获取进程的静态快照。top:实时、动态地监控进程并查看系统概况。htop:功能增强、交互性更强的top版本。
掌握这些命令有助于保持服务器健康并维持良好性能!
常见问题解答
「监控系统进程」课时是免费的吗?
是的 — 「监控系统进程」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Linux Server Deployment & SSH Mastery 课程的其余内容,请升级到 CoddyKit PRO。 Linux Server Deployment & SSH Mastery 课程共包含 4 节课。
「监控系统进程」这节课中我会学到什么?
使用 `ps`、`top` 和 `htop` 等工具查看运行中的进程、识别资源占用过高的进程,并有效管理进程状态 你通过在浏览器中直接运行的动手代码来练习 Linux Server Deployment & SSH Mastery,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Linux Server Deployment & SSH Mastery 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Linux Server Deployment & SSH Mastery 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。
「监控系统进程」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Linux Server Deployment & SSH Mastery 课中编写并运行代码吗?
能。每节 Linux Server Deployment & SSH Mastery 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。