分享最新优惠信息
购买主机更加划算

分享Linux系统监测硬盘坏扇区或坏块的简单过程步骤

什么是坏扇区/坏块(bad sector/bad block)?顾名思义,它是指磁盘驱动器或闪存上无法再读取或写入的部分,这通常是由于磁盘表面的永久性物理损坏或闪存晶体管故障造成的。

随着坏扇区的不断积累,它们会严重影响存储设备的性能、降低其容量,甚至导致硬件完全故障,从而导致数据丢失。需要注意‌的是,出现坏道的情况应提醒你考虑更换新硬盘驱动器,或直接将坏道标记为不可用。

在本文中,小编将简单介绍如何通过特定的磁盘扫描工具,帮助您你检测Linux硬盘驱动器或闪存设备是否存在坏道,接下来一起来看看吧。

使用 badblocks 工具检查坏扇区

badblocks工具可让你扫描存储设备(例如硬盘或外部驱动器)中的坏扇区,设备通常以/dev/sdc/dev/sda之类的文件形式列出。

步骤1:列出所有磁盘和分区

首先使用具有超级用户权限的fdisk命令显示有关所有磁盘驱动器或闪存及其分区的信息:

sudo fdisk -l

列出Linux文件系统分区

这将帮助你识别要扫描的正确设备名称。

步骤2:扫描坏扇区/坏块

然后通过输入以下命令扫描Linux磁盘驱动器以检查是否有坏扇区/坏块:

sudo badblocks -v /dev/sda10 > badsectors.txt

在Linux中扫描硬盘坏道

在上面的命令中,badblocks正在扫描设备/dev/sda10(请替换成你自己实际设备名称),-v显示操作的详细信息。此外,操作结果通过输出重定向存储在文件badsectors.txt文中

如果你发现磁盘驱动器上有任何坏扇区,请先卸载磁盘,并按如下步骤指示操作系统不要写入已报告的扇区‌。

步骤3:将坏扇区标记为不可用

你需要使用e2fsck(针对 ext2/ext3/ext4文件系统)或fsck命令,结合badsectors.txt文件和设备文件执行操作,命令示例如下。

对于ext2/ext3/ext4文件系统:

sudo e2fsck -l badsectors.txt /dev/sda10

对于其他文件系统:

sudo fsck -l badsectors.txt /dev/sda10

使用Smartmontools扫描磁盘健康状况(推荐)

该方法对现代磁盘(ATA/SATA和SCSI/SAS硬盘驱动器及固态驱动器)‌更可靠高效‌,这类设备‌出厂时均预装‌S.M.A.R.T(自我监测、分析与报告技术)系统,可协助‌检测、报告并记录‌设备健康状态,‌便于你预判潜在的硬件故障‌。

步骤1:在Linux中安装smartmontools

可以通过运行以下命令来安装smartmontools工具

sudo apt install smartmontools #适用于基于Debian系统
sudo dnf install smartmontools #适用于基于RHEL系统

步骤2:使用smartctl运行健康检查

安装完成之后,现在就可以使用smartctl(该工具用于操控磁盘内置的S.M.A.R.T系统)。你也可通过如下方式查阅其手册页或帮助页:

man smartctl
smartctl -h

步骤3:运行基本健康测试

现在执行 smartctl命令‌,并将你的特定设备名作为参数传入。如下列命令所示,其中需包含-H--health标志‌以显示S.M.A.R.T综合健康测试结果:

sudo smartctl -H /dev/sda10

检查Linux硬盘健康状况

上述结果表明硬盘状况良好,并且短期内不太可能出现硬件故障‌。

可选:查看完整的SMART报告

要获取磁盘信息的完整概览,请使用-a--all选项打印该磁盘的所有S.M.A.R.T数据;或使用-x--xall选项‌显示磁盘的全部信息(包含S.M.A.R.T及非S.M.A.R.T相关数据)。

sudo smartctl -a /dev/sda10

或者更全面一些:

$ sudo smartctl -x /dev/sda10

总结

在上述内容中,小编介绍了使用badblocks和smartmontools工具识别和管理Linux驱动器上的坏扇区简单方法。在平常工作当中,密切关注Linux磁盘存储健康状况至关重要,而这些工具让这一切变得非常简单。

未经允许不得转载:惠主机 » 分享Linux系统监测硬盘坏扇区或坏块的简单过程步骤