介绍
本实验将介绍用于管理进程和系统资源的基本 Linux 工具。作为初学者,你将学习如何使用 ps、top 和 free 命令来监控和分析系统进程及内存使用情况。这些工具是理解 Linux 系统运行状态的基础。
目标
完成本实验后,你将能够:
- 使用
ps列出和过滤进程 - 使用
top实时监控进程 - 使用
free检查系统内存使用情况
本实验将介绍用于管理进程和系统资源的基本 Linux 工具。作为初学者,你将学习如何使用 ps、top 和 free 命令来监控和分析系统进程及内存使用情况。这些工具是理解 Linux 系统运行状态的基础。
完成本实验后,你将能够:
ps 列出和过滤进程top 实时监控进程free 检查系统内存使用情况让我们从使用 ps 命令列出系统上运行的所有进程开始。
打开终端。你应该位于 /home/labex/project 目录中。如果不确定,可以通过输入 pwd 并按 Enter 键来检查当前目录。
运行以下命令以列出所有进程:
ps -e
这将显示所有进程的列表,包括它们的进程 ID (PID)、终端 (TTY)、CPU 时间和命令名称。
花点时间检查输出。你会看到系统进程和用户进程。以下是每一列的含义:
如果看到不熟悉的进程名称,请不要担心;其中许多是运行在后台的系统进程。
现在,让我们获取有关进程的更详细信息。
运行以下命令:
ps aux
该命令显示所有进程的详细列表,包括启动进程的用户、CPU 和内存使用情况以及完整的命令行。
输出可能会很长。你可以使用 less 命令更轻松地查看:
ps aux | less
这将 ps aux 的输出通过管道传递给 less,从而允许你滚动查看。
在 less 查看器中:
Space 键向前翻一页b 键向后翻一页q 键退出 less 查看器让我们分解一下你看到的内容:
如果你现在不理解所有这些内容,请不要担心。随着经验的积累,你会逐渐熟悉这些术语。
你可以过滤进程,仅显示属于特定用户的进程。当你希望专注于某个特定用户账户拥有的进程时,这非常有用。
要查看由 root 用户拥有的进程,请运行:
ps -u root
root 用户是 Linux 系统中的超级用户,拥有完整的系统访问权限。许多系统进程都以 root 账户运行。
要查看由当前用户(labex)拥有的进程,请运行:
ps -u labex
这将显示你在自己的用户账户下启动的所有进程。
比较这两个命令的输出。你可能会发现 root 用户下的进程比你用户账户下的进程更多。
top 命令提供了一个动态的、实时的运行进程视图。它就像是系统的实时仪表盘。
运行以下命令:
top
你将看到一个持续更新的系统进程显示,按 CPU 使用率排序。显示内容分为两个主要部分:
在 top 中,你可以使用以下命令:
M 键按内存使用率排序,而不是 CPUP 键返回按 CPU 使用率排序T 键按运行时间排序N 键按 PID 排序q 键退出 top摘要区域包括重要的系统信息:
花些时间探索 top。它是一个强大的工具,可以帮助你实时了解系统上正在发生的事情。
free 命令允许你快速轻松地检查系统的内存使用情况。
运行以下命令以人类可读的格式查看内存使用情况:
free -h
-h 选项表示“人类可读”(human-readable),以 1024 的幂次方显示大小(例如,1K、234M、2G)。
你将看到类似以下的输出:
total used free shared buff/cache available
Mem: 7.7G 4.1G 287M 624M 3.3G 2.7G
Swap: 2.0G 506M 1.5G
让我们分解每一行和每一列的含义:
列:
如果“free”内存看起来很低,请不要惊慌。Linux 使用可用内存进行磁盘缓存以提高系统性能,但如果应用程序需要,这些内存可以被回收。
在本实验中,你学习了如何使用关键的 Linux 进程管理工具:
ps 列出和过滤进程top 实时监控进程free 检查系统内存使用情况这些命令对于系统管理和故障排除至关重要。它们让你能够深入了解系统上正在运行的内容、资源的使用情况,并帮助你识别潜在问题。
随着你对这些工具的熟悉程度提高,你可以探索更多选项,并将它们与其他 Linux 命令结合使用,以进行更高级的系统分析。例如:
ps 与 grep 结合使用以查找特定进程top 中的详细信息以识别资源密集型应用程序free 来监控内存使用情况随时间的变化请记住,熟能生巧!不要犹豫,在自己的环境中尝试这些命令,以加深对 Linux 进程管理的理解。你使用这些工具的次数越多,它们就会变得越直观。