Состояние Apple SSD Health> 4.2TB, как я могу сказать, что он мертв?

383
kenorb

Я установил SSD Health (512 ГБ) на свой MacBook Pro (конец 2013 года), который показывает следующую статистику:

Apple SSD Health app, Wear Leveling, Work time

Обычно состояние работоспособности должно отображать процент, но оно показывает> 4252 ГБ записанных данных.

Недавно я столкнулся с некоторой потерей данных (например, скопированные файлы заполнены значениями NULL, несоответствиями SHA256 при установке пакетов и т. Д.), А First Aid обнаружил, что HD поврежден (код выхода 8). Предполагает ли это, что мой SSD не работает, и его необходимо заменить (если да, на основании какой именно информации)? С другой стороны, разве SSD-накопители не должны работать не менее 10 лет?


Вот несколько воспроизводимых примеров потери данных:

$ wget -q https://homebrew.bintray.com/bottles/glibmm-2.54.1.sierra.bottle.tar.gz $ ls -la glibmm-2.54.1.sierra.bottle.tar.gz  -rw-r--r-- 1 kenorb staff 10033965 Sep 18 22:54 glibmm-2.54.1.sierra.bottle.tar.gz $ gzip -t glibmm-2.54.1.sierra.bottle.tar.gz  gzip: glibmm-2.54.1.sierra.bottle.tar.gz: unexpected end of file gzip: glibmm-2.54.1.sierra.bottle.tar.gz: uncompress failed $ cp -v /Volumes/SSD-256G/file.txt . # Copy file from the external SSD. '/Volumes/SSD-256G/file.txt' -> './file.txt' $ diff /Volumes/SSD-256G/file.txt file.txt Binary files /Volumes/SSD-256G/file.txt and file.txt differ $ hexdump file.txt 0000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 * 1b86060 00 00 00 00 00 00  1b86066 
1
Там нет ничего в данных, указывающих, что диск испытывает какие-либо проблемы. Daniel B 6 лет назад 1
По моему опыту, здоровье SSD ненадежно и может показывать вводящую в заблуждение информацию. Тем не менее, если значение атрибута 173 является правильным, это вызывает беспокойство, оно обычно указывает на износ и начинается с 200, а затем уменьшается по мере записи данных. Значение ниже 100 считается проблемой, но это займет намного больше, чем 4 ТБ, чтобы добраться туда. Попробуйте другой инструмент, чтобы увидеть, являются ли показания более последовательными. James P 6 лет назад 1

2 ответа на вопрос

2
Greendrake

« Скопированные файлы заполнены NULL, несоответствия SHA256 » действительно являются индикаторами возможного сбоя SSD. Я бы не ожидал, что SSD проживет 10 лет, если вы не оставите их на полке.

Если один и тот же файл читается по-разному (например, md5 path/to/fileдает разные хэши) в любых двух попытках, достаточно указать, что SSD смертельно неисправен (конечно, при условии, что файл не был изменен). Вы можете проверить это на любом большом файле, чем больше, тем лучше.

Если этот тест пройден, вы можете продолжить делать то же самое для всего диска. Вам нужно будет загрузиться с другого загрузочного носителя, с которого вы можете рассчитать хэш всего SSD. Например, загрузитесь на Linux live USB / CD и запустите md5sum /dev/sd<your ssd letter>дважды - результаты должны совпадать для исправного диска.

Наконец, если вышеуказанные тесты пройдены, пока вы все еще загружаетесь в Linux, запустите short, а затем длинный тест, предоставленный smartctl:

smartctl -t short /dev/sd<your ssd letter> # results can be seen after a few minutes smartctl -t long /dev/sd<your ssd letter> # a few hours to wait 
0
kenorb

У fsck_hfsинструмента Apple есть -Sвозможность сканировать диск на наличие плохих блоков.

Например:

diskutil list # Note the disk path. fsck_hfs -S /dev/disk22 

Это будет сканировать весь диск на наличие https://en.wikipedia.org/wiki/Bad_sector и сообщит, поврежден ли он, или должно быть достаточно восстановления программного обеспечения.


Чтобы избежать монтирования диска, лучше всего загрузить систему из одиночного режима или из установщика macOS (USB или DVD) и запустить приложение Terminal .

Вот примеры команд для восстановления зашифрованного тома (как пользователь root ):

diskutil coreStorage list # Note the UUID. diskutil coreStorage unlockVolume 11111111-2222-3333-4444-555555555555 diskutil umount /dev/disk22 # Unmount after it was mounted with write access. fsck_hfs -y /dev/disk22 # Check and repair any errors. fsck_hfs -S /dev/disk22 # Scan entire disk for the bad blocks. 

Если ошибки были исправлены успешно, и нет плохих блоков, это может дать некоторую уверенность в том, что SSD Health все еще исправен. Тем не менее, если на диске все еще есть ошибки и отсутствуют поврежденные блоки, можно использовать стороннее программное обеспечение для восстановления (например, DiskWarrior, оно может восстанавливать поврежденные каталоги / файлы и диагностировать жесткий диск с помощью диагностики SMART).