麒麟V10开机卡黑屏或进emergency mode且报“Disk I/O error”,需按四步排查:一、用Live USB运行dmesg查磁盘驱动层错误;二、用smartctl或麒麟管家查SMART三类关键指标;三、直连主板、听异响、换线换口排除物理连接故障;四、用badblocks只读扫描确认坏道。

麒麟V10服务器或桌面版开机卡在黑屏、提示“Disk I/O error”或直接进入emergency mode,且反复重启后现象不变——这说明系统在内核加载阶段就已无法与硬盘完成基础读写通信,必须立即区分是硬件真损坏,还是引导层/连接层可逆故障。不能直接断定硬盘报废,更不能贸然通电反复尝试。
第一步:绕过系统,用Live环境直连硬盘做最小化验证
先排除BIOS/UEFI启动顺序、GRUB配置错误等软件干扰。准备一张麒麟V10 Live USB(或UOS/Ubuntu同内核版本Live盘),从USB启动进入图形桌面或终端。
插入Live系统后,打开终端,执行:sudo dmesg -T | grep -i "ata\|nvme\|I/O\|error"。重点看时间戳最近的几行,若出现类似[Wed Oct 1 09:42:16 2026] ata1.00: failed command: READ FPDMA QUEUED或[Wed Oct 1 09:42:17 2026] nvme 0000:01:00.0: I/O 12345 timeout, reset controller,说明硬盘在内核驱动层已失联,不是GRUB或fstab的问题。
若dmesg里只有“ACPI Error”或“Failed to start…”类服务报错,但无磁盘设备相关关键词,则大概率不是硬盘物理损坏,可跳过后续坏道检测步骤。
第二步:检查SMART健康状态,锁定三类关键指标
SMART数据是硬盘固件自检结果,不依赖文件系统,热插拔下即可读取。此步必须在Live环境或正常登录后的终端中执行。
方法一:用麒麟管家图形化查看(仅限桌面版)
点击开始菜单→麒麟管家→设备管理→健康检测→等待扫描完成。重点关注三项标红项:【Reallocated_Sector_Ct > 5】、【Current_Pending_Sector ≠ 0】、【UDMA_CRC_Error_Count 持续上升】。任意一项标红,硬盘已存在物理缺陷,继续使用风险极高。
方法二:用smartctl命令深度验证(全版本通用)
终端中依次执行:
sudo apt install smartmontools(如未预装)→
sudo smartctl --scan(确认设备路径,如/dev/sda)→
sudo smartctl -a /dev/sda | grep -E "(Reallocated_Sector|Current_Pending|UDMA_CRC|Raw_Read_Error)"
注意:若返回"SMART support is: Disabled",需先进BIOS开启SATA AHCI模式;若返回"No such device",说明硬盘根本未被主板识别,跳转至第三步。
第三步:物理连接与供电排查,揪出“假损坏”
很多用户看到I/O error第一反应是换硬盘,结果花几百块买新盘,旧盘换根线就满血复活。机械硬盘尤其敏感——启动电流峰值超2A,劣质USB硬盘盒或老化SATA电源线极易导致供电不足,表现为反复I/O timeout。
第一步:拆机直连。将硬盘从原机箱/硬盘盒中取出,用原装SATA数据线+主板原生SATA接口+主板24pin主供电直连(禁用任何转接板、M.2转接卡、USB扩展坞)。ARM架构服务器(如鲲鹏)需确认是否为NVMe盘,改用PCIe插槽直连。
第二步:听声辨障。通电后静置10秒,贴近硬盘听是否有规律“咔哒咔哒”声(磁头归位失败)、持续“嗡嗡”异响(电机卡滞)或完全无声(主控未唤醒)。有任一异常声响,【立即断电,停止所有读写操作】。
第三步:换线换口。同一根数据线分别插主板不同SATA口;同一SATA口换另一根认证SATA线;若为NVMe盘,换PCIe插槽并重装驱动。每换一次,重启进Live环境再跑一次dmesg验证。只要某次不再报I/O error,问题根源就在连接环节。
第四步:badblocks底层扫描,确认坏道是否已扩散
SMART只反映硬盘自我报告的状态,而badblocks能真实触发扇区读写,暴露隐藏坏道。此操作必须在硬盘**未挂载任何分区**的前提下进行,否则可能引发文件系统崩溃。
第一步:确认目标设备。Live环境下运行:sudo lsblk -o NAME,MODEL,SIZE,FSTYPE,MOUNTPOINT,ROTA,找到待测盘(如/dev/sda),确保其所有子分区(sda1/sda2)均未出现在MOUNTPOINT列。
第二步:执行只读扫描。输入:sudo badblocks -v -s /dev/sda > /tmp/bad.log 2>&1。-v显示进度,-s刷新屏幕,>重定向日志。此过程耗时较长(1TB机械盘约3~5小时),切勿中断电源或强制关机。
第三步:判断结果。扫描结束后,查看输出:
若终端显示“Pass completed, 0 bad blocks found”,且/tmp/bad.log为空,说明无逻辑坏道;
若显示“XX bad blocks found”,或log文件含数字行(如“123456789”),则【该硬盘已出现不可逆物理损伤,禁止继续作为系统盘或数据盘使用】。











