Я провел одну и ту же проверку состояния SSD на Linux и Windows — только одна из них дала полную картину
Я провел одну и ту же проверку состояния SSD на Linux и Windows — только одна из них дала полную картину.

Когда я пишу, моему NVMe SSD около четырех лет — достаточно, чтобы задуматься о замене. Тем не менее, с такими высокими ценами на хранилище сейчас, часть меня хочет подождать, пока рынок не стабилизируется. Разумный шаг в этой ситуации — проверить, действительно ли ваш диск нуждается в замене, но я не ожидал, что мне придется переключаться между операционными системами, чтобы найти ответы, которые я искал.
Windows сообщил, что мой SSD в порядке
Но это казалось — как сейчас говорят молодежь — подозрительным
Windows предлагает очень базовые инструменты для мониторинга состояния SSD. Обычно вы открываете терминал и выполняете следующую команду:
Get-PhysicalDisk | Select FriendlyName, MediaType, HealthStatus, OperationalStatus, Size
Однако это лишь сообщает, здоров ли ваш накопитель или нет. Это полезно, но мне показалось, что этого недостаточно. Я хотел знать насколько он здоров. Это был меньше качественный вопрос и больше количественный.
К сожалению, ни один из встроенных инструментов Windows не дал мне этого ответа, поэтому я установил CrystalDiskInfo — который, честно говоря, я должен был запустить много лет назад. Разница в плотности информации была значительной. Помимо базовой метки "Здоровый", он показал полные данные S.M.A.R.T. диска: общее количество записанных данных, общее количество прочитанных данных, часы работы, доступная запасная емкость и — что наиболее важно для моих целей — показатель "Использованный процент", который отражает потребление выносливости на основе рейтинга TBW (терабайт записанных) от производителя.
Почему данные вызывали беспокойство
Мой NVMe диск Crucial P3 на 500 ГБ — тот, на котором установлена моя Windows — в настоящее время показывает рейтинг состояния 77%. Учитывая, что я использую его примерно четыре года, грубые подсчеты предполагают, что у меня еще есть год или полтора, прежде чем он упадет ниже 70% — момента, когда стоит задуматься о замене.
Но это предполагает, что износ SSD следует линейному паттерну. А если это не так? А если деградация ускоряется?
Диск не всегда выходит из строя предсказуемо. Он может показывать 100% здоровья в один день и выйти из строя на следующий. Вот почему сырые процентные показатели здоровья рассказывают лишь часть истории. Вам также нужно обратить внимание на ошибки, накапливающиеся внизу.
Хотя мой диск не показывал критических предупреждений, CrystalDiskInfo выявил одно число, которое меня беспокоило: "Количество записей журнала ошибок" составляло 6,605. Однако он не сообщил мне, что это за ошибки. На этом этапе я практически достиг предела того, что инструменты на базе Windows могли мне сказать.

Изображение выше показывает количество 6,610. Это произошло потому, что я сделал снимок после перезагрузки Windows, что, по-видимому, увеличило количество ошибок.
Linux показал мне, что это за ошибки SSD
Где след CrystalDiskInfo закончился

У меня настроена система двойной загрузки Linux и Windows, поэтому после того, как я наткнулся на тупик в Windows, я загрузился в Linux, чтобы посмотреть, смогу ли я найти ответы там.
В Linux есть утилита командной строки под названием nvme-cli, специально разработанная для проверки NVMe дисков. Она напрямую взаимодействует с протоколом NVMe, что означает, что она может извлекать диагностические данные, к которым обычные инструменты S.M.A.R.T. либо не могут получить доступ, либо не показывают явно.
Я начал с:
sudo nvme smart-log /dev/nvme0
Это извлекло полный журнал S.M.A.R.T. прямо из контроллера диска и подтвердило то, что показал CrystalDiskInfo — но с большим количеством деталей. Доступная запасная емкость была на уровне 100%, ошибок носителя было 0, использованный процент составил 23%, а количество записей в журнале ошибок было 6,605 — то же число, что и в Windows.
Но на этот раз я мог фактически проверить, что это за ошибки с помощью:
sudo nvme error-log /dev/nvme0
Журнал вернул 16 записей. Запись 0 — та, которая учитывает все 6,605 отмеченных ошибок — имела поле состояния 0x2002, которое расшифровывается как Недопустимое поле в команде: зарезервированное значение кода или неподдерживаемое значение в определенном поле.
Записи с 1 по 15, тем временем, все показывали количество ошибок 0 и "Успешное завершение".
Переведя на простой язык, мой SSD в порядке. Не было ошибок носителя, проблем с целостностью данных и признаков физического отказа NAND. "Ошибки" не были признаками износа — это были просто недопустимые команды, зафиксированные в какой-то момент во время нормальной работы.
Вы также можете проверить свои NVMe SSD на наличие ошибок
Самотестирование, которое Windows мне никогда не предлагал
Утилита nvme-cli может делать больше, чем просто считывать данные о состоянии — она также может выполнять встроенные диагностические тесты на самом диске. Поэтому я провел короткое самотестирование, используя:
sudo nvme device-self-test /dev/nvme0 -s 1
Затем я проверил результаты с помощью:
sudo nvme self-test-log /dev/nvme0
Тест оказался чистым: Результат операции: 0, что означает, что диск прошел тест без обнаружения каких-либо внутренних проблем.
Связано
Вы тестируете производительность своего ПК неправильно — вот правильный способ
Синтетические бенчмарки хороши, но реальные бенчмарки гораздо лучше.
Вам не обязательно устанавливать Linux, чтобы использовать этот инструмент
Если вы на Windows и не используете систему двойной загрузки, как я, вы все равно можете использовать nvme-cli без установки Linux.
Самый простой способ — создать загрузочный USB с Ubuntu — или любой другой дистрибутив Linux, который вам нравится — подключить его к вашему ПК и загрузиться в живую среду. Это даст вам полную сессию Linux, работающую непосредственно с USB, не затрагивая вашу существующую установку Windows. Оттуда вы можете установить и использовать nvme-cli для проверки состояния вашего SSD, выполнения самотестов и проверки журналов ошибок. Как только вы закончите, просто перезагрузитесь обратно в Windows, как обычно.
Читайте также



