Linux如何正确关闭进程?

通过进程ID(PID)关闭进程

查找目标进程的PID

  • 使用 ps 命令配合 grep 搜索:

    ps aux | grep "进程名"

    示例:关闭Firefox浏览器

    ps aux | grep firefox

    输出结果第二列为PID(如 12345)。

  • 使用 pgrep 快速获取PID:

    pgrep firefox  # 直接返回PID

使用 kill 命令终止进程

  • 温和终止(允许进程保存数据):
    kill PID        # 默认发送SIGTERM信号(15)
  • 强制终止(立即结束,无清理):
    kill -9 PID     # 发送SIGKILL信号(9)

    ⚠️ 风险提示:强制终止可能导致数据丢失,仅用于无响应进程。


通过进程名批量关闭进程

killall 命令

  • 终止所有同名进程:
    killall 进程名          # 默认SIGTERM
    killall -9 进程名       # 强制SIGKILL

    示例:关闭所有chrome进程

    killall chrome

pkill 命令

  • 支持模式匹配(如进程名、用户等):
    pkill "进程名"          # 默认SIGTERM
    pkill -9 -f "进程名"    # -f匹配完整命令

    示例:关闭所有包含node的进程

    pkill -f node

图形界面关闭进程

系统监视器(GUI工具)

  • 步骤:
    1. 打开系统监视器(Ubuntu:gnome-system-monitor,CentOS:xorg-x11-apps包)。
    2. 在“进程”选项卡中找到目标进程。
    3. 右键点击 → 选择“结束进程”或“强制结束”。

xkill 工具(针对无响应窗口)

  • 在终端输入:
    xkill

    鼠标会变成X图标 → 点击无响应窗口即可关闭。


高级工具管理进程

top / htop 动态监控

  • 操作步骤:
    1. 运行 top(或安装 htopsudo apt install htop)。
    2. k 键 → 输入要终止的PID → 选择信号(默认15)。
    3. Enter 确认终止。

systemctl 管理系统服务

  • 关闭系统服务进程:
    sudo systemctl stop 服务名   # 如nginx、mysql

⛔ 关键注意事项

  1. 信号区别
    • SIGTERM(15):请求正常退出,进程可清理资源(推荐首选)。
    • SIGKILL(9):强制终止,系统直接回收资源(仅用于顽固进程)。
  2. 权限要求
    • 用户只能关闭自己的进程。
    • 关闭系统级进程需 sudo 提权。
  3. 风险规避
    • 避免对系统关键进程(如systemdsshd)使用kill -9,可能导致系统不稳定。
    • 数据库或存储类进程优先尝试正常停止命令(如mysqladmin shutdown)。

问题排查技巧

  • 进程无法关闭? 检查权限:sudo kill PID
  • 进程反复重启? 可能是守护进程,需停止服务:sudo systemctl stop 服务名
  • 误操作恢复:立即保存工作,部分应用支持崩溃恢复(如LibreOffice)。

总结建议

  • 首选顺序:kill [PID]killall/pkillkill -9(最后手段)。
  • 图形界面用户优先使用系统监视器,操作直观安全。
  • 生产环境中慎用强制终止,避免数据损坏。

引用说明参考Linux man手册(man kill/man pkill)、Ubuntu官方文档及《Linux命令行与Shell脚本编程大全(第4版)》,实践方法已在Ubuntu 22.04/CentOS 7环境中验证。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6259.html

(0)
酷番叔酷番叔
上一篇 2025年7月5日 01:21
下一篇 2025年7月5日 01:47

相关推荐

  • 如何实现linux计划任务

    Linux 中,通过 crontab 命令设置计划任务,编辑任务列表,指定

    2025年8月16日
    5100
  • Linux如何释放被占用的磁盘空间?

    Linux系统在使用过程中,磁盘空间不足是常见问题,可能由日志文件堆积、缓存未清理、软件包残留、大文件或重复文件等多种原因导致,释放被占用的空间需要系统性地排查和清理,本文将详细介绍各类场景下的具体操作方法,帮助用户高效回收磁盘空间,排查空间占用原因在清理前,需先定位主要占用空间的目录或文件,避免盲目操作,常用……

    2025年10月1日
    3900
  • linux如何获取管理员权限

    Linux 中,可使用 sudo 命令获取管理员权限,执行需管理员密码授权

    2025年8月18日
    5900
  • Linux库如何正确添加?高效开发必备技巧

    库的类型与识别静态库(.a 文件)编译时直接嵌入程序,生成独立可执行文件,命名格式:libxxx.a(如 libmath.a),动态库(.so 文件)运行时加载,多个程序共享,节省资源,命名格式:libxxx.so(如 libmath.so.1.0),添加库的4种方法方法1:复制到标准库路径(推荐系统级使用)步……

    2025年7月24日
    6000
  • Linux如何检查GCC是否安装?

    通过终端命令检查查看GCC版本(最常用) gcc –version输出结果分析:若已安装:显示版本号(如 gcc (Ubuntu 11.4.0) 11.4.0),若未安装:提示 Command ‘gcc’ not found,原理:调用GCC的版本信息,系统会检查可执行文件路径(/usr/bin/gcc),检……

    2025年7月12日
    6400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信