欢迎来到 Linux 进程管理的大课堂!在本节教程中,我们将从什么是进程开始,逐步了解 Linux 系统中如何管理和监控进程,深入探讨 PID、父子进程、权限、优先级等核心概念,并学会使用工具如 ps、btop、lsof 和 kill 来高效操作进程。最后,我们还将揭开 /proc 文件系统的神秘面纱。
ps
btop
lsof
kill
/proc
进程:在 Linux 中,进程是一个程序正在运行的实例。它是程序的具体执行,包括分配的资源和运行状态。
比喻:如果程序是一本菜谱,那么进程就是按照菜谱做饭的厨师!
ls
sshd
每个进程都有唯一的一个标识号,称为 PID。系统通过 PID 来管理和操作进程。
PPID 是创建该进程的父进程的 PID。所有进程最终的父进程都是 init(PID 为 1)。
init
比喻:一个进程的 PPID 就是它的“父亲”,所有进程的祖先是 init。
查看一个进程的 PID 和 PPID:
ps -o pid,ppid,comm -C bash
示例输出:
PID PPID COMMAND 1234 5678 bash
例如,sudo 提升权限后,EUID 会变成 0(root)。
sudo
root
查看进程的 UID 和 GID:
ps -o uid,euid,gid,egid,comm -C bash
Nice 值是进程的谦让度,范围从 -20(最高优先级)到 19(最低优先级)。 Nice 值越低,进程越不“谦让”,获得 CPU 时间片的概率越高。
-20
19
查看进程的 Nice 值:
ps -o pid,ni,comm -C bash
nice -n 10 command
renice -n 5 -p
ps 是最基础的查看进程信息的命令。
ps aux
a
u
x
btop 是一款图形化工具,用于实时监控进程、内存、CPU 使用情况:
lsof(List Open Files)显示当前系统中被打开的文件。 用途:
lsof /path/to/file
lsof -i :8080
kill 用于向进程发送信号,可以终止、暂停或唤醒进程。
SIGTERM
SIGKILL
SIGHUP
kill -9
killall -15
/proc 是一个虚拟文件系统,提供关于进程和系统的实时信息。
/proc/
/proc/cpuinfo
/proc/meminfo
/proc/loadavg
cat /proc//status
输出示例:
Name: bash State: S (sleeping) Pid: 1234 PPid: 5678 Uid: 1000 Gid: 1000
lsof -i :80
kill -15
cat /proc/$(pgrep bash)/status
通过本节内容,你应该已经掌握了以下技能:
多练习,多尝试,你一定会对 Linux 进程管理得心应手! 🎉
No replies yet
Popular Ranking
Popular Events
Linux 入门教程(十一):进程管理全面解析
欢迎来到 Linux 进程管理的大课堂!在本节教程中,我们将从什么是进程开始,逐步了解 Linux 系统中如何管理和监控进程,深入探讨 PID、父子进程、权限、优先级等核心概念,并学会使用工具如
ps
、btop
、lsof
和kill
来高效操作进程。最后,我们还将揭开/proc
文件系统的神秘面纱。一、什么是进程?
进程:在 Linux 中,进程是一个程序正在运行的实例。它是程序的具体执行,包括分配的资源和运行状态。
进程的类型:
ls
)。sshd
)。二、进程的 PID 和 PPID
1. PID(进程 ID)
每个进程都有唯一的一个标识号,称为 PID。系统通过 PID 来管理和操作进程。
2. PPID(父进程 PID)
PPID 是创建该进程的父进程的 PID。所有进程最终的父进程都是
init
(PID 为 1)。查看一个进程的 PID 和 PPID:
示例输出:
三、UID 和 EUID,GID 和 EGID
1. UID(用户 ID)和 GID(组 ID)
2. EUID 和 EGID
例如,
sudo
提升权限后,EUID 会变成 0(root
)。查看进程的 UID 和 GID:
四、谦让度和优先级
1. 什么是谦让度(Nice 值)?
Nice 值是进程的谦让度,范围从
-20
(最高优先级)到19
(最低优先级)。Nice 值越低,进程越不“谦让”,获得 CPU 时间片的概率越高。
查看进程的 Nice 值:
2. 修改 Nice 值
五、监视进程
1.
ps
:静态查看进程ps
是最基础的查看进程信息的命令。a
:显示所有用户的进程。u
:以用户友好的格式输出。x
:显示没有终端关联的进程。2.
btop
:动态监控进程btop
是一款图形化工具,用于实时监控进程、内存、CPU 使用情况:六、
lsof
查看占用文件的进程lsof
(List Open Files)显示当前系统中被打开的文件。用途:
七、
kill
命令:控制进程kill
用于向进程发送信号,可以终止、暂停或唤醒进程。1. 常见信号
SIGTERM
(15):优雅地终止进程。SIGKILL
(9):强制终止进程。SIGHUP
(1):重新加载配置。2. 使用示例
八、/proc 文件系统
/proc
是一个虚拟文件系统,提供关于进程和系统的实时信息。1. 常见路径
/proc/
:每个进程的信息。/proc/cpuinfo
:CPU 信息。/proc/meminfo
:内存信息。/proc/loadavg
:系统负载。2. 查看特定进程的信息
输出示例:
九、实战演练
任务 1:查看当前所有运行的进程
任务 2:找到占用某个端口的进程
任务 3:优雅终止进程
任务 4:实时监控系统资源
任务 5:通过 /proc 文件系统查看某进程状态
十、总结
通过本节内容,你应该已经掌握了以下技能:
ps
、btop
、lsof
和kill
等工具监控和管理进程。/proc
文件系统的基本用途。多练习,多尝试,你一定会对 Linux 进程管理得心应手! 🎉