如何在 Linux 下终止一个进程

热门:
升级您的服务器配置! 申请 AVA 并使用 立减 15%
使用优惠码:

在 Linux 中自信地终止进程

管理进程是任何运行 Linux 系统的人都必须掌握的核心技能,无论你是在维护个人项目,还是在 ava.hosting 的 robust VPSdedicated servers 上管理高性能应用。进程——正在运行的程序实例——有时会冻结、消耗过多资源,或需要手动终止。了解如何识别并安全地停止这些进程,可确保你的系统保持高效和稳定。例如,如果某个卡住的 web server 进程正在拖慢你的网站,干净地终止它可以在不造成停机的情况下恢复性能。本指南介绍了在 Linux 中终止进程的基本工具和方法。

Linux 中的进程是什么?

进程是正在运行的程序实例。每个 Linux 进程都有一个唯一的 PID (Process ID),用于监控或控制它。

在以下情况下,你可能希望终止一个进程:

  • 它消耗了太多资源
  • 它被阻塞或冻结
  • 你需要重启服务或应用程序
  • 你想手动停止后台脚本或 daemon

步骤 1:识别进程

在终止任何内容之前,你需要找到该进程的 PID。以下是几种方法:

使用 ps

ps aux | grep process_name

使用 top 或 htop

  • 启动 top,并在最左侧列中搜索 PID。
  • htop(如果已安装)提供交互式、用户友好的界面。

使用 pidof

pidof process_name

步骤 2:结束进程

方法 1:kill(按 PID)

发送终止信号(默认 SIGTERM – signal 15):

kill PID

方法 2:kill -9(强制终止)

如果进程在正常 kill 信号下没有停止,请使用 SIGKILL(signal 9):

kill -9 PID

方法 3:killall(按名称)

要终止所有具有特定名称的进程:

killall process_name

强制版本:

killall -9 firefox

方法 4:pkill(模式匹配)

pkill 使用 regex 模式匹配进程名称:

pkill process_name

强制:

pkill -9 process_name

方法 5:xkill(用于 GUI 应用程序)

  1. 运行:
    xkill
  2. 点击你想关闭的窗口。

常见信号

SignalNumberDescription
SIGTERM15Graceful stop
SIGKILL9Immediate forced stop
SIGHUP1Hang up / restart daemon
SIGINT2Interrupt (Ctrl+C)

需要牢记的事项

  • 始终先尝试以平稳方式终止进程(
    kill

    ),然后再使用更强制的方法,如

    kill -9

  • 务必检查 PID,以免杀死重要的系统进程。
  • 对于关键服务,请使用系统管理工具,例如:
    sudo systemctl restart apache2

如果你经常管理进程,请安装 htop:

sudo apt install htop # Debian/Ubuntu sudo yum install htop # CentOS/RHEL

结论

在 Linux 中终止进程是维护系统性能的一项重要技能。无论你是使用

pkill

停止一个冻结的 Python 脚本,还是使用

systemctl

重启 Nginx 以解决 web server 问题,这些工具都能让你精确控制系统。通过掌握这些命令并使用 ava.hosting 可靠的基础设施,你可以让 Linux 环境平稳运行。