Linux硬盘信息查看全攻略:从lsblk到smartctl的运维实战
1. 项目概述为什么需要查看硬盘信息在Linux服务器运维、系统迁移、硬件故障排查或者仅仅是评估存储升级方案时搞清楚服务器里到底装着几块硬盘、它们各自是什么型号、容量多大、健康状况如何是每个运维工程师和开发者的基本功。这听起来简单但实际场景远比想象中复杂。你可能接手了一台陈旧的二手服务器里面硬盘品牌混杂或者云主机提供商只告诉你分配了“100GB存储”但底层是SSD还是HDD、性能如何一概不知又或者在部署数据库前你需要精确知道哪块盘是NVMe SSD以存放热数据哪块是机械盘用于冷备份。仅仅知道一个总容量是远远不够的。硬盘的型号决定了它的性能层级和可靠性比如是企业级还是消费级序列号是资产管理和保修查询的关键而通过S.M.A.R.T.信息预判硬盘潜在故障更是避免数据丢失的必修课。Linux系统提供了从命令行到图形界面的一系列工具可以让你像外科医生一样精准地“解剖”存储子系统。掌握这些命令意味着你对自己的系统有了更底层的控制力。2. 核心工具链解析与选型逻辑面对查看硬盘信息的需求Linux世界里有好几把“手术刀”。选择哪一把取决于你想看多深、看多细。新手容易一股脑地记命令但理解每个工具的设计初衷和适用场景才能高效解决问题。2.1 基础信息探查lsblk与fdisk -l当你需要快速理清系统的存储拓扑——有几块物理盘、每块盘分了几个区、挂载点在哪——lsblklist block devices是你的首选。它默认以树状结构输出一目了然。lsblk输出示例NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 447.1G 0 disk ├─sda1 8:1 0 512M 0 part /boot/efi ├─sda2 8:2 0 488G 0 part / └─sda3 8:3 0 7.9G 0 part [SWAP] sdb 8:16 0 1.8T 0 disk └─sdb1 8:17 0 1.8T 0 part /data nvme0n1 259:0 0 476.9G 0 disk ├─nvme0n1p1 259:1 0 512M 0 part /boot └─nvme0n1p2 259:2 0 476.4G 0 part /home从上面可以看出系统有三块物理盘一块SATA接口的硬盘sda约447GB一块大容量SATA硬盘sdb1.8TB以及一块NVMe固态硬盘nvme0n1约476GB。TYPE字段清晰区分了物理disk和分区partMOUNTPOINT显示了挂载情况。lsblk -f可以额外显示文件系统类型lsblk -o MODEL,SERIAL可以尝试显示型号和序列号但依赖于udev数据库不一定总能获取到。注意lsblk显示的大小单位默认可能是G、T它使用的是1024进制GiB, TiB这与硬盘厂商宣传的1000进制GB, TB略有差异所以你会看到“476.9G”而不是标称的“512GB”这是正常的。如果你想看更传统的、包含磁盘标签和分区表类型的详细信息fdisk -l需要root权限是经典工具。它不仅能列出所有磁盘和分区还会显示磁盘的扇区大小、I/O大小以及磁盘标识符。sudo fdisk -l它的输出会包含类似这样的磁盘头信息Disk /dev/sda: 447.13 GiB, 480103981056 bytes, 937703088 sectors Disk model: Samsung SSD 860 EVO 500GB Units: sectors of 1 * 512 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt这里直接给出了Disk model这是获取硬盘型号最直接的命令之一。fdisk对于MBR和GPT分区表都支持良好。2.2 深入硬件详情smartctl与hdparm当lsblk和fdisk无法给出型号或者你需要了解硬盘的固件版本、序列号、通电时间、甚至预判故障时就需要请出专业级工具了。smartctl来自smartmontools包是与硬盘S.M.A.R.T.自我监测、分析与报告技术系统交互的瑞士军刀。S.M.A.R.T.信息是硬盘内部传感器记录的健康状态数据。安装它通常很简单sudo apt install smartmontoolsDebian/Ubuntu或sudo yum install smartmontoolsRHEL/CentOS。使用smartctl -i /dev/sda可以查询硬盘的基础信息sudo smartctl -i /dev/sda输出关键信息 START OF INFORMATION SECTION Model Family: Samsung based SSDs Device Model: Samsung SSD 860 EVO 500GB Serial Number: S3Z8NB0K123456 LU WWN Device Id: 5 002538 f12345678 Firmware Version: RVT02B6Q User Capacity: 480,103,981,056 bytes [480 GB] Sector Size: 512 bytes logical/physical Rotation Rate: Solid State Device Form Factor: 2.5 inches Device is: In smartctl database [for details use: -P show] ATA Version is: ACS-3 T13/2161-D revision 5 SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s) Local Time is: Thu Oct 26 10:00:00 2023 CST SMART support is: Available - device has SMART capability. SMART support is: Enabled这里的信息极其丰富精确的型号、序列号、固件版本、实际字节容量、物理尺寸2.5英寸、接口类型SATA 3.2以及是否支持并启用了SMART。对于固态硬盘Rotation Rate会显示为Solid State Device。hdparm是另一个老牌工具主要针对ATA/SATA设备在查询信息和进行一些性能测试时很有用。sudo hdparm -I /dev/sda会打印出大量的识别信息其中也包含型号和序列号。不过对于NVMe硬盘hdparm就无能为力了。2.3 NVMe硬盘专属工具nvme-cli传统的smartctl和hdparm主要服务于SATA/ SAS接口的硬盘。对于现代NVMe固态硬盘你需要专门的nvme-cli工具包。安装命令如sudo apt install nvme-cli。它的命令风格很直观。查看NVMe硬盘列表和基础信息sudo nvme list输出Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 S4H8NA0N123456 Samsung SSD 970 EVO Plus 500GB 1 512.11 GB / 512.11 GB 512 B 0 B 2B2QEXM7这条命令直接列出了所有NVMe设备包含序列号(SN)、型号(Model)、命名空间、可用容量和固件版本非常清晰。要获取更详细的SMART信息NVMe中称为Health Informationsudo nvme smart-log /dev/nvme0n1这会输出关键的健康指标如温度、可用备用空间百分比、介质与数据完整性错误计数以及控制器繁忙时间等对于监控SSD健康状态至关重要。2.4 图形化与一站式工具如果你在桌面环境或者偏好图形界面也有不错的选择GNOME Disks (gnome-disk-utility) 一个功能强大的图形化工具可以查看磁盘型号、序列号、SMART状态、进行分区和基准测试。GParted 主要用于分区管理但在其界面中也能看到连接的磁盘型号。对于想通过一条命令获取尽可能多信息的场景可以结合使用echo和cat来读取内核暴露的硬件信息文件cat /sys/block/sda/device/model这条命令会直接打印出sda硬盘的型号字符串非常轻量快捷。类似地/sys/block/sda/device/serial存放着序列号。这些sysfs文件是许多上层工具获取信息的源头。3. 分场景实操指南与命令详解了解了工具我们来看具体怎么用。不同的场景命令的组合和侧重点完全不同。3.1 场景一快速盘点服务器所有硬盘当你第一次登录一台新服务器需要快速建立存储布局的认知地图。推荐命令组合lsblk -o MODEL,SERIAL,SIZE,TYPE,MOUNTPOINTlsblk -o NAME,MODEL,SERIAL,SIZE,TYPE,MOUNTPOINT,FSTYPE这个命令通过-o参数自定义了输出列一次性展示了设备名、型号、序列号、大小、类型、挂载点和文件系统类型。如果MODEL或SERIAL列显示为空说明lsblk从udev数据库没读到需要换用更底层的方法。备选方案使用脚本一键获取如果服务器硬盘很多可以写一个简单的Shell脚本来循环查询#!/bin/bash for disk in $(lsblk -d -o NAME | grep -v NAME); do echo Disk: /dev/$disk # 尝试多种方式获取型号 if [ -f /sys/block/$disk/device/model ]; then model$(cat /sys/block/$disk/device/model | tr -d \n) echo Model: $model fi sudo smartctl -i /dev/$disk 2/dev/null | grep -E Device Model:|Model Family:|Serial Number: | head -3 echo done这个脚本会遍历所有物理磁盘lsblk -d只列出磁盘不列分区先尝试从sysfs读取型号再尝试用smartctl获取更全的信息。2/dev/null是为了屏蔽某些设备如虚拟光驱不支持SMART命令而产生的错误输出。3.2 场景二精确获取特定硬盘的型号与容量你已经知道目标硬盘是/dev/sdb现在需要它的详细规格用于采购备件或提交保修。核心命令sudo smartctl -i /dev/sdb如前所述这是最权威、信息最全的方式。重点关注输出中的Device Model 硬盘的完整型号。Serial Number 唯一序列号保修必备。User Capacity 以字节为单位的精确容量。Sector Size 逻辑/物理扇区大小通常是512字节或4K。Rotation Rate 如果是SSD会注明如果是HDD会显示转速如7200 rpm。容量换算小技巧User Capacity给出的字节数除以(1000^3)得到厂商宣传的GB数除以(1024^3)得到操作系统显示的GiB数。例如480103981056字节480103981056 / 1000^3 ≈ 480.1 GB 厂商标称480103981056 / 1024^3 ≈ 447.1 GiB lsblk显示3.3 场景三检查硬盘健康状态S.M.A.R.T.预防胜于治疗。定期检查S.M.A.R.T.状态是运维的好习惯。1. 查看健康评估概要sudo smartctl -H /dev/sda输出很简单SMART overall-health self-assessment test result: PASSED如果显示FAILED或FAILING_NOW请立即备份数据2. 查看详细的SMART属性表sudo smartctl -A /dev/sda这会列出一大堆属性ID、名称、值、最差、阈值和原始值。对于HDD需要特别关注Reallocated_Sector_Ct (05) 重映射扇区计数。数值增长表示有坏扇区被备用扇区替换持续增长是硬盘损坏的明确信号。Current_Pending_Sector (C5) 当前待处理扇区数。有数据无法读取的扇区如果下次写入成功可能会被重映射如果失败则成为坏扇区。非零值需警惕。Uncorrectable_Sector_Ct (C6) 无法纠正的扇区计数。直接的数据损坏非常危险。对于SSD需要关注Percentage Used (E7)或Media_Wearout_Indicator (E9) SSD磨损百分比。接近100%表示寿命将尽。Available_Spare (AB)或Available_Spare_Threshold (AC) 可用备用空间。如果Available_Spare低于阈值说明备用区块快耗尽了。3. 运行自检可以在空闲时运行短自检或长自检。sudo smartctl -t short /dev/sda # 短自检通常几分钟 sudo smartctl -t long /dev/sda # 长自检可能数小时 # 查看自检日志 sudo smartctl -l selftest /dev/sda实操心得 不要完全依赖PASSED。有些早期故障SMART整体健康检查可能仍显示PASSED但具体属性如Reallocated_Sector_Ct已经在恶化。因此定期记录并对比这些关键属性的原始值变化趋势比只看健康结论更有价值。3.4 场景四区分SSD与HDD识别NVMe在混合存储环境中快速区分磁盘类型对性能调优很重要。方法1使用lsblk或fdisk的旋转速率信息sudo fdisk -l的输出中HDD会显示Rotation Rate: 7200 rpm之类的信息而SSD显示Solid State Device。lsblk -d -o NAME,ROTA命令的ROTA列更直观1表示旋转设备即HDD0表示非旋转设备即SSD包括NVMe和SATA SSD。方法2查看/sys/block/*/queue/rotational文件cat /sys/block/sda/queue/rotational输出1是HDD0是SSD。这个方法非常快适合脚本调用。方法3识别NVMe设备NVMe设备在/dev下通常以nvme开头如nvme0n1而SATA/SAS设备以sd开头如sda。直接使用ls /dev/nvme*或nvme list即可。4. 常见问题排查与实战技巧在实际操作中你肯定会遇到各种“意外”。这里记录了几个典型问题和我的解决思路。4.1 问题smartctl命令报错“Command failed”或“Device does not support SMART”可能原因与解决方案权限不足 确保使用sudo。设备不支持SMART 一些虚拟化环境如某些VPS、老的虚拟硬盘或USB转接的硬盘可能不支持。可以尝试加上-d参数指定设备类型例如对于USB硬盘尝试sudo smartctl -i -d sat /dev/sdb。SMART功能被禁用 尝试启用它sudo smartctl -s on /dev/sda。NVMe设备 对NVMe设备使用smartctl需要指定-d nvme但更推荐直接用nvme命令。4.2 问题无法看到硬盘的型号或序列号排查步骤检查/sys文件系统 首先尝试cat /sys/block/sda/device/model和cat /sys/block/sda/device/serial。这是最底层的信息源如果这里有那上层工具只是读取方式问题。使用udevadm查询udevadm info --queryall --name/dev/sda | grep -E \(MODEL|SERIAL)\。udev是管理设备节点的系统它可能从驱动层面获取了信息。尝试hdparmsudo hdparm -I /dev/sda | grep -i \model\\|serial\。对于较老的ATA/SATA硬盘hdparm有时更可靠。检查是否为硬件RAID虚拟磁盘 如果硬盘是通过硬件RAID卡管理的/dev/sda可能对应的是RAID卡虚拟出来的逻辑卷。此时需要查看RAID卡的管理工具如MegaCli、storcli来获取背后物理硬盘的信息。4.3 问题lsblk显示的容量和硬盘标称容量不符这是一个高频疑问几乎每个新手都会遇到。根本原因 厂商使用十进制1GB10^9字节而操作系统使用二进制1GiB2^30字节。一块标称“500GB”的硬盘其字节数为500 * 10^9 500,000,000,000字节。操作系统显示为 500,000,000,000 / (1024^3) ≈ 465.66 GiB。所以“丢失”的容量其实是单位换算造成的。分区和文件系统开销 此外分区表、文件系统元数据如ext4的inode表也会占用少量空间这会导致可用空间进一步略小于lsblk显示的容量。隐藏的恢复分区 在一些品牌机或预装系统中厂商可能会划分出一个隐藏的恢复分区这也会占用一部分容量。使用sudo fdisk -l或sudo parted -l可以查看所有分区。4.4 高级技巧监控硬盘温度与SMART属性变化对于重要的服务器可以将SMART监控集成到Zabbix、Prometheus等监控系统中。使用smartctl -A获取特定属性值 可以通过grep和awk提取数值。例如获取温度sudo smartctl -A /dev/sda | grep \Temperature_Celsius\ | awk \{print $10}\使用smartd守护进程smartmontools包包含smartd服务它可以配置为定期检查所有硬盘的SMART状态并在发现问题时通过邮件或执行脚本报警。配置文件通常在/etc/smartd.conf。一个简单的配置示例DEVICESCAN -a -o on -S on -s (S/../.././02|L/../../7/03) -m adminexample.com这行配置表示扫描所有设备(DEVICESCAN)监控所有属性(-a)启用自动离线测试(-o on)启用自动属性保存(-S on)每天凌晨2点进行短自检每周日凌晨3点进行长自检(-s (S/../.././02|L/../../7/03))并通过邮件发送警告(-m)。4.5 虚拟化与云环境下的特殊考量在云主机如AWS EC2, Azure VM或容器中你看到的磁盘设备可能是虚拟化的。设备名可能不同 在AWS EC2上NVMe SSD可能显示为/dev/nvme1n1而其EBS卷可能通过弹性网络挂载需要查lsblk确认映射关系。SMART信息可能受限 云提供商出于安全和多租户考虑通常会屏蔽底层物理硬盘的SMART信息。此时smartctl可能无法工作或只能返回有限信息。云硬盘的健康状态应该通过云服务商的控制台或API来监控。使用lshw或dmidecode 这些命令可以查看更广泛的系统硬件信息有时在虚拟化环境中能提供关于存储控制器的额外线索但通常也看不到底层物理硬盘的详细信息。掌握从lsblk的快速概览到smartctl的深度体检再到nvme的专项工具这套组合拳能让你在Linux下对硬盘信息了如指掌。关键在于根据场景选择工具日常巡检用lsblk查型号容量用fdisk -l或smartctl -i监控健康用smartctl -A和smartd处理NVMe则用nvme-cli。把这些命令和排查思路放进你的工具箱下次再遇到存储相关的问题你就能从容应对从现象直抵本质。

相关新闻

HEIC缩略图插件免费方案:3步让Windows直接预览iPhone照片

HEIC缩略图插件免费方案:3步让Windows直接预览iPhone照片

HEIC缩略图插件免费方案:3步让Windows直接预览iPhone照片 【免费下载链接】windows-heic-thumbnails Enable Windows Explorer to display thumbnails for HEIC/HEIF files 项目地址: https://gitcode.com/gh_mirrors/wi/windows-heic-thumbnails 你有没有经…

2026/9/30 16:25:34 阅读更多 →
终极窗口编辑工具 SRWE:不重启软件改分辨率,让游戏截图告别马赛克

终极窗口编辑工具 SRWE:不重启软件改分辨率,让游戏截图告别马赛克

终极窗口编辑工具 SRWE:不重启软件改分辨率,让游戏截图告别马赛克 【免费下载链接】SRWE Simple Runtime Window Editor 项目地址: https://gitcode.com/gh_mirrors/sr/SRWE 游戏里好不容易等到一帧绝美画面,按下截图键,得…

2026/10/13 17:06:21 阅读更多 →
AI 大模型日报 — 2026年8月17日(周一)

AI 大模型日报 — 2026年8月17日(周一)

🤖 AI 大模型日报 — 2026年8月17日(周一) 本期覆盖:行业热点 | GPT / Claude / Gemini / Grok / DeepSeek / Llama 动态 | 国产模型进展 | 趋势分析 信息来源:LLM Stats、AI Business、Techmeme/Bloomberg、Anthropic…

2026/9/26 22:14:01 阅读更多 →

最新新闻

尖叫声音样本数据集eva:从包结构到训练基线的完整实践

尖叫声音样本数据集eva:从包结构到训练基线的完整实践

简介:EVA尖叫声音样本数据集是一份面向音乐信息检索(MIR)与音频分类研究的人声尖叫样本库,由台湾清华大学MIR课程项目整理,旨在为尖叫检测、异常声音识别、SVM分类等实验提供稀缺的领域数据。压缩包共63个文件&#xf…

2026/10/14 0:47:55 阅读更多 →
现代C++多线程编程实践与优化指南

现代C++多线程编程实践与优化指南

1. 现代C多线程编程的核心价值十年前我刚接触多线程编程时,还在用pthread这类原始接口手动管理线程生命周期。现代C11标准引入的库彻底改变了游戏规则——现在我们可以用更安全、更直观的方式构建并发程序。举个例子,过去需要几十行代码实现的线程同步&a…

2026/10/14 0:47:55 阅读更多 →
Neo4j驱动的RAG:从向量检索到知识图谱推理的工程跃迁

Neo4j驱动的RAG:从向量检索到知识图谱推理的工程跃迁

1. 这份“日报”不是资讯汇编,而是工程实践的切片快照你点开这份标题为《Agent / LLM 技术精选日报 2026-09-28(知乎版)》的文档时,大概率会下意识把它当成一份轻量级技术资讯摘要——类似科技媒体每日推送的“今日AI圈发生了什么…

2026/10/14 0:47:55 阅读更多 →
JVM元空间内存泄漏排查与防护实战指南

JVM元空间内存泄漏排查与防护实战指南

1. 面试题背后的技术深度剖析当这个面试题出现在阿里巴巴Java技术面试中时,它实际上考察的是候选人对JVM内存管理的系统化理解能力和复杂问题排查经验。元空间(Metaspace)内存泄漏不同于传统的堆内存问题,它的隐蔽性更强且往往在应用运行较长时间后才显现…

2026/10/14 0:47:55 阅读更多 →
老虎数据集2055张VOC+YOLO格式:目标检测训练与标注避坑指南

老虎数据集2055张VOC+YOLO格式:目标检测训练与标注避坑指南

简介:本资源为面向目标检测学习者的老虎数据集,采用Pascal VOC与YOLO双格式标注,适合从事单类别目标检测训练、模型验证及算法对比的研究人员与开发者使用。压缩包共约2000个文件,以1999个xml标注文件和1个说明txt为主&#xff0c…

2026/10/14 0:47:55 阅读更多 →
开题报告是研究旅程的导航图,科迅捷AI帮你把路线画清楚

开题报告是研究旅程的导航图,科迅捷AI帮你把路线画清楚

如果把博士阶段的研究比作一段长途旅行,开题报告就是出发前画好的导航图。导航图不决定你路上的每一个细节,但它决定了方向:往哪走、经过哪些站点、预计什么时候到达。没有这张图,你很容易在路上迷路,或者走很远才发现…

2026/10/14 0:46:55 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

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

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

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

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

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

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

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

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

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

2026/10/13 1:58:08 阅读更多 →

月新闻

我发现了一个新思路:用 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/13 22:01:27 阅读更多 →
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/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练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/12 18:11:17 阅读更多 →