news 2026/5/6 21:12:42

停止服务怎么操作?正常与强制关闭方法说明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
停止服务怎么操作?正常与强制关闭方法说明

停止服务怎么操作?正常与强制关闭方法说明

1. 引言

在使用基于WebUI的图像修复系统时,正确地启动和停止服务是保障系统稳定运行的重要环节。本文将围绕「fft npainting lama重绘修复图片移除图片物品 二次开发构建by科哥」这一镜像环境,详细介绍如何安全、有效地停止正在运行的服务。

无论是日常使用后的正常退出,还是遇到卡死、无响应等异常情况下的强制终止,掌握正确的操作方式可以避免资源浪费、数据损坏或进程残留等问题。本文将从实际应用场景出发,提供清晰的操作指引和实用建议。


2. 系统运行机制简述

2.1 WebUI服务架构

该镜像基于Python Flask + Gradio框架构建了一个本地Web图形界面服务,核心启动脚本为start_app.sh,其主要功能包括:

  • 启动Flask后端服务
  • 加载FFT与LaMa图像修复模型
  • 绑定HTTP服务端口(默认7860)
  • 提供前端交互页面访问入口

服务启动后会在终端持续输出日志信息,并监听指定端口等待用户请求。

2.2 进程生命周期管理

服务以单进程模式运行,主进程由app.py驱动。操作系统通过该进程控制整个应用的资源分配与网络通信。因此,停止服务的本质就是安全结束该Python进程

理解这一点有助于我们选择合适的停止策略:正常中断信号 vs 强制杀进程。


3. 正常停止服务

3.1 操作前提条件

  • 服务是在当前终端中通过bash start_app.sh命令启动的
  • 终端仍处于打开状态且可交互
  • 未使用后台模式(如nohup、&)运行服务

3.2 标准停止流程

当满足上述条件时,推荐使用标准中断方式优雅关闭服务。

步骤一:定位运行终端

找到最初执行以下命令的终端窗口:

cd /root/cv_fft_inpainting_lama bash start_app.sh

确保能看到类似如下提示信息:

===================================== ✓ WebUI已启动 访问地址: http://0.0.0.0:7860 本地访问: http://127.0.0.1:7860 按 Ctrl+C 停止服务 =====================================
步骤二:发送中断信号

按下键盘组合键Ctrl + C

⚠️ 注意:不是点击鼠标复制,而是同时按住“Ctrl”键和“C”键。

步骤三:等待清理完成

系统会自动执行以下动作:

  1. 接收到SIGINT中断信号
  2. 关闭HTTP服务器
  3. 释放GPU/CPU资源
  4. 保存必要日志
  5. 安全退出Python解释器

最终终端显示类似输出:

Shutting down server... Cleanup completed. Exit code: 0

此时服务已完全停止。

3.3 正常停止的优势

优势说明
资源释放完整所有内存、显存、文件句柄均被正确释放
日志记录完整可追踪服务运行时长与结束状态
不影响模型加载下次启动无需重新加载大模型
避免锁文件冲突如存在临时锁文件会被清除

4. 强制停止服务

4.1 适用场景

当出现以下情况时,需采用强制手段终止服务:

  • 误关闭了启动终端,但服务仍在后台运行
  • 服务卡死、无响应、无法通过Ctrl+C退出
  • 多次尝试正常停止无效
  • 端口被占用需立即释放(如7860)

4.2 查找目标进程

首先确认当前是否存在正在运行的服务进程。

执行命令:

ps aux | grep app.py

典型输出示例:

root 12345 5.2 12.7 1234567 890123 ? Sl 10:30 0:45 python3 app.py --port=7860 user 67890 0.0 0.1 12345 678 pts/1 S+ 11:00 0:00 grep --color=auto app.py

重点关注第一行中包含app.py的真实进程,记下其PID(Process ID),本例中为12345

✅ 提示:第二行为grep自身进程,忽略即可。

4.3 终止指定进程

使用kill命令发送终止信号:

kill -9 12345

其中12345替换为你查到的实际PID。

参数说明
参数含义
-9SIGKILL信号,强制杀死进程
-15SIGTERM信号,软终止(建议先试)
-2SIGINT信号,等效于Ctrl+C

推荐顺序:先尝试kill -15 <PID>,若无效再用kill -9 <PID>

4.4 验证是否已停止

再次执行:

ps aux | grep app.py

如果仅剩一条grep结果,则表示服务已成功终止。

也可检查端口占用情况:

lsof -ti:7860

若无输出,说明7860端口已释放。


5. 常见问题与解决方案

5.1 问题:Ctrl+C无反应

现象描述
按下Ctrl+C后终端无任何变化,服务依旧运行。

可能原因

  • 服务已在后台运行(如使用nohupscreen
  • Python进程陷入阻塞状态(如GPU推理未完成)
  • 终端输入被锁定

解决方法
转为强制停止流程,使用ps aux | grep app.py查找并 kill 进程。


5.2 问题:kill后仍提示端口占用

现象描述
执行kill -9 <PID>后,重启服务仍报错:

OSError: Port 7860 is already in use

原因分析
极短时间内系统未完成资源回收,或存在多个实例。

解决方案
执行以下命令彻底清理:

lsof -ti:7860 | xargs kill -9

此命令含义:查找占用7860端口的所有进程ID,并对其执行kill -9。


5.3 问题:找不到app.py进程

现象描述
ps aux | grep app.py无有效输出,但服务仍可访问。

排查方向
可能是以其他名称启动,例如:

ps aux | grep python3

查看是否有类似以下进程:

python3 server.py --port=7860 python3 main.py gradio run ui.py

根据实际启动脚本调整关键词搜索。


5.4 问题:频繁需要强制停止

风险提示
若经常出现无法正常退出的情况,可能存在以下隐患:

  • 模型加载不稳定
  • 显存溢出导致程序挂起
  • 输入图像过大引发处理阻塞

优化建议

  • 控制输入图像分辨率在2000px以内
  • 使用PNG格式减少解码耗时
  • 定期更新镜像版本获取性能改进

6. 最佳实践建议

6.1 推荐操作习惯

场景推荐做法
日常使用在原终端按 Ctrl+C 正常退出
远程部署使用screentmux管理会话
自动化脚本添加 trap 捕获中断信号
多人共用每次使用前后检查端口状态

6.2 使用screen提升体验(可选)

对于远程服务器用户,建议使用screen工具管理服务:

# 创建命名会话 screen -S inpaint_service # 启动服务 bash start_app.sh # 按 Ctrl+A, 再按 D 脱离会话 # 服务将在后台继续运行 # 重新连接 screen -r inpaint_service # 结束时按 Ctrl+C 正常关闭

这种方式既保留了Ctrl+C的便利性,又避免了断网导致进程中断的问题。


7. 总结

7. 总结

本文系统介绍了「fft npainting lama重绘修复图片移除图片物品 二次开发构建by科哥」镜像环境下停止服务的两种核心方法:

  • 正常停止:适用于常规使用场景,通过Ctrl+C发送中断信号,实现资源安全释放。
  • 强制停止:用于异常情况处理,借助ps aux | grep app.py查找PID,配合kill -9 <PID>强制终结进程。

关键要点总结如下:

  1. 正常停止优先,保障系统稳定性;
  2. 强制停止作为兜底方案,应对卡死或失联;
  3. 学会使用pskill是Linux运维基本技能;
  4. 定期检查端口占用可预防冲突问题;
  5. 推荐结合screen工具进行长期服务管理。

掌握这些操作不仅能提高使用效率,还能有效规避因不当关机带来的潜在风险。


获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 14:17:28

基于FSMN-VAD的会议录音智能切片实践

基于FSMN-VAD的会议录音智能切片实践 1. 业务场景与痛点分析 在日常办公和学术交流中&#xff0c;会议录音是信息留存的重要形式。然而&#xff0c;原始录音通常包含大量无效静音段、环境噪声以及多人发言间的停顿&#xff0c;直接用于转录或归档不仅效率低下&#xff0c;还会…

作者头像 李华
网站建设 2026/4/25 12:24:11

GLM-4.6V-Flash-WEB金融风控:证件真伪识别与比对

GLM-4.6V-Flash-WEB金融风控&#xff1a;证件真伪识别与比对 1. 引言&#xff1a;金融风控中的视觉大模型需求 在金融行业&#xff0c;身份认证是风险控制的关键环节。传统的人工审核方式效率低、成本高&#xff0c;且容易受到主观判断和伪造手段的影响。随着深度学习与计算机…

作者头像 李华
网站建设 2026/4/18 12:18:01

零配置使用OpenDataLab MinerU,轻松搞定PPT内容提取

零配置使用OpenDataLab MinerU&#xff0c;轻松搞定PPT内容提取 在日常办公中&#xff0c;我们经常需要从PPT、PDF或扫描文档中提取文字、图表数据甚至核心观点。传统OCR工具虽然能识别字符&#xff0c;但在处理复杂排版、多栏文本或图表时常常力不从心。而如今&#xff0c;借…

作者头像 李华
网站建设 2026/5/5 21:28:03

从0开始玩转VibeThinker,新手保姆级教程

从0开始玩转VibeThinker&#xff0c;新手保姆级教程 在大模型动辄数百亿参数、训练成本动辄上百万美元的当下&#xff0c;一个仅用不到八千美元训练、参数量仅为15亿的小模型却能在数学推理与算法编程任务中击败许多“庞然大物”——这并非科幻&#xff0c;而是现实。VibeThin…

作者头像 李华
网站建设 2026/4/18 15:31:28

用Qwen3-Reranker-0.6B做的法律文档检索系统,效果远超预期

用Qwen3-Reranker-0.6B做的法律文档检索系统&#xff0c;效果远超预期 1. 引言&#xff1a;企业级RAG中的重排序价值 在当前生成式AI广泛应用的背景下&#xff0c;检索增强生成&#xff08;RAG&#xff09;已成为解决大模型“幻觉”问题的核心技术路径。然而&#xff0c;许多…

作者头像 李华
网站建设 2026/5/3 14:56:06

4588万元,AI大模型数据标注平台

2026年1月16日&#xff0c;嘉兴国晟建设发展有限公司《人工智能基础数据服务产业基地数据标注平台、大模型数据标注平台建设项目》单一来源采购公示&#xff0c;最高限价&#xff1a;4588万元。一、项目信息&#xff1a;项目名称&#xff1a;人工智能基础数据服务产业基地数据标…

作者头像 李华