22
7月
2022
如何在 Linux 中检查硬盘是否有坏扇区或坏块
15:01

如何在 Linux 中检查硬盘是否有坏扇区或坏块

22 7月 2022 15:01
  1. 较差的扇区称为磁盘部分,不可能从中读取有关它们的信息,或者访问速度比其他部门的访问速度明显低(几个数量级)。

监视不良部门数量的重要性

及时检测“飞行”扇区使您可以从运营商中保存大多数信息。 通常,任何载波的故障都会逐渐开始 - 首先会出现单个不良块,然后它们的数字在增长。 BAD的外观与设备的物理损害有关(例如,从带有HDD盘的笔记本电脑的严重脑震荡或存储设备的磨损(SSD磁盘的更具特征)或严重违反操作条件(操作过程中停电)。随着不良块数量的增加,必须立即用新的磁盘替换有错误的磁盘,并且从“家庭”用户目录中传输操作系统和信息。

如何找出Linux中不良部门的数量

首先,我们将显示可用的光盘和部分的列表:

lsblk

我们在列表中找到我们的设备(例如,sdb ):

user@linux ~ $ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 37,3G 0 disk
sdb 8:16 0 119,2G 0 disk
├─sdb1 8:17 0 32,3G 0 part
├─sdb2 8:18 0 4,9G 0 part
├─sdb3 8:19 0 1K 0 part
└─sdb5 8:21 0 82,1G 0 part /
sdc 8:32 0 465,8G 0 disk
└─sdc1 8:33 0 391,2G 0 part
sdd 8:48 1 250M 0 disk
├─sdd1 8:49 1 250M 0 part /media/vladimir/7E2B-BE10
└─sdd4 8:52 1 39,5M 0 part
sr0 11:0 1 1024M 0 rom

在这种情况下,我进行了小型闪存驱动器,体积为256 MB。 - /dev /sdd

解决方案:用实用程序不良块检查BadBlocks上的磁盘

磁盘在不良块上扫描:

sudo badblocks -sv /dev/sdd

密钥“ S”用于显示执行百分比。
参数“ V” - 用于工作结束后详细信息的输出。

如果没有错误,将显示该消息:

没有键-V
Checking for bad blocks (read-only test): done

使用键-V
Pass completed, 0 bad blocks found. (0/0/0 errors)

在严重损坏的椎间盘上,在发现一定数量的损坏后,中断执行是有意义的。 例如,如果不良块的数量超过20,则中断测试:

团队 - 20个错误后停止测试:

sudo badblocks -se 20  /dev/sdd

如果可以指定该扇区的物理大小为512字节,则可以在团队参数中澄清。 然后,将显示512个字节而非块的扇区数量。

sudo badblocks -sve 20 /dev /sdd -b 512

呢可以使用FSIDK -L命令找到物理部门的大小

 fdisk -l 

差异:在第一种情况下,在后一个扇区(512个字节)中检查了块(默认的1024个字节)。
它们的数字有很大不同。

!!!!因此,我们可以使用命令行和BadBlocks实用程序来找出设备上不良块的数量。

使用E2FSK -C命令对不良块进行校正

从01.08.2023添加
通常,不仅需要检测,还需要检测不良块的功率。
E2FSCK -C« name_toma»调用命令 badblocks при использовании ключа -c в режиме проверки (check).
同时,所有发现的不良块都是由E2FSCK处理的,标记为“不良”(无法记录信息)。 此命令像CHKDSK C: /F /R /X Windows团队一样运行,但在Linux中用于文件系统类型Ext4:

sudo e2fsck -c /dev/sda1

其中SDA1是Tom的名称(请参阅LSBLK结论)。

快速收到有关使用GNOME磁盘的不良块数量的信息

当使用具有智能支持的硬盘驱动器时,以快速使用GNOME-DISKS图形实用程序来快速得出不良块的数量

GNOME-DESK实用程序显示不良块的确切数量。

1)安装Gnome-Disks程序:

sudo apt-get install gnome-disk-utility

2)然后我们在“开始”菜单 - “标准” - “车轮”中启动该程序:
或从命令行:

gnome-disks

3)选择一个磁盘。

4)窗口中显示不良块的数量:
诊断

5)如果需要详细的诊断,我们将进入菜单3分(更多),
选择菜单项 “自我诊断数据和智能”

6)在整个屏幕上伸展窗口,寻找项目 “ figant扇区”
out_of_work

加法:用于阅读信息的GSMARTCONTROL实用程序S.M.A.R.T.

对于Linux,有一个可以查看HDD和SSD硬盘驱动器的内部诊断的实用程序,称为GSMARTCONTROL。

sudo apt install gsmartcontrol

使用开始菜单 - “系统” - “ GSMARTCONTROL”或TEAK启动:

sudo gsmartcontrol-root

GSMARTCONTROL程序的窗户的外观:

GSMARTCONTROL1

GSMARTCONTROL2

有关不良块的信息可在 “属性”书签上找到:
*参数“离线不可恢复” _

接近“坏块”状态的块数量,这些数据被移至硬盘驱动器的储备区域:
*参数“重新分配的扇区计数”

显然,良好的磁盘具有两个“离线不可收回的”和“重新分配的部门数量”的数字,应该是零。

呢注意:“寻求错误率”参数的高值(数千个)表明,硬盘的磁头位置的严重问题通常在旧的“硬盘驱动器”中找到。 由于力学问题问题,这种硬盘需要更换。 “原始读取错误率”并不是Thano的表面磁盘表面的问题。

“自我测试” 可用简短的检查(自我测试)。 在HDD上,SSD的测试持续时间约为2分钟 - 大约40秒。

GSMARTCONTROL3

在审计结束时,该计划就磁盘的适用性结束了。 消息“测试结果:完成没有错误” _表示电子(以及HDD中的机制)正在工作:

自我测试

主页gsmartcontrol:
https://gsmartcontrol.shaduri.dev/

诊断结论S.M.A.R.T.通过命令行

如果无法安装GSMARTCONTROL,则在许多分布中,有一个命令行实用程序 “ smartCtl” ,它可以测试磁盘并可以输出S.M.A.R.T.

用法:

sudo smartctl --test=short /dev/sda

开始快速磁盘检查后,您需要等待2分钟(在后台进行测试)。
120秒后,您需要执行第二个命令:

sudo smartctl -H /dev/sda

命令的结论:通过 - 健康磁盘,失败 - 磁盘是错误的。

如有必要,我们将获得有关磁盘健康的所有信息:

sudo smartctl -a /dev/sda | less

到下一个屏幕的过渡是差距键。

在输出结果中,下面列出的诊断参数应为零:
1“ RAW_READ_ERROR_RATE”
5“ reallocated_sector_ct”
196“ reallocated_event_count”
197“ current_pending_sector”
198“ Offline_uncorcectable”
232“可用_RESERVD_SPACE”

在良好磁盘的情况下进行简短检查的结果:
状态:“没有错误的竞争”



相关出版物