MCP服务器运维实战:工具选型、配置与排错指南
先说个很实际的场景你手上管着十几台服务器白天刚处理完一台Windows 2016的端口策略问题晚上又收到告警说某台Linux机器磁盘快满了。你熟练地打开SSH客户端、敲df -h、netstat、翻日志、查防火墙规则这一套流程每天重复无数次而且大概率还是手动敲。如果你的工作状态也是这种“高频、重复、命令密集”的模式我强烈建议你花半小时把MCP工具装起来。这篇文章不整虚的直接讲清楚MCP是什么、服务器工程师为什么特别需要它、哪些MCP工具实测好用以及完整的配置和排坑记录。1. 先从“MCP是什么”说起以及它为什么适合服务器方向1.1 一句话理解MCPMCP全称Model Context Protocol模型上下文协议本质是给AI大模型开的“标准接口”。你可以把它理解为AI世界的USB接口以前你的AI助手只是台不能插任何外设的电脑想要它帮你查资料、写代码可以但它碰不到你真实的系统环境有了MCP之后AI可以“插上”不同的工具模块比如文件系统模块、服务器状态模块、数据库模块AI就能直接读写文件、查服务器指标、执行查询。现在的主流AI客户端——Claude Desktop、Cherry Studio、Codex、Dify这些都开始原生支持MCP。你只需要在配置文件里声明“我要启用哪几个工具服务器”AI运行时就会自动加载这些工具并在需要的时候调用它们。服务器方向的工程师用MCP的典型价值是你不需要在对话里描述“帮我看看那台机器内存多少”AI直接调工具查完告诉你省掉了“复制命令、粘贴命令、复制输出、再贴回对话”的中间环节。1.2 服务器运维工作的典型重复模式我自己管过大概三十多台混合环境服务器Windows Server和Ubuntu/CentOS都有。日常最耗时间的不是故障本身而是“登录-查状态-判断-处理”这个循环。拿排查一台Web服务器响应慢举例先SSH登录top看一眼CPU再看内存然后df -h看磁盘再翻/var/log/nginx/error.log最近几十行可能还要ss -tlnp看端口监听情况。这一轮下来五分钟起步如果中间发现可疑进程还得ps aux加lsof追一下。这些事情技术含量不一定高但试想如果每次问题都靠手敲一天十次告警就是五十分钟纯机械操作真正做决策和修复的时间反而被压缩了。MCP在这种场景下解决的不是“自动修复”而是“状态获取与分析提速”。AI把“查询状态”变成了工具调用你只需要告诉它“看看web-01这台机器为什么负载高”它会并行执行多条查询命令、汇总结果、给出判断你只做最后的决策和干预。这中间省下的就是机械性往返的时间。1.3 MCP和普通AI对话的本质区别以前你在AI里问“帮我分析nginx日志”你得自己把日志粘贴进去日志一长还得截断。有了MCP之后AI可以本地直接读取日志文件、过滤关键字、统计错误频次整个过程不依赖你手动贴数据。对服务器工程师来说这个区别的意义是“AI从参谋变成了能自己看侦察报告的参谋”。它看到的不是二手信息而是直接从你系统里取到的一手信息。这也是为什么我强调这个工具应该装——它把AI从“只会聊天的助手”升级成“能操作真实环境的助手”而服务器的操作场景恰好是最需要这种能力的。2. 实测下来值得装的几款MCP工具2.1 工具选型思路先想清楚要解决什么问题MCP生态现在发展很快GitHub上相关的服务器多到眼花缭乱。我的建议是不要一上来就装一大堆而是按“需求反推工具”来选。服务器方向的核心需求无非四类看资源状态、看文件日志、远程执行命令、对接外部接口数据。把这四类需求分别找到对应的MCP工具就够用了。需求场景推荐MCP工具类型获取本机CPU/内存/磁盘/网络等资源状态server-status-mcp本地工具浏览、读取项目或日志文件filesystem-mcp官方参考实现本地工具远程服务器执行SSH命令、查看Linux状态mcp-server-ssh / 自建ssh类MCP远程工具把内部HTTP接口转成MCP供AI调用自建 lightweight-mcpHTTP转MCP桥接工具个人最推荐先装第一个它的反馈最直观装完马上能体验“让AI直接读我电脑状态”的效果。后面的按需补充不要贪多。2.2 server-status-mcp最直观的服务器状态查询工具这个工具我在Windows和Linux上都测过。它通过npx方式运行会暴露一批工具给AI使用包括查询CPU使用率、内存占用、磁盘空间、网络连接和系统信息。AI在对话中如果需要了解服务器当前状态会主动调用它而不是让你手动执行命令后贴结果。实测中我遇到最多的使用场景是定位资源异常。比如某次我怀疑Windows服务器上有进程占满内存直接在Claude里问“看一下当前内存排名前五的进程”AI调用工具后把进程列表按内存排序返回还顺手分析了哪个进程异常。如果走老路我还得先连上跳板机、tasklist排序、自己看。这个工具的价值用一个词概括就是即时感知。2.3 filesystem-mcp处理日志文件的得力帮手服务器方向的工作有一半时间是在跟日志打交道。filesystem-mcp提供目录列表、文件读取、文件搜索、文件信息等操作AI可以基于它直接读取本地日志、搜索关键字、按时间范围提取内容。一个实测案例排查Windows服务器上某服务的启动失败日志。我给AI指定“读取C:\logs\service.log最后200行”它调用filesystem工具读文件提到“有两条ERROR级别记录分别是端口被占用和配置项缺失”然后给出修复建议。整个过程不需要我打开记事本翻日志。这个工具对日志在本地或挂载盘上的场景最适用如果日志在远程服务器上就改用SSH类MCP配合tail命令处理。2.4 SSH类MCP远程Linux服务器操作利器SSH类型的MCP工具核心思路是AI在本地通过SSH执行远程命令从而获取远程主机的运行状态。配置时需要提供主机、用户名、认证方式建议用密钥而非密码AI就能在对话中执行uptime、free -h、journalctl -u nginx --no-pager -n 50这类远程命令并读取结果。我在批量巡检场景里用得比较舒服。一次管五台Linux机器以前一台台登录输入同样的命令现在直接让AI依次连接每台机器执行状态采集然后汇总成表格。要注意的是这类工具的能力边界完全取决于给它的权限不要用root账号配置建议单独建一个只读巡检账号限制可执行的命令白名单降低误操作风险。2.5 自建HTTP转MCP对接公司内部监控平台还有一个非常实用的模式如果公司有内部监控API或CMDB接口可以自己写一个轻量MCP服务把HTTP接口包装成工具。实现方法不复杂就是用Python的mcp库写一个server在工具函数里调用requests请求内部API返回JSON给AI。我实际做过一个把内部告警平台查询接口转成MCP工具的小项目之后AI可以直接查“某个应用最近一小时有没有报错”不再需要切到告警平台页面手动查。这类自建MCP的关键是注意鉴权和超时——接口调用超时设置为不超过30秒且把敏感请求参数限制在最小值。对于有Python基础的工程师这类工具半天就能写好性价比极高。3. 动手实操在客户端里配好并跑通一次状态查询3.1 环境准备阶段先确认本机具备基础运行环境。server-status-mcp是通过Node.js的npx方式运行所以要先装Node.js 18以上版本如果是Python系工具直接装Python 3.10以上就行。Windows环境下我建议把Node加入PATH然后在命令行里执行一下node -v确认版本号。然后选一个AH客户端。Claude Desktop对MCP支持最完善但国内直连不方便的可以用Cherry Studio它原生支持MCP配置界面简洁或者用Codex。我自己常用Cherry Studio搭配MCP因为它的配置入口很直观不需要手改复杂配置文件。这一步不是必需的但你得决定“用哪个客户端来承载MCP工具”。3.2 装MCP包的方式npx和uvx大部分MCP工具都有现成的包管理器启动方式。Node生态的用npx比如npx directus/server-status-mcpPython生态的用uvx比如uvx mcp-server-filesystem。两种方式本质上都会先下载对应包再启动一个本地服务进程。需要注意的一点是npx首次运行会下载包网络差时容易卡住建议提前npm install -g到全局或者用国内镜像源加速。另外MCP工具本身不是一个常驻服务——它由客户端按需拉起所以如果你在命令行手动执行npx命令会看到进程停在等待状态这是正常的真正的驱动方是AI客户端。3.3 在Cherry Studio里配置MCP的完整流程打开Cherry Studio的设置找到MCP配置页点击“添加MCP服务器”填写名称和启动命令。以添加server-status-mcp为例配置如下名称server-status自己起个易记的名字命令npx参数directus/server-status-mcp如果你用的是Claude Desktop则要编辑claude_desktop_config.json文件加入如下配置{ mcpServers: { server-status: { command: npx, args: [directus/server-status-mcp] } } }保存后重启客户端。之后在对话窗口里能看到已连接的MCP工具列表。这时你直接问一句“帮我看看这台服务器的CPU和内存状况”正常情况下AI会调用server-status工具返回实时数据并帮你解读。3.4 配置SSH MCP进行远程查询SSH类工具的配置略复杂核心是指定主机列表和认证信息。假设我要管理一台Linux机器配置参数如下主机: 192.168.1.101 端口: 22 用户名: opsreader 认证方式: SSH密钥 密钥路径: ~/.ssh/id_ed25519在Claude Desktop的配置文件中需要指定SSH参数。部分SSH MCP实现支持在环境变量里配置主机信息例如{ mcpServers: { ssh: { command: uvx, args: [mcp-server-ssh], env: { SSH_HOST: 192.168.1.101, SSH_USER: opsreader, SSH_KEY_PATH: /home/you/.ssh/id_ed25519 } } } }这里配置的是一个不太标准但通用的例子不同实现的参数名有差异关键是理解“环境变量传参”和“JSON传参”两种方式。建议先手动用SSH命令验证密钥能免密登录再配MCP否则后续排错很难定位是认证问题还是MCP本身的问题。3.5 真实操作演示调查Windows服务器端口占用挑一个实际案例完整走一遍某天这台Windows Server上部署的新服务启动失败错误信息是“端口9000被占用”。传统排查思路是netstat -ano | findstr 9000然后对照PID查进程再决定是结束进程还是改服务端口。用MCP的流程是这样我在Cherry Studio里选择带server-status和filesystem能力的对话输入“我本机9000端口被占用帮我查一下是哪个进程占用并给出处理建议”。AI会调用server-status工具里的网络连接查询返回监听状态和占用进程的PID再调用进程查询工具映射出具体程序名最后给出结论。最终它返回PID 18240进程名java.exe命令行参数指向另一个项目的服务。我确认后执行“杀掉该进程并重试新服务”的指令。全程没开一次命令行窗口。这类操作对我这种“能少敲一行命令就少敲一行”的人来说体验提升非常明显。4. 常见报错与排查技巧实录4.1 stdio连接失败最常见的一类问题MCP工具大部分走stdio和客户端通信。如果你在配置后看到“MCP连接失败”或“无法启动服务器”的报错优先排查三件事一是MCP包本身能不能手动启动去命令行执行一下配置里的原始命令看有没有报错二是路径权限尤其Windows下npx的缓存目录是否需要管理员权限三是客户端是否重新加载了配置改完config必须重启客户端。我在Windows上遇到过npx执行没问题但客户端连不上的情况最后发现是环境变量问题——客户端进程没有继承到Node的路径。解决方法是把npx的完整路径直接填到命令里比如C:\Program Files\nodejs\npx.cmd而不是只写npx。4.2 工具调用超时要么接口慢要么命令阻塞当AI调用MCP工具后长时间没返回多半是工具本身执行的命令卡住了。比如SSH连接目标机器时网络不通或远程命令执行时间过长。处理方式是在MCP server代码层面给工具执行加上超时机制——Python的asyncio.wait_for是非常好用的方案设置30秒超时并抛异常返回给AI而不是无限等待。另一个小技巧在给AI描述工具时明确注明“此命令预期执行时间不超过5秒”这样AI会提前判断是否值得调用。如果你自建MCP务必在工具描述里写清楚适用场景和限制条件。4.3 权限不足导致的部分工具不可用server-status-mcp在Linux下查询部分网络连接信息需要root权限Windows下查询某些系统信息也需要管理员权限。遇到这类问题不要直接把整个客户端提权到root——安全风险太大。我的建议是运行时使用普通用户能查到的信息先用必须高权限的场景单独写小脚本通过sudo白名单方式执行并把结果写文件再让filesystem工具读取。4.4 日志中文乱码问题在Windows服务器上查看UTF-8编码的日志文件时MCP读取日志后用AI分析时经常出现中文乱码。这通常是文件编码和工具读取编码不一致造成的。解决办法在filesystem这类工具的配置或环境变量里指定读取编码为UTF-8如果日志是GBK编码的老系统先自建一个MCP工具做编码转换再返回内容。对于日志在远程Linux机器上的场景SSH执行tail命令时指定编码也能规避乱码比如tail -n 50 file | iconv -f UTF-8 -t UTF-8虽然看似多余但在某些中文locale配置有问题的机器上能生效。4.5 返回内容过长被AI截断还有一个很实际的问题MCP工具返回几百行进程列表或日志内容超出AI上下文窗口后会截断分析结果就不全。我的习惯是在提示词中明确要求“只取关键行”“按消耗内存排序只取前10条”也可以直接修改MCP工具内部把返回内容在MCP层就先做裁剪和摘要。比如server-status-mcp查进程列表时在工具函数里先按内存排序、截取前20条再返回。这样就规避了上下文超限的问题也减少了token消耗。这点在做自建MCP时特别值得重视——工具返回的“信息密度”远比“信息量”重要。5. 从“能查”到“自动处理”MCP的进阶用法5.1 把MCP嵌进日常告警处理流程配置好MCP之后我通常不只把它当对话工具用而是刻意改变自己的工作流收到告警后第一反应不再是打开终端手动查状态而是直接在客户端里描述现象附带“帮我调用状态工具确认”的意图。这样每个告警的分析环节都走了MCP比手动敲命令快且标准化。比如有一次凌晨收到磁盘使用率超阈值的告警我让AI依次查了磁盘分区占用、删除的日志文件占用的句柄、有大文件在哪个目录十分钟内锁定是某个服务没开logrotate导致日志无限增长。如果走传统流程光登录和手动翻目录就得半小时。5.2 与外部系统联动监控告警触发修复更进阶的玩法是自建一个“告警处理MCP”把内部告警系统、CMDB、甚至自动修复脚本封装成工具。AI收到告警后自动调用查询工具了解上下文、调用修复脚本处理、再调用验证工具确认恢复。我搭过一个简化版本AI识别nginx进程挂掉后调用systemctl restart命令拉起服务再调用状态查询确认监听端口已经恢复。这个方向可以自动化基础运维场景但每一步都要加“人工确认”环节不要让AI自动执行危险操作。重点是用MCP做状态感知和分析用脚本做标准执行AI只当“调度员”不当“执行者”这样安全边界可控。5.3 多机批量管理时注意的安全边界当MCP工具管的不只一台机器而是多台服务器时权限控制就变得更加重要。我的建议是给每一类访问权限分配独立的MCP配置而不是一个工具通配所有机器。比如巡检类工具只读配置只读账号重启服务类工具单独建一个MCP配置有sudo权限但仅限特定服务的账号。风险最高的配置是“客户端用root跑MCP工具”等于把服务器钥匙交给了模型。即便模型再聪明也不该绕过人工控制。我个人的底线是AI可以提建议、可以做只读分析、可以执行白名单内命令但高危操作必须由人来敲回车。最后再分享一条我踩坑之后的习惯配置MCP后先做一轮工具验证再投入使用MCP配置的坑大多集中在前十分钟——连接失败、权限不够、命令参数不对。我现在的标准流程是装完一个MCP工具之后先在空对话里明确要求“调用一次xxx工具并返回结果”确认返回数据符合预期后再在真实场景里使用。这个习惯帮我过滤掉了至少一半配置问题。如果你刚接触MCP不必一次配齐上面所有工具从server-status-mcp或者filesystem-mcp其中任意一个入手先体验“AI能直接读我服务器状态”这个感受。跑通之后你会自然而然想给AI接上更多能力——到那时你会发现自己回不到以前那种“凡事手动敲命令”的工作方式了。

相关新闻

ProSAFE Plus Utility 2.7.7:NETGEAR交换机固件级管理工具

ProSAFE Plus Utility 2.7.7:NETGEAR交换机固件级管理工具

简介:本资源为Netgear ProSafe Plus系列以太网交换机专用管理工具v2.7.7安装包,面向企业网络管理员、IT运维人员及中小规模网络部署者,解决交换机可视化监控、远程配置、安全策略实施与故障快速响应等核心管理难题。压缩包为ZIP格式&#xff…

2026/10/17 20:54:42 阅读更多 →
JSP志愿者服务平台实战:含个人信息展示与坐标定位

JSP志愿者服务平台实战:含个人信息展示与坐标定位

简介:这是一套基于Java Web技术栈开发的JSP志愿者服务平台源码,面向高校计算机专业学生、Java初学者及Web开发入门者,旨在提供一个功能完整、结构清晰的B/S架构公益类项目实践案例。平台涵盖志愿者注册登录、项目发布与跟踪、服务时长统计、培…

2026/10/11 3:35:33 阅读更多 →
SN0105 PCI-E声卡KX驱动:绕过Windows音频栈的ASIO直通方案

SN0105 PCI-E声卡KX驱动:绕过Windows音频栈的ASIO直通方案

简介:本资源是专为纯声SN0105迷你PCI-E音频卡用户提供的KX Project第三方驱动完整安装包,面向音频工作者、音乐制作人及DIY硬件爱好者,解决原厂驱动功能局限、兼容性不足与音质优化空间小等痛点。压缩包共86个文件,含22个核心DLL动…

2026/10/16 23:03:39 阅读更多 →

最新新闻

Python实现Antlr文法转语法图(铁路图):用TaoToken统一Key跑通railroad-diagrams渲染链路

Python实现Antlr文法转语法图(铁路图):用TaoToken统一Key跑通railroad-diagrams渲染链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 20:54:54 阅读更多 →
LangGraph、OpenClaw、Hermes:三种 Agent 路线,不是一回事——用 TaoToken 统一 Key 跑通对比

LangGraph、OpenClaw、Hermes:三种 Agent 路线,不是一回事——用 TaoToken 统一 Key 跑通对比

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 20:54:54 阅读更多 →
Timestral-5M部署指南:PyTorch CPU/GPU推理实战与性能调优技巧

Timestral-5M部署指南:PyTorch CPU/GPU推理实战与性能调优技巧

【免费下载链接】Timestral-5M 项目地址: https://ai.gitcode.com/hf_mirrors/mistralai/Timestral-5M 点击查看 免费下载 Timestral-5M 是 Mistral AI 推出的 5M 参数时间序列预测基础模型,支持零样本(zero-shot)预测推理&#…

2026/10/17 20:54:54 阅读更多 →
Spring Boot外卖系统实战:从环境搭建到业务改造

Spring Boot外卖系统实战:从环境搭建到业务改造

简介:针对黑马程序员“苍穹外卖”项目的一套完整配套资源,面向正在学习Spring Boot后台开发、Vue前端以及小程序开发的读者,也适用于毕业设计与项目实训。资源覆盖外卖平台从需求分析、数据库设计、产品原型到前后端编码的完整链路&#xff0…

2026/10/17 20:54:54 阅读更多 →
基于Flask+Vue的宠物领养管理系统开发实战与排坑复盘

基于Flask+Vue的宠物领养管理系统开发实战与排坑复盘

去年帮某个城市的民间宠物救助组织搭了一套领养管理系统,前前后后折腾了大半个月,从需求梳理到部署上线,中间推翻过一次方案、重写过两次数据库模型,踩了不少坑。最后落地的技术栈是 Flask Vue,开发工具用的 PyCharm&…

2026/10/17 20:54:53 阅读更多 →
Kinodynamic RRT*:考虑加速度限制的路径规划与MATLAB实现

Kinodynamic RRT*:考虑加速度限制的路径规划与MATLAB实现

简介:Kinodynamic RRT 算法的MATLAB实现,面向机器人运动规划领域的研究者与进阶学习者,用于求解带线性微分约束系统的最优运动规划问题。代码对应Webb与van den Berg发表于CoRR的论文,完整包含RRT 主循环、随机状态采样、最近邻…

2026/10/17 20:53:53 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →