Как проверить скорость работы диска в Linux

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

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

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

Шаги по определению скорости работы диска в Linux с помощь hdparm

Откройте терминал.

Установите пакет hdparm с помощью менеджера пакетов вашего дистрибутива.

Посмотрите список доступных жестких дисков в системе.

Пример вывода:

Выполните эталонный тест на выбранном диске с помощью hdparm.

sudo hdparm -tT /dev/sdaЗапустите hdparm еще раз с опцией direct, чтобы обойти дисковый кэш и измерить производительность необработанного диска.

sudo hdparm -tT --direct /dev/sdaДополнительные возможности для hdparm

Использование:

Опции:

  • -a Получить/установить флаг чтения fs
  • -A Получить/установить флаг опережающего просмотра диска (0/1)
  • -b Получить/установить состояние шины (0 == off, 1 == on, 2 == tristate)
  • -B Установка параметров расширенного управления питанием (1-255)
  • -c Получение/установка настроек 32-битного ввода-вывода IDE
  • -C Проверка состояния режима питания накопителя
  • -d Получить/установить флаг using_dma
  • -D Включить/выключить управление дефектами диска
  • -E Установка скорости cd/dvd-привода
  • -f Промыть буферный кэш для устройства при выходе
  • -F Промыть кэш записи диска
  • -g Отображение геометрии диска
  • -h Отображение краткой информации об использовании
  • -H Считывание температуры с диска (только для Hitachi)
  • -i Отображение идентификации диска
  • -I Подробная/текущая информация непосредственно с диска
  • -J Получение/установка таймаута Western DIgital "Idle3" для диска WDC "Green" (ОПАСНО)
  • -k Получить/установить флаг keep_settings_over_reset (0/1)
  • -K Установить флаг keep_features_over_reset привода (0/1)
  • -L Установка блокировки двери диска (0/1) (только для съемных жестких дисков)
  • -m Получить/установить счетчик нескольких секторов
  • -M Получить/установить управление акустикой (0-254, 128: тихо, 254: быстро)
  • -n Получение/установка флага игнорирования ошибок записи (0/1)
  • -N Получить/установить максимальное видимое количество секторов (HPA) (ОЧЕНЬ ОПАСНО)
  • -p Установить режим PIO на чипсете интерфейса IDE (0,1,2,3,4,...)
  • -P Установить счетчик предварительной выборки диска
  • -q Изменить следующую настройку в тихом режиме
  • -Q Получить/установить глубину очереди DMA (если поддерживается)
  • -r Получить/установить флаг устройства, доступного только для чтения (опасно устанавливать)
  • -R Получить/установить флаг записи-чтения-проверки устройства
  • -s Установить флаг включения питания в режиме ожидания (0/1) (ОПАСНО)
  • -S Установка таймаута перехода в режим ожидания (spindown)
  • -t Выполните тайминги чтения устройства
  • -T Выполнить тайминги чтения кэша
  • -u Получить/установить флаг unmaskirq (0/1)
  • -U Устаревший
  • -v Использовать значения по умолчанию; то же, что и -acdgkmur для IDE-дисков
  • -V Отображение версии программы и немедленный выход
  • -w Выполнить сброс устройства (ОПАСНО)
  • -W Получить/установить флаг кэширования записи на диск (0/1)
  • -x Устаревший
  • -X Установить режим IDE xfer (ОПАСНО)
  • -y Перевести диск в режим ожидания
  • -Y Перевести диск в спящий режим
  • -z Перечитать таблицу разделов
  • -Z Отключить режим автоматического энергосбережения Seagate
  • --dco-freeze Замораживание/блокировка текущей конфигурации устройства до следующего цикла питания
  • --dco-identify Чтение/выгрузка данных идентификации конфигурации устройства
  • --dco-restore Возврат конфигурации устройства к заводским настройкам по умолчанию
  • --dco-setmax Использование DCO для установки максимального количества адресуемых секторов
  • --direct Использование O_DIRECT для обхода страничного кэша для определения таймингов
  • --drq-hsm-error Обрушение системы с ошибкой "stuck DRQ" (ОЧЕНЬ ОПАСНО)
  • --fallocate Создать файл без записи данных на диск
  • --fibmap Показать экстенты устройства (и фрагментацию) для файла
  • --fwdownload Загрузить файл прошивки на диск (ЧРЕЗВЫЧАЙНО ОПАСНО)
  • --fwdownload-mode3 Загружать прошивку, используя сегменты минимального размера (Чрезвычайно опасно)
  • --fwdownload-mode3-max Загрузка прошивки с использованием сегментов максимального размера (ЧРЕЗВЫЧАЙНО ОПАСНО)
  • --fwdownload-mode7 Загрузка прошивки с использованием одного сегмента (Чрезвычайно опасно)
  • --fwdownload-modee Загрузка прошивки с использованием режима E (минимальный размер сегментов) (ЧРЕЗВЫЧАЙНО ОПАСНО)
  • --fwdownload-modee-max Загрузка прошивки в режиме E (сегменты максимального размера) (ЧРЕЗВЫЧАЙНО ОПАСНО)
  • --idle-immediate Немедленно отключить диск
  • --idle-unload Немедленный простой и выгрузка головок
  • --Iraw filename Запись необработанных двоичных идентификационных данных в указанный файл
  • --Istdin Чтение идентификационных данных из stdin в формате ASCII hex
  • --Istdout Запись идентификационных данных в stdout в формате ASCII hex
  • --make-bad-sector Преднамеренное повреждение сектора непосредственно на носителе (ОЧЕНЬ ОПАСНО)
  • --offset используется вместе с -t, чтобы начать тайминги с заданного смещения (в гигабайтах) от начала диска
  • --prefer-ata12 По возможности используйте 12-байтовые (вместо 16-байтовых) команды SAT.
  • --read-sector Чтение и сброс (в шестнадцатеричном формате) сектора непосредственно с носителя.
  • --repair-sector Псевдоним для опции --write-sector (ОЧЕНЬ ОПАСНО)
  • --sanitize-antifreeze-lock Блокировать команду sanitize-freeze-lock до следующего цикла питания
  • --sanitize-block-erase Запуск операции стирания блока
  • --sanitize-crypto-scramble Изменение внутренних ключей шифрования для используемых данных
  • --sanitize-freeze-lock Блокировка функций дезинфекции диска до следующего цикла питания
  • --sanitize-overwrite PATTERN Перезапись внутреннего носителя с постоянным PATTERN
  • --sanitize-status Отображение информации о состоянии санитарной обработки
  • --security-help Отображение справки по командам безопасности ATA
  • --set-sector-size Изменить размер логического сектора диска
  • --trim-sector-ranges Указать микропрограмме SSD на отбрасывание ненужных секторов данных: lba:count ...
  • --trim-sector-ranges-stdin То же, что и выше, но считывает пары lba:count из stdin
  • --verbose Отображение дополнительной диагностики некоторых команд
  • --write-sector Восстановление/перезапись (возможно, плохого) сектора непосредственно на носителе (ОЧЕНЬ ОПАСНО)

Шаги по определению скорости работы диска в Linux с помощь dd

С помощью dd создайте файл для оценки скорости записи на диск.

Удалите временный файл, созданный dd.

Больше возможностей для dd

  • bs=BYTES чтение и запись до BYTES байт за раз (по умолчанию: 512); переопределяет ibs и obs
  • cbs=BYTES преобразование байтов BYTES за раз
  • conv=CONVS преобразовать файл в соответствии со списком символов, разделенных запятыми
  • count=N копировать только N входных блоков
  • ibs=BYTES читать до BYTES байт за раз (по умолчанию: 512)
  • if=FILE чтение из FILE, а не из stdin
  • iflag=FLAGS чтение в соответствии со списком символов, разделенных запятыми
  • obs=BYTES записывать по BYTES байт за раз (по умолчанию: 512)
  • of=FILE запись в ФАЙЛ вместо stdout
  • oflag=FLAGS запись в соответствии со списком символов, разделенных запятыми
  • seek=N пропустить N блоков размера obs в начале вывода
  • skip=N пропускать N блоков размера ibs в начале ввода
  • status=LEVEL УРОВЕНЬ информации для печати в stderr;
    • 'none' подавляет все, кроме сообщений об ошибках,
    • 'noxfer' подавляет финальную статистику передачи,
    • 'progress' показывает периодическую статистику передачи.
Понравилась статья? Поделиться с друзьями:
Добавить комментарий