温馨提示×

怎样管理linux进程

小樊
41
2026-09-15 17:03:25
栏目: 智能运维

在 Linux 中,“管理进程”通常包括:查看进程、控制进程(启动/暂停/结束)、调整优先级、后台运行、监控资源、以及自动化管理。下面按实用场景系统讲一下。


一、查看进程

1. ps —— 查看当前进程快照

ps aux
ps -ef

常用组合:

  • ps aux:BSD 风格,信息直观
  • ps -ef:System V 风格

2. top / htop —— 实时查看

top
htop   # 需安装,更友好

可看:

  • CPU、内存占用
  • 进程状态(R/S/D/Z)

3. pstree —— 进程树

pstree
pstree -p

二、进程的启动与管理

1. 前台 / 后台运行

command &        # 后台运行
nohup command &  # 退出终端也不中断

2. 作业控制

jobs         # 查看后台任务
fg %1        # 调到前台
bg %1        # 继续后台运行
Ctrl+Z       # 暂停前台进程

三、结束 / 控制进程

1. kill —— 发信号

kill PID
kill -9 PID      # 强制杀死
kill -TERM PID   # 默认,优雅退出

2. pkill / killall

pkill nginx
killall httpd

3. 常见信号

信号 含义
SIGTERM (15) 正常终止
SIGKILL (9) 强制杀死
SIGSTOP (19) 暂停
SIGCONT (18) 继续

四、调整进程优先级

1. nice

nice -n 10 command

2. renice

renice -n 5 -p PID

优先级范围:-20(最高) ~ 19(最低)


五、守护进程与服务管理

1. systemd(主流)

systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl status nginx
systemctl enable nginx

2. 查看系统资源

free -h
df -h
vmstat
iostat

六、进程状态说明(很重要)

状态 含义
R 运行中
S 睡眠(可唤醒)
D 不可中断睡眠(常是 IO)
Z 僵尸进程
T 暂停

七、常见问题处理

僵尸进程

  • 父进程未回收
  • 解决:重启父进程或 kill 父进程

进程占用 CPU 高

top -> 看 PID -> strace -p PID

八、进阶工具

  • lsof:查看进程打开的文件
  • strace:跟踪系统调用
  • perf:性能分析
  • cgroups / systemd:资源限制

如果你愿意,可以告诉我:

  • 你是 运维 / 开发 / 学习
  • 想管理 某个具体服务(如 Nginx、Java、Python)?
  • 还是想了解 进程原理(fork/exec)

我可以直接给你针对性方案或脚本

0