找回密码
 注册
查看: 1375|回复: 1

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

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2021-11-15 10:55:49 | 显示全部楼层 |阅读模式
我们通过几个必要的步骤,使用特定的磁盘扫描工具让你能够判断 Linux 磁盘或闪存是否存在坏道。
- B7 f9 i5 n$ n, v# ^0 N% Z3 u0 K2 L- P操作步骤如下:
5 ?; T0 E7 o! T在 Linux 上使用坏块工具检查坏道# K# r* B2 l; R/ p0 V
坏块工具可以让用户扫描设备检查坏道或坏块。设备可以是一个磁盘或外置磁盘,由一个如+ g, W2 Q/ J- T7 Z' Z- ^/ L
/dev/sdc1 O# ~( `" B2 ]  U! N+ n
这样的文件代表。, g: D+ [5 I) l& q
首先,通过超级用户权限执行 fdisk 命令来显示你的所有磁盘或闪存的信息以及它们的分区信息:/ a1 T+ _' d' R3 O! j. o3 Q
fdisk -l
4 L8 U. }9 A. |, q0 `. |磁盘
: H/ R2 P# u; [( H; y; @6 Y7 Z% o4 L
badblocks -v /dev/sdb1  > badsectors.txt
" D( e2 J" ]4 X, v, wChecking blocks 0 to 975584255
: k+ D3 u; l8 m. X( VChecking for bad blocks (read-only test): ! X3 x' ~+ O/ l6 Y/ Z+ i: ]# P
/ A, F8 ]' u0 `3 u

0 n- R8 ^+ i" \; \# ?  z6 b, R, T7 ]7 u' V( f

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

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

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

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

! l; R4 |+ V, n8 ]" O" p) k8 v
3 M% k3 o0 X* v0 o8 s/ F
4 @+ r* a& `. j) G' a

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2021-11-15 10:58:37 | 显示全部楼层
------------ 针对 for ext2/ext3/ext4 文件系统 ------------
4 Z: Q$ ]! w2 x$ sudo e2fsck -l badsectors.txt /dev/sda10" ?% r+ L" R* ~7 K8 C1 a
4 m2 X$ z2 C# c) E/ b1 K# W( C
------------ 针对其它文件系统 ------------" j0 m: R9 x; y& H4 v# s4 @
$ sudo fsck -l badsectors.txt /dev/sda10
' x" B4 q4 C% M% c. p. h! A& s在 Linux 上使用 Smartmontools 工具扫描坏道
0 j1 k3 G9 B6 ^* u2 K7 K这个方法对带有 S.M.A.R.T(自我监控分析报告技术Self-Monitoring, Analysis and Reporting Technology)系统的现代磁盘(ATA/SATA 和 SCSI/SAS 硬盘以及固态硬盘)更加的可靠和高效。S.M.A.R.T 系统能够帮助检测,报告,以及可能记录它们的健康状况,这样你就可以找出任何可能出现的硬件失效。
8 ]* E6 C# @7 h& i8 l8 _7 `你可以使用以下命令安装smartmontools:
7 |6 D2 v5 U+ N$ ^. a" g+ n
# L5 K1 Y  f% ]8 }7 t' b------------ 在基于 Debian/Ubuntu 的系统上 ------------
& e+ P' P2 i/ A1 T, ^$ sudo apt-get install smartmontools
' [' [- y( M# [( `------------ 在基于 RHEL/CentOS 的系统上 ------------
9 ^5 Q5 n0 c0 |5 B. h$ sudo yum install smartmontools
8 T. X, [) J+ ]6 {/ D/ w! S安装完成之后,使用 smartctl 控制磁盘集成的 S.M.A.R.T 系统。你可以这样查看它的手册或帮助:
( u! D. z3 Y# N( p6 w
0 D- a( j9 V! r1 b$ man smartctl
# u3 I- q( H, @. }. Q0 {1 ?  s$ smartctl -h
) z7 Y( O- u% D- Z3 p0 Z然后执行 smartctrl 命令并在命令中指定你的设备作为参数,以下命令包含了参数 -H 或 --health 以显示 SMART 整体健康自我评估测试结果。
3 R+ w2 v$ b5 ?- l; [; T# D2 F4 }' P2 E2 [' Z
$ sudo smartctl -H /dev/sda10
( k6 d  }3 S6 {) C如何在 Linux 系统下检测硬盘上的坏道和坏块如何在 Linux 系统下检测硬盘上的坏道和坏块
; r( k; R5 g* R, E# J0 h$ H4 X/ n检查 Linux 硬盘健康( A' Q9 J9 W: F! C
上面的结果指出你的硬盘很健康,近期内不大可能发生硬件失效。
2 L+ w: X1 v5 e# p% Y! g  J
+ `; e$ f1 C6 W* N/ p* S9 m/ d要获取磁盘信息总览,使用 -a 或 --all 选项来显示关于磁盘所有的 SMART 信息, -x 或 --xall 来显示所有关于磁盘的 SMART 信息以及非 SMART 信息。- {( K( o- d9 M  J% K
9 }5 I! ^# c3 F) S
在这个教程中,我们涉及了有关磁盘健康诊断的重要话题,希望能够帮助你。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 02:01 , Processed in 0.017307 second(s), 23 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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