我们通过几个必要的步骤,使用特定的磁盘扫描工具让你能够判断 Linux 磁盘或闪存是否存在坏道。
% @& ]5 ~, J+ h V. O操作步骤如下:9 c& B9 z1 }$ _- U
在 Linux 上使用坏块工具检查坏道
. T1 Z0 u/ e5 k坏块工具可以让用户扫描设备检查坏道或坏块。设备可以是一个磁盘或外置磁盘,由一个如1 F; J4 b" [2 ]7 s& k4 X
/dev/sdc' s$ i. t; u2 k0 x7 f
这样的文件代表。1 L, J- v' j/ C& z5 E' Y. Q+ I
首先,通过超级用户权限执行 fdisk 命令来显示你的所有磁盘或闪存的信息以及它们的分区信息:
' G9 C- C5 n$ ^- \9 A" V fdisk -l
( p; e# d# {1 Z' J/ E. t8 _ R磁盘6 M; @7 \' K" N, n7 t0 a! X
& ^' R( `/ {( s, w }# H5 d2 c
badblocks -v /dev/sdb1 > badsectors.txt) k& s- v& U9 i, g. O4 A0 l
Checking blocks 0 to 9755842556 n4 m" @2 J3 [" a, Z1 L
Checking for bad blocks (read-only test):
; W/ u. L1 G. n# V& }: \' M, |% }, }" \( q- C) x; G( ^) x
) L% q" \: J k: C
8 M- n5 ~' [9 B9 u" \5 Y7 Q5 a$ P上面的命令中,badblocks 扫描设备/dev/sdb1(记得指定你的实际设备),-v选项让它显示操作的详情。另外,这里使用了输出重定向将操作结果重定向到了文件badsectors.txt。 如果你在你的磁盘上发现任何坏道,卸载磁盘并像下面这样让系统不要将数据写入回报的扇区中。 你需要执行e2fsck(针对 ext2/ext3/ext4 文件系统)或fsck命令,命令中还需要用到badsectors.txt文件和设备文件。 -l 选项告诉命令将在指定的文件 badsectors.txt 中列出的扇区号码加入坏块列表。
% i1 m" V. W* ]8 ~2 a4 h# Z3 A# c3 u0 [6 P1 ~, F
6 w! g- {. i' L3 t6 G$ b |