Linux 系统下检测硬盘上的坏道和坏块
1.首先,通过超级用户权限执行 fdisk 命令来显示你的所有磁盘或闪存的信息以及它们的分区信息:
root: fdisk -l
其他有权限的用户 :sudo fdisk -l
2. 列出 Linux 文件系统分区 df -h
3. 然后用以下命令检查你的 Linux 硬盘上的坏道/坏块并写入到一个txt中。
root:badblocks -v /dev/sda1 > badsectors.txt
其他有权限的用户: sudo badblocks -v /dev/sda1 > badsectors.txt
上面的命令中,badblocks 扫描设备/dev/sda1(记得指定你的实际设备),-v选项让它显示操作的详情。另外,这里使用了输出重定向将操作结果重定向到了文件badsectors.txt。
如果你在你的磁盘上发现任何坏道,卸载磁盘并像下面这样让系统不要将数据写入回报的扇区中。
你需要执行e2fsck(针对 ext2/ext3/ext4 文件系统)或fsck命令针对其他的文件系统,命令中还需要用到badsectors.txt文件和设备文件。
-l 选项告诉命令将在指定的文件 badsectors.txt 中列出的扇区号码加入坏块列表。
---------------针对 for ext2/ext3/ext4 文件系统 ------------
$ sudo e2fsck -l badsectors.txt /dev/sda1
-------------------针对其它文件系统 ---------------------------
$ sudo fsck -l badsectors.txt /dev/sda1