Как проверить плохие секторы или блоки на жестком диске в Linux

Давайте начнем с определения плохого сектора/блока, это секция на жестком диске или флэш-памяти, которую больше нельзя читать или записывать из-за фиксированного физического повреждения на поверхности диска или неисправных транзисторов флэш-памяти.

Поскольку плохие сектора продолжают накапливаться, они могут нежелательно или разрушительно влиять на емкость вашего жесткого диска или флэш-памяти, а также даже привести к возможному отказу оборудования.

Также важно отметить, что наличие плохих блоков должно предупредить вас о необходимости начать думать о приобретении нового жесткого диска или просто пометить плохие блоки как непригодные для использования.

Поэтому в этой статье мы рассмотрим необходимые шаги, которые позволят вам определить наличие или отсутствие плохих секторов на вашем жестком диске Linux или флэш-памяти с использованием определенных утилит сканирования диска.

Сказано это, вот методы:

Проверка плохих секторов в дисках Linux с помощью инструмента badblocks

A badblocks program enables users to scan a device for bad sectors or blocks. The device can be a hard disk or an external disk drive, represented by a file such as /dev/sdc.

Сначала используйте команду fdisk с привилегиями суперпользователя, чтобы отобразить информацию о всех ваших жестких дисках или флэш-памяти и их разделах:

$ sudo fdisk -l
List Linux Filesystem Partitions

Затем отсканируйте ваш жесткий диск Linux, чтобы проверить наличие плохих секторов/блоков, набрав:

$ sudo badblocks -v /dev/sda10 > badsectors.txt
Scan Hard Disk Bad Sectors in 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

Сканирование поврежденных секторов на диске Linux с использованием Smartmontools

Этот метод более надежен и эффективен для современных дисков (жесткие диски ATA/SATA и SCSI/SAS и твердотельные накопители), которые поставляются с системой S.M.A.R.T (самомониторинг, анализ и отчетность), которая помогает обнаруживать, сообщать и, возможно, регистрировать их состояние здоровья, чтобы вы могли определить любые предстоящие аппаратные сбои.

Вы можете установить smartmontools, запустив следующую команду:

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

------------ On RHEL/CentOS based systems ------------ 
$ sudo yum install smartmontools

После завершения установки используйте smartctl, который управляет системой S.M.A.R.T, встроенной в диск. Вы можете ознакомиться с его страницей руководства или справочной страницей следующим образом:

$ man smartctl
$ smartctl -h

Теперь выполните команду smartctrl и укажите ваше конкретное устройство в качестве аргумента, как в следующей команде, флаг -H или --health включен для отображения результата SMART общего самооценочного теста здоровья.

$ sudo smartctl -H /dev/sda10
Check Linux Hard Disk Health

Результат выше указывает на то, что ваш жесткий диск здоров и в ближайшее время не должен испытывать аппаратные сбои.

Для обзора информации о диске используйте опцию -a или --all, чтобы вывести всю информацию SMART о диске и -x или --xall, которая отображает всю информацию SMART и не-SMART о диске.

В этом учебном пособии мы рассмотрели очень важную тему, касающуюся диагностики здоровья дискового накопителя, вы можете связаться с нами через раздел обратной связи ниже, чтобы поделиться своими мыслями или задать любые вопросы, и помните всегда оставаться на связи с Tecmint.

Source:
https://www.tecmint.com/check-linux-hard-disk-bad-sectors-bad-blocks/