You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04重启/关机失败:NetworkManager与wpa_supplicant无法停止

Ubuntu 22.04重启/关机失败:NetworkManager与wpa_supplicant无法停止

看起来你遇到的是Ubuntu 22.04里NetworkManager和wpa_supplicant进程在关机或重启时卡住的典型问题,我之前帮朋友排查过类似情况,给你几个可行的解决思路,你可以逐一尝试:

  • 排查异常进程与日志
    首先先确认是否有异常的进程实例或者日志里的错误信息:

    • 查看当前运行的wpa_supplicant进程:ps aux | grep wpa_supplicant,如果发现多余的非系统默认进程,先用sudo kill -9 <进程ID>手动终止,再尝试关机测试。
    • 查看上一次启动的NetworkManager日志,定位挂起原因:journalctl -u NetworkManager -b -1,日志里通常会提示是某个网络设备未释放,还是服务本身的依赖问题。
  • 调整systemd服务的停止规则
    有时候是systemd的服务停止顺序或超时设置导致进程无法正常退出,我们可以强制修改服务的停止行为:

    1. 编辑NetworkManager的服务配置:sudo systemctl edit NetworkManager.service
    2. 在打开的临时文件中添加以下内容:
      [Service]
      ExecStop=/usr/bin/killall -TERM NetworkManager
      ExecStopPost=/usr/bin/killall -9 NetworkManager
      TimeoutStopSec=5
      
    3. 同样处理wpa_supplicant:sudo systemctl edit wpa_supplicant.service,添加相同格式的配置:
      [Service]
      ExecStop=/usr/bin/killall -TERM wpa_supplicant
      ExecStopPost=/usr/bin/killall -9 wpa_supplicant
      TimeoutStopSec=5
      
    4. 保存退出后,重新加载systemd配置:sudo systemctl daemon-reload,然后测试关机。
  • 检查内核与驱动兼容性
    你使用的5.19.0-32-generic内核版本可能存在部分无线网卡驱动的兼容性问题,导致进程无法释放硬件资源:

    • 尝试升级到最新的稳定内核:sudo apt update && sudo apt upgrade linux-generic,升级完成后重启系统,再测试关机流程。
    • 如果你的无线网卡是Realtek等第三方品牌,可以检查是否有对应的DKMS驱动包需要更新,比如通过apt安装官方维护的驱动版本。
  • 临时应急脚本方案
    如果上面的方法暂时无法解决,可以先设置一个关机前的自动脚本,提前终止这两个服务:

    1. 创建脚本文件:sudo nano /usr/local/bin/pre-shutdown.sh
    2. 写入以下内容:
      #!/bin/bash
      sudo systemctl stop NetworkManager
      sudo systemctl stop wpa_supplicant
      sleep 2
      
    3. 给脚本添加执行权限:sudo chmod +x /usr/local/bin/pre-shutdown.sh
    4. 创建对应的systemd服务:sudo nano /etc/systemd/system/pre-shutdown.service
    5. 写入服务配置:
      [Unit]
      Description=Pre Shutdown Script
      DefaultDependencies=no
      Before=shutdown.target reboot.target halt.target
      
      [Service]
      Type=oneshot
      ExecStart=/usr/local/bin/pre-shutdown.sh
      
      [Install]
      WantedBy=shutdown.target reboot.target halt.target
      
    6. 启用服务:sudo systemctl enable pre-shutdown.service

备注:内容来源于stack exchange,提问作者Olivier

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 12:52:44