如何终止Linux中的进程 kill和killall命令使用指南

昨晚调试服务器,发现CPU利用率飙升至9 0%。
当我打开顶部时,我看到旧的mysqld进程占用了8 0%。
我不小心使用kill发送了一个SIGTERM,它实际上变慢并提示“正在保存会话...”。
但今天早上我发现它又可以工作了,但出了点问题。
等等,我查看日志,发现定时的crontab任务又启动了。
这是kill-9 真正起作用的时候,但我仍然想先测试一下是否可以更改脚本以不启动它。
突然碰巧用killall杀死了所有python进程,但是后台运行的机器学习模型也被杀死了,所有数据都丢失了,重新计算了一天。
这件事发生在2 02 3 年4 月1 5 日,当时还在使用旧的CentOS 7 系统。
现在使用 systemd 来管理进程更加方便。
只需 systemctl stop 服务名称即可完成。
但你仍然需要知道谋杀的细节。
如果系统恢复到旧版本怎么办?

Linux如何终止运行中的进程 kill命令使用指南

结论: 终止 Linux 上的进程。
1 . 使用 ps、top、pgrep(例如 ps aux|grep python)查找 PID。
2 . 终止进程。
如果禁用 SIGKILL(杀死 PID),则默认为 SIGTERM(杀死 PID)。
3 . 您没有足够的权限使用sudo。
4 . 通过发送其他信号(例如 -HUP (kill -HUP PID))来重新加载配置。

Linux使用kill命令的注意事项介绍

Kill命令:通过PID杀死单个进程(如kill -9 1 2 3 4 )。
Killall 命令:按进程名称杀死所有匹配的进程(如killall perl)。

确认进程名称: /proc/$pid/cmdline:启动命令本身。
/proc/$pid/stat:操作系统识别的程序名。

信号类型: SIGTERM (1 5 ):允许进程终止,推荐。
SIGKILL (9 ):强制终止,可能导致数据损坏。

要点: 验证进程名称是否唯一,以避免误杀(如nginx)。
sudo 提权:sudo Kill -9 1 2 3 4
选项: pkill:通过命令行进行模式匹配(pkill -f“perl -w...”)。
PID文件管理器:将PID记录到文件并调用kill。

实用提醒: 首先确认进程信息,然后使用准确的命令进行操作。