Проверяем диск на битые секторы в Linux

Для хранения и обработки информации на рабочей станции используются носители HDD либо SSD. Владельцы записывают на них фото, видео, любимые книги, игры и т.д. Но что делать, если диск выдает ошибки или, хуже того, не читается операционной системой? Статья расскажет о том, как проверить жесткий диск на битые секторы в ОС семейства Linux. В качестве примера возьмем Ubuntu 18.04.3.

Что такое битый сектор?

Для начала разберёмся, что это за проблема – битый сектор. Сектор представляет собой микроэлемент на носителе, который отвечает за операции чтения/записи. Понятие «битый» применятся к элементу в том случае, если он перестал реагировать на запросы операционной системы.

Различают два типа повреждений: физическое и логическое. В первом случае подразумевается, что сектор вышел из строя из-за механических поломок или физических повреждений: например, его повредила головка носителя, жесткий упал на твердую поверхность, в него попала влага и т.д.

К логическим повреждениям относят сектора, которые ОС не читает. При обращении к ним возникает ошибка, поэтому они отмечаются как битые. Хорошая новость в том, что логические ошибки исправляются. 

Зачем нужна проверка диска?

Проверка носителя в ряде случаев исправляет ошибки, что восстанавливает работоспособность рабочей станции до предыдущего состояния. Любая ОС имеет программный инструмент для определения состояния дисков, но сторонние производители предлагают более функциональные решения.

Программы для проверки диска

Расскажем про некоторые программы для Linux-систем.

Badblocks

Битые сектора в английском языке называют badblocks, отсюда и название утилиты. Она интегрирована в любой релиз Linux. Перед ее запуском определимся с количеством HDD, доступных в ОС. Наберем в терминале:

sudo fdisk -l

Информация представлена в виде списка с подробным описанием каждого раздела.

Проверяем диск на битые секторы в Linux

Разделы HDD

Теперь запустим приложение для исправления ошибок.

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

Синтаксис расшифровывается следующим образом:

  • Badblocks -v. Утилита после операции выдает подробную информацию.
  • /dev/sda1 – раздел, приложение проверяет.
  • badsectors.txt – файл, в который утилита отправляет результат проверки. Имя придумывается произвольное.

Если при проверке найдены битые сектора, то воспользуемся утилитой в зависимости от типа файловой системы. В большинстве случаев для домашней ОС семейства Linux использует файловую структуру Ext. Для нее подходит приложение e2fsck. Если же ОС использует другой тип, то воспользуемся альтернативой – fsck.

По умолчанию оба варианта интегрированы в ОС.

Вводим в терминале команду:

sudo e2fsck -l badsectors.txt /dev/sda1

либо

sudo fsck -l badsectors.txt /dev/sda1

Ключ -I означает, что утилита собирает сведения о поврежденных секторах из файла badsectors.txt, а после пробует исправить их.

SMARTMONTOOLS

Второй способ проверки жесткого диска – приложение Smartmontools. Оно работает со встроенной микропрограммой на жестких дисках под названием S.M.A.R.T, которая во время старта компьютера автоматически проверяет носитель на наличие ошибок и проблем.

Программа не входит в состав стандартного программного обеспечения, поэтому проинсталлируем ее:

sudo apt-get install smartmontools

После инсталляции запускаем приложение с правами администратора:

sudo smartctl -H /dev/sda1

ПО возьмет результаты проверки из S.M.A.R.T и отобразит в терминале для пользователя.

Если необходимо использовать дополнительные функции программы, то используем ключ man:

man smartctl

Например, для отображения подробной информации о жестком диске используем ключ –a или –all.

Gparted

Третий метод проверки – программа для разбивки носителя под названием Gparted. Для ее инсталляции вводим:

sudo apt-get install gparted

Установка займет максимум две минуты.

Важно! Запускаем ПО с правами администратора для получения доступа к расширенному функционалу.

Проверяем диск на битые секторы в Linux

Проверка диска

Нажимаем правой кнопкой мыши на логическом томе, выбираем раздел «Проверка» (Check). В нижней строке появится информация о запланированной операции.

Проверяем диск на битые секторы в Linux

Выполнение операций в программе

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

Важно! Проверка и другие аналогичные действия выполняются только на неактивном логическом томе.

Если битые сектора возникают на системном диске, то используем загрузочную флэшку для запуска Live Ubuntu. В результате создается виртуальный жесткий диск с ОС Ubuntu. 

Заключение

Публикация рассказала о том, как проверить жесткий диск в ОС семейства Linux на наличие поврежденных секторов. Предложены способы исправления.

Источник