Производительность диска представляет собой скорость чтения и записи данных с жесткого диска (HDD) или твердотельного накопителя (SSD). Эти показатели очень важны для понимания возможностей и оптимизации работы компьютера или сервера. В частности, высокая скорость выполнения дисковых операций позволяет повысить отзывчивость ОС и поддерживать ее многозадачность.
В этой статье мы расскажем, как узнать фактическую и максимальную скорость работы жесткого диска в Linux.
Содержание:
- Измерение фактической скорости чтения данных с жесткого диска
- Измерение реальной скорости записи данных на жесткий диск
- Просмотр максимальной пропускной способности интерфейса SATA
- Выводы
Измерение фактической скорости чтения данных с жесткого диска
Чтобы узнать реальную скорость чтения данных с жесткого диска, рекомендуется использовать утилиту hdparm. Она предназначена для настройки и просмотра параметров устройств хранения данных.
Допустим, Вам нужно измерить фактическую скорость чтения данных с жесткого диска /dev/sda. Для этого выполните в терминале:
Где:
-t— опция, которая указывает измерить скорость чтения данных из кэша жесткого диска;-T— опция, которая указывает выполнить временной тест для кэшированных чтений (то есть, измерить скорость, с которой информация может быть прочитана из буферного кэша Linux без обращения к устройству хранения данных).
Читайте также: 5 способов узнать максимальную скорость сетевой карты в Linux.
Поскольку фактическая скорость чтения данных с диска непостоянна, рекомендуется выполнить предыдущую команду несколько раз. Для решения этой задачи можно применить цикл for:
Измерение реальной скорости записи данных на жесткий диск
В операционной системе Linux есть команда dd, которая позволяет создавать файлы определенного размера. Ее особенность заключается в том, что она также показывает скорость, с которой генерируются файлы.
Для примера создайте файл, который состоит из 256 килобайт блоков по 8 КБ каждый. В результате чего общий объем данных составит 2 ГБ (256 * 8 КБ = 2 ГБ):
Где:
if=/dev/zero— опция, которая указывает в качестве входного файла/dev/zero;of=/tmp/output.img— опция, которая указывает выходной файл/tmp/output.img, куда будут записаны данные;bs=8k— параметр, устанавливающий размер блока в 8 килобайт;count=256k— параметр, устанавливающий количество записываемых блоков;
Команда записывает файл размером 2 ГБ на жесткий диск и фиксирует время, необходимое для выполнения этой операции. На основе полученных данных можно вычислить скорость записи информации на диск. В нашем случае она составляет 53,8 мегабайта в секунду.
Читайте также: Мониторинг использования дискового ввода-вывода с помощью iotop в Linux.
Также в предыдущую команду можно добавить опцию oflag=dsync. Она гарантирует, что данные действительно записываются на жесткий диск, а не кэшируются операционной системой. Таким образом, параметр oflag=dsync позволяет получить более точную оценку скорости записи на диск. Например:
Просмотр максимальной пропускной способности интерфейса SATA
Скорость соединения — это максимальная скорость передачи информации, которую может поддерживать канал связи между двумя устройствами, например контроллером SATA компьютера и устройством хранения данных.
Чтобы узнать скорость соединения интерфейса SATA, воспользуйтесь командами dmesg и grep:
Где:
dmesg— утилита для просмотра сообщений кольцевого буфера ядра Linux;|— оператор конвейера, используемый для передачи вывода одной команды в качестве ввода другой;grep -i sata— команда для фильтрации выводаdmesg, позволяющая включить только строки, содержащиеsataбез учета регистра;grep 'link up'— команда для дополнительной фильтрации результатов, которая включает только строки, содержащиеlink up.
Читайте также: Как ограничить вывод dmesg в Linux.
Строка SATA link up 6.0 Gbps указывает на то, что скорость соединения между контроллером SATA и устройством хранения данных достигает 6 гигабит в секунду. Однако, как Вы убедились ранее, реальная скорость передачи данных может быть ниже из-за ограничений самого жесткого диска или особенностей работы операционной системы.
Выводы
Инструменты hdparm, dd и dmesg позволяют измерять производительность жесткого диска в операционной системе Linux. С их помощью можно определить как максимальные, так и реальные скорости чтения и записи на устройствах хранения данных.
Спасибо за время, уделенное прочтению статьи!
Если возникли вопросы — задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!
Чтобы знать больше и выделяться знаниями среди толпы 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.




























