Инструменты пользователя

Инструменты сайта


linux:administration:hdd_check

Это старая версия документа!


# Проверка состояния жестких дисков в Linux

Тремя наиболее популярными инструментами для сканирования дисков в Linux являются badblocks, fsck и GSmartControl.

Получить список всех HDD подключенных в систему можно например с помощью команды: ``` fdisk -l ``` в результате получим листинг всех подключенных накопителей, их размер и имена устройств в системе.

Если необходимо посмотреть какие устройства и куда смонтированы, то это можно сделать с помощью команды: ``` mount ```

Также можно получить краткий вывод списка подключенных HDD с указанием их разделов, размеров, и точек монтирования при помощи команды: ``` lsblk ```

## Проверка состояние диска с помощью fsck

Команда fsck (от англ. File System Consistency Check) используется для проверки и восстановления файловых систем в Unix-подобных ОС, таких как Linux, macOS и FreeBSD. Утилита считывает метаданные файловой системы и сравнивает их с реальными данными на диске. Если fsck обнаруживает какие-либо ошибки, утилита предлагает методы их решения.

Утилита fsck по умолчанию входит в состав дистрибутивов Linux. Для её использования не требуется никаких специальных шагов или процедуры установки.

Важно! Перед запуском утилиты следует размонтировать диск. Запуск fsck на смонтированном диск приведет к повреждению данных.

Базовый синтаксис: ``` fsck <options> <filesystem> ``` здесь:

  1. filesystem - может быть устройство, точка монтирования или раздел, в том числе LVM.
  2. options - параметры, которые можно использовать с утилитой fsck.

Наиболее часто применяемые параметры:

  1. -p - утилита автоматически исправит найденные ошибки
  2. -с - проверка файловой системы на поврежденные сектора

Список параметров: -a - Устаревшая опция. Указывает исправлять все найденные ошибки без одобрения пользователя. -r - Применяется для файловых систем ext. Указывает fsck спрашивать пользователя перед исправлением каждой ошибки. -n - Выполняет только проверку ФС, без исправления ошибок. Используется также для получения информации о ФС. -c - Применяется для файловых систем ext3/4. Помечает все повреждённые блоки для исключения последующей записи в них. -f - Принудительно проверяет ФС, даже если ФС исправна. -y - Автоматически подтверждает запросы к пользователю. -b - Задаёт адрес суперблока. -p - Автоматически исправлять найденные ошибки, без вопросов к пользователю. Заменяет устаревшую опцию -a. -A - Проверяет все ФС. -С [<fd>] - Показывает статус выполнения. Здесь fd – дескриптор файла при отображении через графический интерфейс. -l - Блокирует устройство для исключительного доступа. -M - Запрещает проверять примонтированные ФС. -N - Показывает имитацию выполнения, без запуска реальной проверки. -P - Проверять вместе с корневой ФС. -R - Пропускает проверку корневой ФС. Может использоваться только совместно с опцией -A. -r [<fd>] - Выводит статистику для каждого проверенного устройства. -T - Не показывать заголовок при запуске. -t <тип> - Задаёт ФС для проверки. Можно задавать несколько ФС, перечисляя через запятую. -V - Выводит подробное описание выполняемых действий.

Более подробную информацию об утилите fsck можно найти на ее справочной странице: ``` man fsck ```

## Сканирование с помощью badblocks

Команда badblocks сканирует диски на наличие поврежденных секторов. Этот инструмент осуществляет чтение и запись данных в каждый сектор диска. Если badblocks встречает поврежденный блок, то помечает его как плохой.

Синтаксис: ``` $ sudo badblocks [параметры] /dev/имя_раздела_диска ``` где:

  • /dev/имя_раздела_диска - имя устройства для проверки
  • параметры - необязательные параметры проверки

Некоторые параметры:

  • -b - установка размера блока в байтах. Этот параметр желательно определять всегда. Размер используемого блока зависит от типа создаваемой файловой системы и её размера.
  • -о - определение имени файла, куда программа размещает номера сбойных блоков. Затем этот файл может быть передан программе, проверяющей/создающей файловую систему, для исключения отмеченных блоков.
  • -i - установка имени файла, в котором находятся номера сбойных блоков. Использование параметра позволяет исключить повторное обращение к этим блокам при сканировании.
  • -p - установка количества проходов проверки, по умолчанию только одна;
  • -n - использовать безопасный тест чтения и записи, во время этого теста данные не стираются;
  • -s - отображение номеров проверяемых блоков (т.е. показывает прогресс сканирования раздела);
  • -v - отображение максимально подробной информации во время работы программы
  • -w - установка использования режима записи при проверке, на каждый блок записывается определённая последовательность байт, что стирает данные, которые хранились там раньше - Гарантированная потеря данных!
  • -e - позволяет указать количество битых блоков, после достижения которого дальше продолжать тест не надо;
  • -f - по умолчанию утилита пропускает тест с помощью чтения/записи если файловая система смонтирована чтобы её не повредить, эта опция позволяет всё таки выполнять эти тесты даже для смонтированных систем;
Важно: перед использованием badblocks рекомендуется размонтировать диск.

По умолчанию утилита выполняет сканирование диска без вывода какой-либо информации на экран. Чтобы получить данные о результате работы badblocks, используйте с командой опцию -v

Пример использования: ``` sudo badblocks -v -n /dev/sda2 -o ~/bad_sectors.txt ```

Используя полученный в результате файл (т.е. ~/bad\_sectors.txt) мы при помощи программы e2fsck можем пометить сбойные блоки и они в дальнейшем будут игнорироваться системой: ``` e2fsck -l ~/bad_sectors.txt /dev/sda2 ```

ВНИМАНИЕ! Данная операция должна проводиться на размонтированной файловой системе, либо в режиме read-only! Проверенное устройство и устройство на котором будут помечаться сбойные блоки должно быть одно и тоже!

## Оценка состояния и работоспособности дисков с помощью Gsmartcontrol

GSmartControl — это инструмент с графическим интерфейсом (GUI), предназначенный для мониторинга и управления жесткими дисками и твердотельными накопителями (SSD). Эта утилита проверяет состояние дисков и сканирует их для поиска поврежденных секторов. Инструмент работает при помощи технологии SMART (Self-Monitoring, Analysis and Reporting). Она используется для получения информации о состоянии дисков, их температуре и количестве часов работы.

/var/www/html/dokuwiki/data/attic/linux/administration/hdd_check.1771616473.txt.gz · Последнее изменение: — so_v_a