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

您使用哪种类型的设备并不重要。 总是有机会损坏您的设备。 它可能是物理损坏或逻辑损坏。 在大多数情况下,物理错误发生在系统硬盘内部。 逻辑错误发生在 RAM 或其他包含晶体管的组件中。 当您无法在 Linux 系统的硬盘上读取或写入任何数据时,就会出现坏块或坏扇区。 如果您使用的是固态硬盘 (SSD),您不应该放松。 有时在 SSD 上也会出现逻辑错误。 坏块可能是导致您从硬盘或 SSD 中丢失所有数据的原因。 这就是为什么要防止丢失您的宝贵数据; 检查Linux系统中硬盘上是否有坏扇区或坏块是很重要的。

硬盘坏扇区或坏块

热量、灰尘、超频、电源不稳定以及分区方式不当可能是硬盘出现坏块的原因。 根据硬盘受影响的严重程度,损坏可能会随着时间的推移而变化。 Linux 维护文件系统层次结构,因此要检查硬盘上的坏扇区,必须找出损坏源。

对于硬盘,盘片、读写头内部可能会发生损坏,或者致动器臂可能会移位。 对于 SSD 的损坏可能在 NAND 闪存内部或在主机接口中。 在这篇文章中,我们将了解为什么硬盘上会出现坏块或坏扇区以及如何检查 Linux 中的坏扇区。

方法一:使用 badblocks Linux中检查硬盘坏块的工具

使用 坏块工具 在您的 Linux 终端中,您可以查看硬盘的整体状态。 生成完整的报告需要一段时间。 该终端命令可以获得只读权限,因此不会进行数据写入测试。 您可以在命令行中选择要检查的硬盘设备的哪个分区。

$ sudo badblocks -sv -b 512 /dev/sda
$ sudo badblocks -s /dev/sda

如果您想获得硬盘或存储系统所有坏扇区的自动生成日志文件,您可以尝试下面编写的 badblock CLI。 如果发现坏扇区,此命令将在您的目录中生成一个文本文件。

– –

$ sudo badblocks -v /dev/sda > badsectors.txt

要修复硬盘中的坏扇区,您可以在 Linux 终端中运行此命令行,风险自负。 有机会删除您的数据。 因此,如果您不是专家,请不要自己动手。 通常, e2fsck 命令可以确定超级块、坏块、块大小和拯救硬盘的调试方法。

$ sudo e2fsck -l badsectors.txt /dev/sda

方法二:监控 硬盘上的坏扇区使用 fdisk list Linux中的命令

在检查硬盘内是否有坏扇区之前,您可能需要获取与 Linux 系统连接的所有存储设备的列表。 要显示已连接的硬盘/存储设备,您始终可以从系统终端运行 list 命令。 不要忘记以超级用户身份使用终端。 否则,您的访问可能会被拒绝。

$ sudo fdisk -l

然后是时候在你的 Linux 机器中运行一个梳理操作来查找硬盘中所有损坏的块。 让,我们要将成绩单文件保存在 temp 目录中。 在这种情况下,我们的 CLI 将如下所示。 在这里, -v(visual) is 还会在终端显示工作进度。 在这里,我们试图找到我们的坏块 sda 磁盘; 您将放置所需的磁盘分区。

$ sudo badblocks -v /dev/sda > /tmp/bad-blocks.txt

方法3:检查硬盘上的坏块使用 smarttools Linux中的命令

Smartmontools 是一个基本的、简洁的 Linux 磁盘报告卡工具,允许用户生成版本、版权、许可证和健康信息。 要安装 Smartmontools,请按照下面给定的终端命令进行操作。

$ sudo apt update
$ sudo apt install smartmontools

安装智能工具

安装完成后,您现在可以从 Linux 终端使用 Smartmontools。 要立即在您的显示器上获得自行生成的智能报告,请使用 smartctl 命令。 不要忘记提及您的硬盘分区。

$ sudo smartctl -a /dev/sda

linux硬盘坏道检查智能错误日志1

要查看硬盘的整体测试报告,请在终端中向下滚动。 您会发现一份完整的报告卡,其中包括硬盘设备型号、序列号、固件版本、外形尺寸,最重要的是,您的硬盘是否通过了整体健康自我评估测试!

SMART整体健康自我评估测试结果

方法 4:从 Linux GNOME 磁盘管理实用程序检查硬盘评估

除了上述所有方法外,Linux 中还有一种快速方法,可让您检查硬盘的当前状况、温度、循环次数、开机时间和整体评估。 在 Linux 中,对于分区编辑任务,大多数用户都非常喜欢使用 Gparted。 毫无疑问,Gparted 是一个很棒的工具。

但除了所有磁盘管理实用工具之外,Linux 还附带了 GNOME 的默认磁盘管理实用工具,名为 Disk! 要从 Disk 中获取硬盘信息和状态,请从 Linux 系统面板打开 Disk。 打开磁盘后,单击三点菜单并选择 Smart data and self-test 菜单。

干得好! 您将能够看到如下图所示的窗口。 你会发现 Start self-test 窗口底部的按钮。 单击自检按钮后,它将启动,稍后在窗口右上角,您将获得 Overall Assessment 您的硬盘报告。

自检进度50个硬盘坏道检查linux

如果你仍然好奇,你可以从你的 Linux 系统中查看你的硬盘的基准测试报告。 与我们之前完成的过程相同,从 GNOME 磁盘管理实用程序的三点菜单中选择 Benchmark Disk,然后点击 Start Benchmark. 您将在 Linux 显示器上看到基准图表报告。

在linux坏块中对硬盘的数据速度进行基准测试

最后的想法

粗暴使用桌面可能会中断硬盘内部的数据处理(读取或写入)。 突然关闭机器也会损坏硬盘。 在为您的硬盘提供生命支持之前,定期检查可以挽救您的硬盘寿命。 在这篇文章中,我们解释了硬盘中可能出现的一些常见错误,并演示了如何检查 Linux 系统中的坏扇区或坏块的几种方法。

如果你不是一个疯狂的系统管理员,当然,你喜欢你的数据。 在你的 Linux 用户社区中分享这篇文章,如果你想询问或添加与这篇文章相关的任何内容,也可以发表评论。