如何在Linux中检查硬盘上的坏扇区或坏块

在本文中,我们将完成必要的步骤,以确定您的Linux磁盘驱动器是否存在坏扇区。

让我们通过定义一个坏扇区/块中启动,这是一个磁盘驱动器或闪存无法读取或写入到了,作为一个固定的结果对部分磁盘上的物理损坏表面或失败的闪存晶体管。

随着坏扇区继续累积,它们可能不希望地或破坏性地影响磁盘驱动器或闪存容量,甚至导致可能的硬件故障。

同样重要的是要注意,坏块的存在应提醒您开始考虑获得新的磁盘驱动器,或者只是将坏块标记为不可用。

因此,在这篇文章中,我们将通过必要的步骤,可以使你确定一定的使用你的Linux磁盘驱动器或闪存坏扇区的存在或不存在的磁盘扫描实用工具

也就是说,下面是方法:

检查Linux磁盘中的坏扇区使用badblocks工具

一个badblocks程序,用户可以扫描设备是否有坏扇区或块。 该装置可以是硬盘或外部的磁盘驱动器,通过一个文件如/ dev / SDC表示。

首先,使用fdisk命令具有超级用户权限,以显示你所有的磁盘驱动器或闪存加上他们的分区的信息:

$ sudo fdisk -l
列出Linux文件系统分区

列出Linux文件系统分区

然后扫描您的Linux磁盘驱动器,通过键入以检查坏扇区/块:

$ sudo badblocks -v /dev/sda10 > badsectors.txt
在Linux中扫描硬盘坏扇区

在Linux中扫描硬盘坏扇区

在上面的命令,badblocks是扫描设备/ dev / SDA10(记得要指定实际设备)与-v使其能够显示操作的细节。 此外,操作的结果被存储由输出重定向的装置badsectors.txt的文件中。

如果您发现磁盘驱动器上的任何坏扇区,请卸载磁盘并指示操作系统不要写入报告的扇区,如下所示。

您将需要使用的e2fsck(对ext2 / ext3分区/ ext4文件系统)或fsck命令与badsectors.txt文件,设备文件,如下面的命令。

-l选项告诉命令,通过文件名(badsectors.txt)指定的文件中列出的块号添加到坏块列表。

------------ Specifically for ext2/ext3/ext4 file-systems ------------ 
$ sudo e2fsck -l badsectors.txt /dev/sda10
OR
------------ For other file-systems ------------ 
$ sudo fsck -l badsectors.txt /dev/sda10

使用Smartmontools在Linux磁盘上扫描坏扇区

这种方法更可靠,高效的现代磁盘(ATA / SATA和SCSI / SAS硬盘驱动器和固态驱动器)的船舶用SMART(自我监测,分析和报告技术)系统,可以帮助检测,报告和可能记录其健康状态,以便您可以确定任何即将发生的硬件故障。

您可以通过以下运行命令安装了smartmontools:

------------ On Debian/Ubuntu based systems ------------ 
$ sudo apt-get install smartmontools
------------ On RHEL/CentOS based systems ------------ 
$ sudo yum install smartmontools

一旦安装完成后,使用其smartctl读取控制集成到一个磁盘上的SMART系统。 您可以通过其手册页或帮助页,如下:

$ man smartctl
$ smartctl -h

现在执行smartctrl命令,并作为参数,如下面的命令,标志命名你的特定设备-H--health包括显示SMART整体健康自评测试结果。

$ sudo smartctl -H /dev/sda10
检查Linux硬盘运行状况

检查Linux硬盘运行状况

上面的结果表明您的硬盘是健康的,并可能不会遇到硬件故障很快。

对于磁盘信息的概述,使用-a--all选项以打印出有关磁盘和所有SMART信息-x--xall显示有关磁盘的所有SMART非智能的信息。

在本教程中,我们讨论了关于一个非常重要的课题硬盘健康诊断 ,您可以通过下面的反馈部分分享您的想法或问任何问题,并记得要经常保持联系Howtoing与我们联系。