Моему старому 128 ГБ SSD-накопителю уже около полутора лет, и с тех пор я перешел на другой диск.
Я хотел бы очистить мой старый SSD, чтобы ...
восстановить его производительность до почти новых уровней
реабилитировать его и вообще дать ему проверку здоровья
Как мне это сделать?
ssd
maintenance
Джефф Этвуд
источник
источник
Ответы:
В Linux просто запустите
передавая диапазоны блоков, которые вы хотите, TRIM вместо
start
иcount
и устройства SSD вместо/dev/sda
. Преимущество в том, что он быстр и не записывает нули на диск. Скорее, он просто отправляет команды TRIM контроллеру SSD, давая ему понять, что вам не нужны данные в этих блоках, и он может свободно предполагать, что они не используются в его алгоритме сбора мусора.Вам, вероятно, нужно запустить эту команду от имени пользователя root. Поскольку эта команда чрезвычайно опасна, поскольку она может немедленно вызвать серьезную потерю данных, вам также необходимо передать
--please-destroy-my-drive
аргументhdparm
(я не добавил это в командную строку, чтобы предотвратить случайную потерю данных, вызванную копированием и вставкой).В приведенной выше командной строке
/dev/sda
следует заменить устройство SSD, на которое вы хотите отправлять команды TRIM.start
является адресом первого блока (сектора) для TRIM иcount
является количеством блоков, помеченных как свободные от этого начального адреса. Вы можете передать несколько диапазонов в команду.Лично сделав это с hdparm v9.32 на Ubuntu 11.04 на моем ноутбуке с 128 ГБ Crucial RealSSD C300, я должен указать на проблему: мне не удалось передать общее количество дисковых блоков (0: 250069680) в качестве диапазона , Я вручную (по сути, «двоичный поиск вручную») нашел достаточно большое значение для числа блоков, которое сработало (40000) и смог выдать команды TRIM на последовательности 40000 диапазонов, чтобы освободить весь диск. Это можно сделать с помощью простого сценария оболочки, подобного этому (протестировано на Ubuntu 11.04 под root):
чтобы стереть весь диск, возьмите это общее число секторов и замените 250069680 в следующей строке на этот номер и выполните (добавить
--please-destroy-my-drive
):И вы сделали! Вы можете попробовать прочитать сырое содержимое диска
hexedit /dev/sda
до и после и убедиться, что накопитель отбросил данные.Конечно, даже если вы не хотите использовать Linux в качестве основной ОС машины, вы можете использовать этот трюк, загрузив live CD и запустив его на дисковод.
источник
Прежде всего, давайте начнем с понимания того, что именно приводит к снижению производительности. Не зная об этом, многие люди предложат неадекватные решения (как я уже вижу, происходит). Суть всего этого затруднительного положения в основном сводится к следующему факту, цитируемому из Википедии . Помните это, это важно:
Твердотельные накопители состоят из NAND-вспышки, а флэш-память состоит из «блоков». Каждый блок содержит много «страниц». Для простоты давайте представим, что мы только что приобрели новый блестящий SSD, который содержит колоссальный блок памяти, и этот блок состоит из 4 пустых страниц.
Для ясности я различаю пустые страницы, используемые страницы и удаленные страницы с помощью ∅, 1 и X. Главное, что между ними есть разница с точки зрения контроллеров! Это не так просто, как 1 и 0. Итак, для начала, страницы на нашем новом диске выглядят так:
∅, ∅, ∅, ∅ (все пусто)
Теперь мы переходим к записи некоторых данных на диск, и в итоге они сохраняются на этой первой странице, таким образом:
1, ∅, ∅, ∅
Далее мы записываем немного больше данных, только на этот раз достаточно, чтобы для этого потребовалось две страницы, и в итоге они сохраняются на 2-й и 3-й странице:
1, 1, 1, ∅
У нас заканчивается пространство! Мы решили, что нам не нужны начальные данные, которые мы написали, поэтому давайте удалим их, чтобы освободить место.
X, 1, 1, ∅
Наконец, у нас есть еще один большой набор данных, который нам нужно сохранить, который будет занимать оставшиеся две страницы. ЭТО ГДЕ ХИТ ПРОИЗВОДИТЕЛЬНОСТИ ПРОИСХОДИТ В ПРИВОДАХ БЕЗ ТРИММА !! Переходя от нашего последнего состояния к этому:
1, 1, 1, 1
... требует больше работы, чем большинство людей понимают. Опять же, это связано с тем, что флэш-память может стираться только блочным способом, а не постраничным, что в точности и требует последний переход, описанный выше. Различие между ТРИМ и твердотельными накопителями без ТРИМ заключается в том, что выполняется следующая работа!
Поскольку нам нужно использовать пустую страницу и удаленную страницу, SSD должен сначала прочитать содержимое всего блока в некоторое внешнее хранилище / память, стереть исходный блок, изменить содержимое, а затем записать это содержимое обратно в блок, Это не так просто, как «запись», вместо этого он теперь стал «читать-стирать-писать». Это большое изменение, и для того, чтобы это произошло, когда мы пишем много данных, это, вероятно, самое неподходящее время для этого. Этого можно было бы избежать, если бы эта «удаленная» страница была восстановлена заблаговременно, а это именно то, для чего предназначена TRIM. С TRIM SSD либо восстанавливает наши удаленные страницы сразу после удаления, либо в другое удобное время, которое алгоритмы TRIM сочтут целесообразным. Важной частью является то, что с TRIM этого не происходит, когда мы находимся в середине записи!
Без TRIM мы, в конечном счете, не сможем избежать описанного выше сценария, так как заполняем наши диски данными. К счастью, некоторые новые твердотельные накопители выходят за рамки просто TRIM и фактически делают то же самое, что и TRIM в фоновом режиме на аппаратном уровне без необходимых команд ATA (некоторые называют это сборкой мусора). Но для тех из нас, кому не повезло, что их тоже нет, важно знать, что записи нулей на весь диск недостаточно для восстановления первоначальной производительности !!!!! Запись всех нулей на диск не указывает контроллеру, что страница во флэш-памяти свободна для записи. Единственный способ сделать это на диске, который не поддерживает TRIM, - это вызвать на диске команду безопасного стирания ATA с помощью такого инструмента, как HDDErase (через Wayback Machine) .
Я полагаю, что были некоторые ранние SSD, которые поддерживали TRIM только после удаления разделов или при таких вещах, как «очистка диска в Windows 7», а не при удалении отдельных файлов. Это может быть причиной того, что старый диск восстановил производительность при выполнении этой команды. Это кажется мне немного туманным ...
Большая часть моих знаний о твердотельных накопителях и аппаратных средствах / гаджетах в целом исходит от anandtech.com . Я думал, что у него была отличная рецензия, объясняющая все это, но я не могу ее найти!
источник
По-видимому, стандартная рекомендация состоит в том, чтобы записать все нули с полным приводом. Я не совсем уверен, почему это помогает (не слишком ли много записей в конечном итоге уничтожает твердотельные накопители?), Но, похоже, это подтверждается форумами поддержки твердотельных накопителей основных производителей.
Итак, чтобы сделать это в Windows:
diskpart
В утилите вы увидите
DISKPART>
приглашение и выполните следующие команды:Очевидно, убедитесь, что вы выбрали правильный диск SSD, прежде чем продолжить!
Волшебство здесь в том,
clean all
что все нули записываются на диск :После этого я могу подтвердить, что производительность диска существенно возросла.
источник
Я также нашел инструмент, SSD Life Pro . Это плохие новости для меня.
Что касается того, как он рассчитывает это, он использует индикаторы SMART SSD. По-видимому, он пытается прогнозировать на основе данных SMART :
Это сложно, потому что также необходимо знать, когда данные были записаны для оценки, но вот основные данные:
Самое страшное число - это Remaining Drive Life, который составляет 4 .. процента!
И результирующие расчеты:
Для справки, этот диск был изначально куплен в октябре 2009 года, поэтому ему чуть больше полутора лет.
источник
Я обнаружил, что запись нуля через диск - не лучший подход. Хотя это может помочь в краткосрочной перспективе, я обнаружил, что он определенно не восстанавливает полную мощность моего диска (у меня довольно старый Intel-SSD без поддержки TRIM). После примерно года интенсивного использования я начал зависать на 1-2 секунды, когда SSD пытался записать любой файл, даже после обнуления SSD.
Единственное, что я обнаружил, что полностью восстанавливает производительность - это безопасное стирание с использованием
hdparm
. Я приобрел привычку безопасно стирать мой SSD каждые 6-12 месяцев, когда он начинает испытывать незначительные икоты. Кто-то на Macrumors сделал учебник для Mac, посвященный тому, как это сделать для устройств Mac *.Согласно всем утверждениям, которые я видел, безопасное стирание отправляет на SSD специальную команду, которая заставляет его устанавливать все сектора на ноль на гораздо более низком уровне, чем просто использование
dd
или что-то еще.источник
На Mac, проверьте DigilloydTools DiskTester . Там также есть некоторые интересные данные, чтобы увидеть влияние восстановления на производительность диска.
источник
cat /dev/zero > /tmp/bigfile
.В ThinkPads есть скрытое меню BIOS (включите с помощью http://www-307.ibm.com/pc/support/site.wss/MIGR-68369.html ), которое сбрасывает ваш SSD.
источник
Чтобы проверить жизнь ssd на твердотельном диске ssd, вам нужно установить пакет smartmontools. Он содержит две служебные программы (smartctl и smartd) для управления и мониторинга систем хранения с использованием системы самоконтроля, анализа и отчетности (SMART), встроенной в большинство современных жестких дисков ATA и SCSI.
Для дистрибутивов на основе Ubuntu, Mint или Debian
Media_Wearout_Indicator - это то, что вы ищете. Если 100 означает, что ваш ssd имеет 100% жизни, то меньшее число означает, что осталось меньше жизни.
Вывод с моего ноутбука
Если вы хотите увидеть более подробную информацию и полные атрибуты с вашего диска, вы можете запустить
Источник: namhuy.net/1024/how-to-check-ssd-life-left.html
источник
Теперь для систем Linux существует гораздо лучший ответ по сравнению с ответом @LeakyCode:
Команда "fstrim" из "util-linx" будет проходить через файловую систему и будет выдавать команды TRIM для всего неиспользуемого пространства. В таких дистрибутивах, как Ubuntu, это отключено по умолчанию, за исключением списка избранных «известных безопасных» дисков от Intel и Samsung. Но команду можно запустить вручную на любом разделе для любого диска.
источник