🐧 Как определить скорость передачи данных с жесткого диска в системах Linux |

🐧 Как определить скорость передачи данных с жесткого диска в системах Linux

Мануал

Это руководство научит вас определять скорость передачи данных на жестком диске Linux.

Другими словами, мы собираемся определить, насколько быстро ваш жесткий диск доставляет данные в Linux и Unix-подобных операционных системах.

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

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

 Теперь давайте воспользуемся этой утилитой hdparm для измерения скорости передачи жесткого диска.

Несмотря на то, что hdparm предлагает значительные преимущества для увеличения производительности диска, он также ЧРЕЗВЫЧАЙНО ОПАСНЫЙ. При неправильном использовании некоторых параметров это, скорее всего, приведет к массовой потере данных. В документации hdparm говорится, что НЕ СЛЕДУЕТ ИСПОЛЬЗОВАТЬ НЕКОТОРЫЕ КОМАНДЫ ПРИ ЛЮБЫХ ОБСТОЯТЕЛЬСТВАХ. Поэтому я исключил из этого руководства такие опасные команды. Что еще более важно, всегда рекомендуется делать резервную копию жесткого диска перед тестированием жесткого диска с помощью hdparm в системе Linux.

 

Как найдите скорость передачи данных с жесткого диска на Linux

Чтобы проверить скорость передачи данных жесткого диска в Linux, выполните команду «hdparm» с флагом -t, как показано ниже:

$ sudo hdparm -t /dev/sda

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

/dev/sda:
 Timing buffered disk reads: 246 MB in  3.00 seconds =  81.97 MB/sec
Как видите, скорость передачи данных составляет 81,97 МБ в секунду.
Убедитесь, что никакие другие программы не работают в фоновом режиме.
Выполните команду hdparm не менее двух или трех раз и по результатам вычислите среднюю скорость передачи данных вашего диска.
Как видно из вышеприведенного вывода, ядро Linux помещает данные, полученные с жесткого диска, в буфер при передаче данных.
Если вы хотите измерить более точную скорость передачи данных, используйте:
$ sudo hdparm -t --direct /dev/sda

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

/dev/sda:
 Timing O_DIRECT disk reads: 242 MB in  3.02 seconds =  80.21 MB/sec

Теперь программа hdparm не будет использовать буфер и будет читать данные прямо с жесткого диска

Как вы заметили в приведенном выше выводе, скорость передачи данных без буфера снизилась.

Hdparm всегда будет читать данные с самого начала устройств хранения.

Если вы хотите, чтобы hdparm читал данные из другой области устройства хранения, вы можете использовать параметр «offset», как показано ниже.

$ sudo hdparm -t --direct --offset 10 /dev/sda
Здесь 10 означает количество пропущенных гигабайт.
Согласно приведенной выше команде, первые 10 ГБ будут пропущены при чтении данных с диска.
На диске 20 ГБ указанная выше команда доставит данные из середины диска.
Пример вывода:
dev/sda:
 Timing O_DIRECT disk reads (offset 10 GB): 244 MB in  3.01 seconds =  81.15 MB/sec

Тестирование жесткого диска из командной строки

Чтобы протестировать жесткий диск и проверить читаемую скорость диска, используйте вместе флаги верхнего регистра “T” и нижнего регистра “t”, как показано ниже.

$ sudo hdparm -Tt /dev/sda

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

/dev/sda:
 Timing cached reads:   7232 MB in  1.99 seconds = 3629.42 MB/sec
 Timing buffered disk reads: 250 MB in  3.01 seconds =  82.99 MB/sec

Повторите эту команду не менее 2-3 раз, чтобы получить значимый результат.

Для получения более подробной информации проверьте страницы руководства.

$ man hdparm

Заключение

В этом руководстве мы обсудили, как определить скорость передачи данных с жесткого диска в Linux (т.е. насколько быстро жесткий диск передает данные).

Пожалуйста, не спамьте и никого не оскорбляйте. Это поле для комментариев, а не спамбокс. Рекламные ссылки не индексируются!
Добавить комментарий