易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 1371|回复: 1
收起左侧

linux系统下检测硬盘上坏道和坏块

[复制链接]
发表于 2021-11-15 10:55:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
我们通过几个必要的步骤,使用特定的磁盘扫描工具让你能够判断 Linux 磁盘或闪存是否存在坏道。
7 O- L  Y# ^4 y' m3 o$ I5 Z操作步骤如下:
8 Q6 x: k: k# {6 B在 Linux 上使用坏块工具检查坏道' I4 S6 r5 u2 ?9 x7 q: k
坏块工具可以让用户扫描设备检查坏道或坏块。设备可以是一个磁盘或外置磁盘,由一个如% S. K" `: E7 M& S4 E4 J
/dev/sdc! f# Y4 I% f8 ^9 L, d. w
这样的文件代表。
0 J- T( h$ O, W0 ~4 D首先,通过超级用户权限执行 fdisk 命令来显示你的所有磁盘或闪存的信息以及它们的分区信息:! @9 S/ h/ `, A4 r4 c1 Z. o
fdisk -l
* F! E4 F( N8 x4 @9 m1 S磁盘8 d; C: q: t$ d% }$ t0 I

# s  {+ u& K$ C0 ^& ]$ cbadblocks -v /dev/sdb1  > badsectors.txt
. L. G) k/ V6 x* ]4 s0 b5 S" D! WChecking blocks 0 to 975584255( h, E/ E5 ^7 f. k5 G
Checking for bad blocks (read-only test):
$ \: k: S, v# _" n8 ^7 S" G: P
% o2 Q, s5 V% r6 a! @, {/ A, O' [& g( g( C  j& Z
7 F, e: _$ ~: \% w4 e

上面的命令中,badblocks 扫描设备/dev/sdb1(记得指定你的实际设备),-v选项让它显示操作的详情。另外,这里使用了输出重定向将操作结果重定向到了文件badsectors.txt。

如果你在你的磁盘上发现任何坏道,卸载磁盘并像下面这样让系统不要将数据写入回报的扇区中。

你需要执行e2fsck(针对 ext2/ext3/ext4 文件系统)或fsck命令,命令中还需要用到badsectors.txt文件和设备文件。

-l 选项告诉命令将在指定的文件 badsectors.txt 中列出的扇区号码加入坏块列表。

0 J9 p0 u) b- s8 n  B& W8 n
1 b8 y) Y- i9 d% b, D: m2 L" w' ~
. x& P+ C0 Y* R
 楼主| 发表于 2021-11-15 10:58:37 | 显示全部楼层
------------ 针对 for ext2/ext3/ext4 文件系统 ------------/ @4 b+ ^4 O1 K4 D2 X2 A
$ sudo e2fsck -l badsectors.txt /dev/sda10
' P$ S9 p4 T* g) m0 K
, d9 N" u( k2 S+ E# f! j5 |) m& y------------ 针对其它文件系统 ------------
7 o) g4 o' n( k) ?; y' z, H6 ~" s# r$ sudo fsck -l badsectors.txt /dev/sda10
6 N/ }9 h5 G4 i# M, |在 Linux 上使用 Smartmontools 工具扫描坏道+ R3 j2 N, C$ @5 E% J' Q4 ]
这个方法对带有 S.M.A.R.T(自我监控分析报告技术Self-Monitoring, Analysis and Reporting Technology)系统的现代磁盘(ATA/SATA 和 SCSI/SAS 硬盘以及固态硬盘)更加的可靠和高效。S.M.A.R.T 系统能够帮助检测,报告,以及可能记录它们的健康状况,这样你就可以找出任何可能出现的硬件失效。' {0 k2 W$ y) \6 e0 X
你可以使用以下命令安装smartmontools:
7 n7 |+ O/ g  n2 R: v- p/ b& y; i
------------ 在基于 Debian/Ubuntu 的系统上 ------------
5 r5 `  q; V8 i$ W4 x4 d$ sudo apt-get install smartmontools
+ U8 P- l- s7 P& K# F. i+ \------------ 在基于 RHEL/CentOS 的系统上 ------------
5 K8 F3 f# E$ O0 ?$ sudo yum install smartmontools
% x6 c. l! _8 B' P, i# m+ b安装完成之后,使用 smartctl 控制磁盘集成的 S.M.A.R.T 系统。你可以这样查看它的手册或帮助:  T0 `! `) e( p

$ \3 q% J) I1 t7 B  y7 W; ~$ man smartctl
5 K) d$ O. u# \6 i$ smartctl -h2 M% h1 z' c8 I0 r/ P! Z$ ~
然后执行 smartctrl 命令并在命令中指定你的设备作为参数,以下命令包含了参数 -H 或 --health 以显示 SMART 整体健康自我评估测试结果。, P3 J' y, f0 h

7 {1 u- L9 H$ r4 v$ sudo smartctl -H /dev/sda10# N" |4 ?5 [' g" c( f* o- C
如何在 Linux 系统下检测硬盘上的坏道和坏块如何在 Linux 系统下检测硬盘上的坏道和坏块* l0 G0 q: u' D: z/ ?7 Y( y
检查 Linux 硬盘健康, I8 S5 S9 R  F! A
上面的结果指出你的硬盘很健康,近期内不大可能发生硬件失效。6 I* X+ O. O. L. |0 }7 ^
( h7 b& x$ ]7 b
要获取磁盘信息总览,使用 -a 或 --all 选项来显示关于磁盘所有的 SMART 信息, -x 或 --xall 来显示所有关于磁盘的 SMART 信息以及非 SMART 信息。; v; |+ i5 v- ~1 p

, _/ Y0 o; ~/ {' V4 C" s+ J在这个教程中,我们涉及了有关磁盘健康诊断的重要话题,希望能够帮助你。
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 23:53 , Processed in 0.051525 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

快速回复 返回顶部 返回列表