Проверка целостности жесткого диска является важной задачей для поддержания работоспособности и надежности компьютера. Поврежденные сектора или блоки дисков могут привести к потере данных и нестабильности в работе операционной системы, поэтому очень важно своевременно их выявлять и устранять. В Linux существуют различные инструменты и команды, позволяющие обнаруживать и анализировать плохие сектора на дисковых накопителях.
В этой статье мы рассмотрим два способа проверки поврежденных секторов или блоков на жестком диске в Linux.
Содержание:
Используйте команду badblocks
Утилита badblocks
определяет поврежденные сектора или блоки на устройстве хранения данных (например, на жестком диске). Она выполняет проверку на чтение / запись заданных блоков для обнаружения ошибок и несоответствий. Команда также предоставляет ряд опций:
-b
— указывает размер блока для тестирования;-c
— задает количество блоков, которые будут тестироваться за один раз;-w
— записывает определенные шаблоны на указанные блоки и считывает их для проверки целостности;-n
— считывает указанные блоки без изменения данных, позволяя проверить их на наличие возможных ошибок;-s
— показывает прогресс тестирования в реальном времени, отображая текущий статус и количество обработанных блоков;-v
— предоставляет подробную информацию о процессе тестирования и любых обнаруженных ошибках;-o
— указывает файл для вывода, в котором будут сохранены результаты теста.
Перед запуском команды badblocks
стоит проверить, из каких разделов состоит жесткий диск компьютера. Для этого воспользуемся утилитой fdisk
с параметром -l
:
Читайте также: 5 лучших менеджеров разделов / Partition Manager (CLI + GUI) для Linux.
Как видно на скриншоте, диск /dev/sda
разбит на три раздела — /dev/sda1
, /dev/sda2
и /dev/sda5
.
Допустим, нам нужно просканировать /dev/sda1
на наличие поврежденных блоков. Для этого выполним команду:
Также мы использовали опцию -v
для отображения подробной информации о процессе тестирования. Чтобы сохранить детали проверки диска, можно записать результат работы badblocks
в файл с помощью параметра -o
или перенаправления ввода / вывода. Например:
Или:
Используйте набор приложений Smartmontools
Smartmontools — это набор инструментов командной строки, предназначенных для мониторинга / анализа данных технологии SMART с жестких дисков (HDD), твердотельных накопителей (SDD) и так далее. SMART — это технология, позволяющая устройствам хранения данных самостоятельно отслеживать свое состояние и сообщать о различных характеристиках, связанных с их надежностью и производительностью.
Пакет Smartmontools включает в себя несколько утилит, в том числе smartctl
и smartd
. Первая используется для запроса и получения SMART-информации с устройств хранения данных. Вторая отслеживает статус оборудования и может выдавать предупреждения или выполнять другие действия в зависимости от заданных условий.
Smartmontools не предустановлен в большинстве дистрибутивов Linux. Поэтому для его установки выполните одну из следующих команд.
Для Debian / Ubuntu:
Для RHEL / CentOS:
Читайте также: 9 инструментов для мониторинга разделов в Linux.
Для проверки целостности диска мы будем использовать команду smartctl
с параметром -H
(или --health
). Эта опция позволяет получить общую информацию о состоянии устройства хранения данных в соответствии с SMART. В результате smartctl -H
обычно выдает одно из следующих состояний:
PASSED
илиOK
— не обнаружено существенных проблем или ошибок, состояние устройства считается хорошим;FAILED
— обнаружены критические проблемы или ошибки, состояние устройства считается неудовлетворительным;UNKNOWN
— невозможность предоставления информации, данные SMART недоступны или не поддаются интерпретации.
Для примера проверим на целостность раздел /dev/sda1
:
Выводы
Использование инструментов badblocks
и smartctl
позволяет выявлять и устранять потенциальные проблемы с устройствами хранения данных на ранних стадиях. Регулярная проверка дисков поможет предотвратить потерю данных. Для точной диагностики и устранения обнаруженных проблем обязательно следуйте рекомендованным процедурам и обращайтесь к соответствующей документации или профессиональной помощи.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Cisco, курсы по кибербезопасности, полный курс по кибербезопасности, курсы DevNet / DevOps (программируемые системы) от Академии Cisco, курсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).
Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!
- Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
- Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
- Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
- Проведем вечерние онлайн-лекции на нашей платформе.
- Согласуем с вами удобное время для практик.
- Если хотите индивидуальный график — обсудим и реализуем.
- Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
- Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
- отредактировать или создать с нуля резюме;
- подготовиться к техническим интервью;
- подготовиться к конкурсу на понравившуюся вакансию;
- устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.