Linux
linux下的yum命令报错
【实用】精简Commands(更新)
生信软件安装前配置
NewMechine-Linux
捡了一台垃圾-蜗牛星际单网口
群晖系统升级攻略
群晖的一些工具
群晖中玩脚本【实践可行才记录】
群晖套件迁移(从存储2到存储4)
移动吉比特光猫 SK-D746 获取动态超级管理员帐号与密码
移动光猫SG338Z
linux使用crontab命令指定时间段内随机执行任务
【实用】局域网数据共享之王-gohttpserver
飞牛NAS
飞牛NAS读取群晖的硬盘
Navidrome+MusicTagWeb+音流
飞牛备份及同步
硬盘故障问题
飞牛NAS搭建私人图书馆,实现网页、手机看电子书
docker学习
SSH密钥免密登录详细教程
SSH登录Linux系统提示信息"There were xxxx failed login attempts since the last successful login."
本文档使用 MrDoc 发布
-
+
up
down
首页
硬盘故障问题
飞牛提示硬盘检测异常  这儿原始值看到627,原本应该是0,所以应该是有627个坏道。 ## Linux系统进行检测 ```shell # 安装工具 sudo apt install smartmontools # Debian/Ubuntu sudo yum install smartmontools # RHEL/CentOS # 查看盘 lsblk ```  ```shell # 扫全盘,只看关键指标 sudo smartctl -a /dev/sda1 | grep -E 'Reallocated|Pending|Uncorrectable|Spin_Up|Temperature' ```  解读 - Reallocated_Sector_Ct > 0 → 已有 627 个坏区被重映射,不可逆。 - Current_Pending_Sector > 0 → 还有 37 个“待映射”的不稳定扇区,随时可能变坏。 - 值在短时间继续增加 → 盘已进入“临终期”,必须立即迁移数据。 >d 通常看到这个情况,建议赶紧迁移数据,避免数据丢失。 ## Linux下尝试修复 ```shell # 【“凑合用”方案】把剩余可用空间划新分区,避开已坏区域(需要计算 LBA 范围,复杂且高危) sudo hdparm --repair-sector 12345678 --yes-i-know-what-i-am-doing /dev/sda ``` >w 使用hdparm的时候,--repair-sector参数的值应该如何设置呢? ```shell # 从 SMART 日志里直接检查 sudo smartctl -l error /dev/sda1 ## 但是提示“No Errors Logged”,说明近期没读写错误,如近期有读写错误,会打印类似 Error 1: UNC at LBA = 0x12345678 = 305419896 ## 就把 305419896 拿来用。 # dmesg中检查: sudo dmesg | grep -i 'sector' [ 1.709216] ata4.00: 5860533168 sectors, multi 16: LBA48 NCQ (depth 32), AA [ 1.710511] ata2.00: 1875385008 sectors, multi 1: LBA48 NCQ (depth 32), AA [ 1.713876] ata1.00: 5860533168 sectors, multi 16: LBA48 NCQ (depth 32), AA ## 如果出现 blk_update_request: I/O error, dev sdc, sector 123456789 ## 就可以用123456789 # 用只读扫描把 LBA 刷出来 sudo badblocks -b 512 -sv /dev/sda ## 如果出现badblocks: Value too large for defined data type invalid end block (5860533168): must be 32-bit value ## badblocks 默认把 LBA 当成 32-bit signed 处理,最大只能到 2^31-1 ≈ 2.1 TB。你的盘是 >2 TB(实际 5860533168 个 512 B 扇区 ≈ 2.7 TB),所以直接爆表。需要改为64-bit的badblocks来 sudo badblocks -b 4096 -sv /dev/sda ```  可以用这个方法: ``` # 后台 long test,把全盘读一遍 sudo smartctl -t long /dev/sda # 过几十分钟~几小时后看结果 sudo smartctl -l selftest /dev/sda ```  >w 全盘扫描都是要等待挺久,他可以暴露出坏扇区位置。 中途也可以通过`sudo smartctl -l selftest /dev/sda`看当前扫描情况。 ## 修复注意 **注意:** - 一次只能修一个扇区;有多处坏道就重复执行。 - 该命令立即破坏该扇区原有数据,务必先做完镜像或确认数据已无用。 - 如果硬盘拒绝映射(返回 IO error ),说明备用区已耗尽,盘已报废,立刻换盘。 `sudo hdparm --repair-sector 123456789 --yes-i-know-what-i-am-doing /dev/sda`
laihui126
2025年9月6日 21:38
分享文档
收藏文档
上一篇
下一篇
微信扫一扫
复制链接
手机扫一扫进行分享
复制链接
关于 MrDoc
觅道文档MrDoc
是
州的先生
开发并开源的在线文档系统,其适合作为个人和小型团队的云笔记、文档和知识库管理工具。
如果觅道文档给你或你的团队带来了帮助,欢迎对作者进行一些打赏捐助,这将有力支持作者持续投入精力更新和维护觅道文档,感谢你的捐助!
>>>捐助鸣谢列表
微信
支付宝
QQ
PayPal
下载Markdown文件
分享
链接
类型
密码
更新密码