- Записки IT специалиста
- Как узнать оставшийся ресурс SSD в Linux
- Узнаём данные S.M.A.R.T. в Linux. Контроль состояния HDD или SSD
- 🐧 Как определить, является ли диск SSD или HDD на Linux
- Определяем типа диска, HDD или SSD
- Метод 1 – Проверьте, вращается ли диск
- Способ 2 – Использование команды lsblk
- Метод 3 – Использование инструментов мониторинга SMART
- Способ 4 – Использование dmesg + Google
- Способ 5 – Использование деталей SCSI + Google
- Метод 6 – Использование Sg3-utils
- Метод 7 – Тест производительности доступа к диску
- Что делать, если есть несколько дисков?
Записки IT специалиста
Технический блог специалистов ООО»Интерфейс»
- Главная
- Как узнать оставшийся ресурс SSD в Linux
Как узнать оставшийся ресурс SSD в Linux
В одной из наших прошлых статей мы поднимали вопрос надежности SSD, где делали упор на такие параметры, как гарантированный объем записи — TBW и допустимое количество перезаписей в день — DWPD. Для оценки оставшегося ресурса вашего накопителя нужно знать несколько параметров: суммарный записанный объем данных и суммарное время работы, что позволит вычислить необходимые показатели и оценить режим работы диска. В Windows это сделать достаточно просто — к вашим услугам масса утилит любой сложности, но что делать пользователям Linux? Сегодня мы расскажем об этом.
Следует понимать, что любая утилита, даже от производителя диска, не обладает никакими «тайными знаниями» и всего лишь выводит в удобочитаемой форме некоторые из параметров S.M.A.R.T. накопителя. Но не все так просто, в отличие от набора атрибутов S.M.A.R.T. для жестких дисков, твердотельные накопители не имеют единого стандарта и многое зависит от конкретного производителя. Однако, кроме самых запущенных случаев с китайскими полуподвальными «производителями», вся нужная информация так или иначе в S.M.A.R.T. содержится, поэтому будем учиться ее получать.
Прежде всего следует установить утилиту для работы с атрибутами S.M.A.R.T., если вы, конечно, не сделали этого раньше:
Теперь выясним какие дисковые устройства установлены в вашей системе, для этого выполните:
В выводе нас интересуют только устройства с типом disk, в нашем случае это sda:
Чтобы получить информацию из S.M.A.R.T. диска воспользуемся командой:
где /dev/sda — имя нашего диска, которое мы выяснили на предыдущем шаге.
В полученном выводе прежде всего изучим общие данные о диске, в частности обратим внимание на размер логического сектора:
Потом спустимся немного вниз и изучим таблицу S.M.A.R.T.-атрибутов:
Колонки Value, Worst и Threshold содержат значения каждого из показателей в «попугаях»: Value — текущее значение, Worst — наихудшее за все время. RAW_value — колонка с абсолютными значениями показателя. Атрибуты могут быть двух типов: Old_age — это параметры, которые просто растут (изменяются) со временем, критический порог отсутствует, например, это время работы диска в часах; Pre-fail — это параметры имеющие критическое значение, которое указано в колонке Threshold и приближение к ним указывает на предаварийное состояние диска. На скриншоте выше к таким параметрам относится Available_Reservd_Space — доступная резервная область, снижение значения которой указывает на износ диска.
Но вернемся к показателям ресурса. Western Digital заботится о своих пользователях и выводит подробную информацию, в частности атрибут 241 Total_Host_GB_Written содержит количество записанной на диск информации в гигабайтах, а атрибут 9 Power_On_Hours хранит количество отработанных часов.
Также интересно изучить показатели 233 NAND_GB_Written_TLC и 234 NAND_GB_Written_SLC, где показано количество записи в TLC и SLC ячейки соответственно. Как видим, работа SLC-кеша у современных дисков построена эффективно, количество данных, записанных непосредственно в TLC крайне мало. Второй момент — это мультипликация записи, как мы уже знаем, нельзя просто так записать данные в занятую ячейку, ее предварительно нужно очистить, но очистить отдельную ячейку также невозможно, это можно сделать только для блока, поэтому на одну операцию записи внутри SSD может потребоваться несколько, что мы и видим в данном случае.
Но для оценки износа мы всегда должны принимать объем данных, записанный хостом (241 Total_Host_GB_Written), так как именно на это значение ориентируется производитель, указывая TBW, внутренние параметры представляют в основном академический интерес.
К сожалению, не все производители включают в S.M.A.R.T. подробные и удобочитаемые данные, во многих случаях вы найдете тот же самый атрибут, но несколько в ином виде 241 Total_LBAs_Written. Это наследство жестких дисков, RAW-значение этого атрибута показывает количество записанных LBA-секторов (ниже показан S.M.A.R.T. от HDD):
Но даже этой информации может не быть, к примеру Toshiba A100 отличается предельной лаконичностью, сообщить еще что-либо кроме времени работы, количества включений и температуры посчитали излишним:
Но не будем впадать в уныние, получим расширенный набор информации из S.M.A.R.T.:
В этот раз информации будет гораздо больше, в ней необходимо найти раздел Device Statistics в котором содержится искомый параметр Logical Sector Written, значение которого аналогично 241 Total_LBAs_Written и показывает количество записанных LBA-секторов:
Для дальнейших расчетов нам нужно знать размер логического сектора, его можно получить из общей информации о диске в самом начале вывода:
А дальше нам поможет несложная математика уровня «дружим с калькулятором», для получения суммарного объема записанных данных умножим количество секторов на размер сектора:
Для размера сектора в 512 байт, как в нашем случае, результат также будет в байтах, для размера сектора в 4 КБ — в килобайтах. Для перевода в единицы более высокого порядка результат нужное количество раз нужно разделить на 1024:
Для показанного выше диска путем таких несложных вычислений мы получим значение:
Теперь можно оценить ресурс и условия эксплуатации диска, для данной модели TBW = 30 TB, а DWPD = 0.23. Как видим, гарантированный ресурс записи диск выработал, общее время работы составило 979 дней или 2,68 года, т.е. немного менее гарантийного срока. Ежедневный объем записи на диск составил 34,5 ГБ, а реальный DWPD равен 0,29. В целом условия эксплуатации диска можно назвать удовлетворительными, но на замену рекомендуется выбрать модель с более высоким TBW.
Как видим, ничего сложного в получении информации об оставшемся ресурсе SSD в Linux нет, даже в тех случаях, когда такую информацию производитель явно в S.M.A.R.T. не выводит, максимум что вам понадобится — это калькулятор.
Помогла статья? Поддержи автора и новые статьи будут выходить чаще:
Или подпишись на наш Телеграм-канал:
Источник
Узнаём данные S.M.A.R.T. в Linux. Контроль состояния HDD или SSD
Дата добавления: 07 июля 2012
S.M.A.R.T. (Self-Monitoring, Analisys and Reporting Technology) — это технология, предоставляющая пользователю различные данные о текущем состоянии жесткого диска или твердотельного накопителя. Анализируя данные S.M.A.R.T., пользователь может оценить состояние своих накопителей и решить, требуют ли они замены или ещё смогут работать долго и без сбоев.
Консольный способ: smartmontools
Узнать данные S.M.A.R.T. в чистом виде нам поможет утилита под названием smartmontools .
Приведем пример установки для дистрибутивов на основе Debian:
Количество атрибутов может отличаться в зависимости от модели диска.
В этой таблице нам нужно смотреть на значение поля RAW_VALUE для нужного атрибута. Именно оно показывает текущее значение атрибута.
Наиболее важные показатели:
Raw_Read_Error_Rate — количество ошибок чтения. Ненулевое значение должно сильно насторожить, а большие значение и вовсе говорят о скором выходе диска из строя. Известно, что на дисках Seagate, Samsung (семейства F1 и более новые) и Fujitsu 2,5? большое значение в этом поле является нормальным. Для остальных же дисков в идеале значение должно быть равно нулю;
Spin_Up_Time — время раскрутки диска. Измеряется в миллисекундах т.е. в моём случае это 1.3 секунды. Чем меньше — тем лучше. Большие значения говорят о низкой отзывчивости;
Start_Stop_Count — количество циклом запуска/остановки шпинделя;
Reallocated_Sector_Ct — количество перераспределённых секторов. Большое значение говорит о большом количестве ошибок диска;
Seek_Error_Rate — количество ошибок позиционирования. Большое значение говорит о плохом состоянии диска;
Power_On_Hours — количество наработанных часов во включённом состоянии. По нему можно узнать сколько проработал диск во включённом состоянии. Довольно полезно, например, если покупать ноутбук с витрины и хочется узнать долго ли он там стоял;
Power_Cycle_Count — количество включений/выключений диска;
Spin_Retry_Count — количество попыток повторной раскрутки. Большое значение говорит о плохом состоянии диска;
Temperature_Celsius — температура диска в градусах Цельсия. При слишком высокой температуре диски могут быстрее выйти из строя;
Reallocated_Event_Count — количество операций перераспределения секторов;
Offline_Uncorrectable — количество неисправных секторов. Большое значение говорит о повреждённой поверхности.
Более наглядный графический способ: gnome-disk-utility
В графическом варианте и с описанием атрибутов, данные SMART представляет программа gnome-disk-utility . В русской локализации в меню она называется как «дисковая утилита». В английской локализации известна как «Disks».
Пример установки для дистрибутивов на основе Debian:
Запускаем программу.
В поле «состояние диска» уже можно увидеть оценку состояния диска на основе данных S.M.A.R.T. Чтобы увидеть значение конкретных атрибутов нажимаем на кнопку «Данные SMART»:
Пример данных о SSD (Твёрдотельном накопителе):
S.M.A.R.T.:
Здесь всё понятно и наглядно. Также присутствует описание атрибутов и оценка их показаний. Проблемные значения будут выделены красным цветом.
Источник
🐧 Как определить, является ли диск SSD или HDD на Linux
Определяем типа диска, HDD или SSD
Метод 1 – Проверьте, вращается ли диск
Как вы, возможно, уже знаете, традиционный жесткий диск (HDD) хранит данные на круговом диске, известном как диск. Когда диск вращается, движущаяся головка чтения / записи получит доступ к данным.
Чем быстрее диск вращается (вращается), тем быстрее работает жесткий диск.
С другой стороны, твердотельный накопитель (SDD) – это современная технология хранения данных и более быстрый тип накопителя, который хранит данные на мгновенно доступных микросхемах флэш-памяти.
В отличие от традиционных жестких дисков, твердотельные накопители не имеют движущихся частей, а твердотельные накопители не вращаются.
Поэтому, если вы хотите узнать, является ли установленный диск твердотельным или обычным жестким диском, просто проверьте, вращается ли диск, с помощью следующей команды:
Таким образом, выходной сигнал должен быть нулевым, если в вашей системе есть SSD.
Каждый диск имеет каталог в /sys/class/block/location. Таким образом, вы можете проверить и другие данные дисков.
Способ 2 – Использование команды lsblk
Команда lsblk читает файловую систему sysfs и базу данных udev для сбора информации обо всех доступных или указанных блочных устройствах.
Команда lsblk является частью пакета util-linux и поставляется с предустановленным большинством дистрибутивов Linux.
На случай, если команда lsblk недоступна, просто установите пакет util-linux с помощью диспетчера пакетов вашего дистрибутива.
Например, в системах на основе Arch вы можете установить его с помощью команды:
На Debian подобных:
На rpm системамх:
Вывод:
Здесь «rota» означает устройство вращения.
Если вы получите значение вращения в приведенном выше выводе как 1, диск является жестким диском.
Если значение равно 0 (ноль), то диск SSD.
Метод 3 – Использование инструментов мониторинга SMART
Другой способ определить, является ли диск SSD или HDD, использует команду smartctl.
Smartctl является частью пакета инструментов мониторинга S.M.A.R.T, который используется для контроля и мониторинга S.M.A.R.T.
Включены жесткие диски ATA и SCSI.
Чтобы установить средства мониторинга SMART в Arch Linux и его вариантах, выполните:
На Debian, Ubuntu:
После установки пакета smartmontools выполните следующую команду, чтобы определить, является ли диск SSD или HDD:
Если диск SSD, вы получите вывод, как показано ниже.
Если диск HDD, вы получите такой вывод:
Способ 4 – Использование dmesg + Google
Это не прямой подход к поиску типа диска.
В этом методе мы используем команду dmesg, чтобы найти модель диска, а затем Google детализирует эту информацию, чтобы определить, является ли диск SSD или HDD.
Вы увидите название модели диска среди всех других деталей.
Просто прогуглите эту модель, чтобы найти детали диска.
Способ 5 – Использование деталей SCSI + Google
Это то же самое, что и вышеописанный метод.
Мы извлекаем модель диска из каталога /proc с помощью команды:
Просто прогуглите эту модель, чтобы найти детали диска.
Метод 6 – Использование Sg3-utils
Sg3-utils – это набор утилит для устройств, использующих набор команд SCSI.
Каждая утилита в этом пакете реализует одну команду SCSI.
Sg3-utils доступен в репозиториях по умолчанию Debian и Ubuntu.
Чтобы установить его в своей системе, просто запустите:
Теперь проверьте Vital Product Data (VPD) для характеристик блочного устройства, выполнив следующую команду:
Метод 7 – Тест производительности доступа к диску
Найдите, является ли диск SSD или HDD, читая случайные блоки с диска, используя команду:
Эта команда будет читать 1000 случайных блоков 4k из первых 16 ГБ диска.
Если ваш диск SSD, операция должна завершиться примерно через секунду.
Если диск является жестким диском, то для его завершения потребуется несколько секунд.
Это будет полезно для проверки дисков в вашем VPS.
Что делать, если есть несколько дисков?
Что если у меня два диска, один из которых SSD, а другой HDD?
Оба диска одинакового размера и от одного производителя.
Я не знаю, на каком диске установлен мой Linux.
В этом случае просто найдите, на каком диске находится корневая файловая система, с помощью следующей команды:
Или используйте команду lshw, чтобы узнать больше о дисках:
Источник