Мой старый твердотельный диск на 128 ГБ составляет приблизительно полтора года, старые теперь, и я с тех пор обновил до другого диска.
Я хотел бы очистить мой старый SSD к...
восстановите его производительность к почти новым уровням
реабилитируйте его и обычно давайте ему проверку состояния
Как я иду о выполнении этого?
На Linux, просто запущенном
hdparm --trim-sector-ranges start:count /dev/sda
передача блока располагается, Вы хотите ОБРЕЗАТЬ вместо start
и count
и устройство SSD вместо /dev/sda
. Это имеет преимущество того, чтобы быть быстрым и не пишущие нули на диске. Скорее это просто отправляет команды ДЛЯ ОБРЕЗКИ на контроллер SSD, позволяющий этому знать, что Вы не заботитесь о данных в тех блоках, и это может свободно предположить, что они не использованы в его алгоритме сборки "мусора".
Вероятно, необходимо выполнить эту команду как корень. Так как эта команда чрезвычайно опасна, поскольку она может сразу вызвать крупную потерю данных, также необходимо передать --please-destroy-my-drive
аргумент hdparm
(Я не добавил это к командной строке для предотвращения случайной потери данных, вызванной копией и вставкой.)
В вышеупомянутой командной строке, /dev/sda
должен быть заменен устройством SSD, в которое Вы хотите отправить команды ДЛЯ ОБРЕЗКИ. start
адрес первого блока (сектор) для ОБРЕЗКИ, и count
количество блоков для маркировки как лишенный того начального адреса. Можно передать несколько диапазонов команде.
Лично сделав это с hdparm v9.32 на Ubuntu 11.04 на моем ноутбуке с Решающим RealSSD C300 на 128 ГБ, я должен указать на проблему: Я не смог передать общее количество дисковых блоков (0:250069680) как диапазон. Я вручную (по существу "двоичный файл, искавший" вручную), нашел достаточно большое значение для количества блока, которое работавший (40000) и смог дать команды ДЛЯ ОБРЕЗКИ на последовательности 40 000 диапазонов к свободному весь диск. Возможно сделать так с простым сценарием оболочки как это (протестированный на Ubuntu 11.04 под корнем):
# fdisk -lu /dev/sda
Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
...
для стирания всего диска возьмите то общее количество секторов и замените 250069680 в следующей строке с тем числом и работайте (добавить --please-destroy-my-drive
):
# i=0; while [ $i -lt 250069680 ]; do echo $i:40000; i=$(((i+40000))); done \
| hdparm --trim-sector-ranges-stdin /dev/sda
И Вы сделаны! Можно попытаться читать необработанное содержание диска с hexedit /dev/sda
прежде и после и проверяют, что диск отбросил данные.
Конечно, даже если Вы не хотите использовать Linux в качестве основной ОС машины, можно усилить этот прием путем начальной загрузки от живого CD и выполнения его на диске.
По-видимому, стандартная рекомендация состоит в том, чтобы сделать запись полного диска всех нулей. Я не совсем уверен, почему это помогает (много записей в конечном счете не уничтожает SSD?), но это, действительно кажется, подтверждается крупным поставщиком форумы поддержки SSD.
Так, чтобы сделать это в Windows:
diskpart
Однажды в утилите Вы будете видеть a DISKPART>
запросите и дайте следующие команды:
DISKPART> list disk
DISKPART> select disk x
Очевидно, УДОСТОВЕРЬТЕСЬ, что ВЫ ВЫБРАЛИ КОРРЕКТНЫЙ ТВЕРДОТЕЛЬНЫЙ ДИСК перед продолжением!
DISKPART> clean all
DISKPART> create partition primary
DISKPART> format quick fs=NTFS
Волшебство здесь clean all
который пишет все нули в диск:
При определении всего параметра каждый сектор может быть обнулен, и все данные, которые содержатся на диске, могут быть удалены.
После выполнения этого я могу подтвердить, что производительность диска повысилась существенно.
Я также нашел инструмент, Жизнь SSD Pro. Это имеет некоторые плохие новости для меня.
Относительно того, как это вычисляет, что, использует индикаторы SMART SSD. По-видимому, это пытается предсказать на основе данных S.M.A.R.T.:
Это хитро, потому что это также должно знать, когда данные были записаны для оценки, но здесь являются базовыми данными:
01 Read Error Rate 7 09 Power-on Hours Count 7085 0C Power Cycle Count 318 B8 Initial Bad Block Count 15 C3 Program Failure Block Count 0 C4 Erase Failure Block Count 0 C5 Read Failure Block Count 0 C6 Read Sectors 5468243171 C7 Write Sectors 41640920876 C8 Read Commands 100482453 C9 Write Commands 417315851 CA Error Bits from Flash 345270 CB Read Sectors with Correctable Bit Error 340001 CC Bad Block Full Flag 0 CD Maximum P/E Count Specification 5000 CE Minimum Erase Count 3774 CF Maximum Erase Count 65348 D0 Average Erase Count 4837 D1 Remaining Drive Life 4
Страшное число там является Жизнью Остального диска, которая равняется 4.. процент!
И получающиеся вычисления:
Model: CRUCIAL_CT128M225 Size: 128 GB Serial number: xxxxxxxxxxxxxxxxx456 Firmware: 2030 Powered on times: 318 TRIM support in drive/OS: enabled/enabled Worked time: 9 months 16 days 5 hours Total data read: 2607.46 GB written: 19855.94 GB
Для записи этот диск был первоначально куплен в октябре 2009, таким образом, это - немногим более, чем полтора старые года.
Прежде всего давайте начнем путем понимания, что это - который вызывает снижение производительности. Не зная это, многие люди предложат неверные решения (поскольку я уже вижу случай). Затруднение этого всего затруднительного положения в основном сводится к следующему факту, как процитировано Википедию. Помните это, это важно:
С флэш-памятью NAND операции чтения и операции программирования должны быть выполнены постраничные, в то время как разблокирование и стирание должны произойти мудрым блоком способом.
SSD составлен из флэш-памяти NAND, и флэш-память состоит из "блоков". Каждый блок содержит много "страниц". Ради простоты, позволяет, предполагают, что мы просто купили новейший SSD, который содержит огромный единственный блок памяти, и тот блок состоит из 4 пустых страниц.
Ради ясности я дифференцируюсь между пустыми страницами, используемыми страницами и удаленными страницами с ∅, 1, и X. Так как ключ - это существует различие между каждым из них с точки зрения контроллеров! Это не столь просто как 1's и 0. Так, для запуска страницы на нашем новом диске похожи так:
∅, ∅, ∅, ∅ (все пустеют),
Теперь, мы идем для записи некоторых данных в диск, и это заканчивает тем, что было сохранено на той первой странице, таким образом:
1, ∅, ∅, ∅
Затем, мы пишем немного больше данных, только на этот раз достаточно, что требуется две страницы и таким образом, это заканчивает тем, что было сохранено на 2-й и 3-й странице:
1, 1, 1, ∅
У нас заканчивается пространство! Мы решаем, что нам действительно не нужны исходные данные, которые мы записали, поэтому позволяет, удаляют его для создания места.:
X, 1, 1, ∅
Наконец, у нас есть другой большой набор данных, которые мы должны хранить, который использует остающиеся две страницы. ЭТО - ТО, ГДЕ ХИТ ПРОИЗВОДИТЕЛЬНОСТИ ПРОИСХОДИТ В ДИСКАХ БЕЗ ОБРЕЗКИ!! Движение от нашего последнего состояния до этого:
1, 1, 1, 1
... требует большего количества работы, чем большинство людей понимает. Снова это - то, вследствие того, что флэш-память может только стереться мудрым блоком способом, не мудрым страницей, который является точно, к чему выше призывает заключительный переход. Дифференциатор между и основанным на необрезке SSD ДЛЯ ОБРЕЗКИ - когда следующая работа выполняется!
Так как мы должны использовать пустую страницу и удаленную страницу, SSD должен сначала считать содержание всего блока в некоторое внешнее устройство хранения данных/память, стереть исходный блок, изменить содержание и затем записать то содержание обратно в блок. Это не столь просто как "запись", вместо этого это теперь стало "записью стирания чтения". Это - большое изменение, и чтобы это произошло, в то время как мы пишем, что много данных является, вероятно, самым несвоевременным временем для него для появления. Можно было все избежать, была ли та "удаленная" страница восстановлена заранее, который является точно, что ОБРЕЗКА предназначается, чтобы сделать. С ОБРЕЗКОЙ SSD или сразу восстанавливает наши удаленные страницы после удаления или в некоторое другое подходящее время, когда это - алгоритмы ДЛЯ ОБРЕЗКИ, считают соответствующими. Важная часть, хотя то, что с ОБРЕЗКОЙ этого не происходит, когда мы посреди записи!
Без ОБРЕЗКИ мы в конечном счете не можем избежать вышеупомянутого сценария, поскольку мы заполняем наши диски данными. К счастью движение некоторого более нового SSD вне просто ОБРЕЗКИ и эффективно делает то же самое как ОБРЕЗКУ в фоновом режиме на аппаратном уровне без необходимых команд ATA (некоторый вызов эта сборка "мусора"). Но для тех из нас достаточно неудачный, чтобы не иметь также, важно знать, что запись нулей ко всему диску не достаточна для исправления исходной производительности!!!!! Запись всех нулей к диску не указывает к контроллеру, что страница во флэш-памяти свободна для записи. Единственный способ сделать это на диске, который не поддерживает ОБРЕЗКУ, должно вызвать ATA безопасная команда стирания на Ваш диск с помощью инструмента, такого как HDDErase (с помощью Wayback Machine).
Я полагаю, что был некоторый ранний SSD, который только поддерживал ОБРЕЗКУ после удаления разделов или на такие вещи, как Windows 7 "diskpart чистит все", а не после удаления отдельных файлов. Это может быть причиной, почему более старый диск, казалось, возвращал производительность после выполнения той команды. Это кажется немного туманным мне хотя...
Большая часть моего знания и аппаратных средств/гаджетов SSD в целом прибывает из anandtech.com. Я думал, что у него была большая рецензия, объясняя все это, но ни за что в жизни я не могу найти его!
Я нашел, что запись нуля через диск не является лучшим подходом. В то время как это могло бы помочь вскоре, я нашел, что это определенно не восстановило мой диск к своей полной производительности (у меня есть довольно старый Intel-SSD non-TRIM-enabled). После year-so довольно тяжелого использования, я запуск, сталкивающийся с 1-2 вторыми замораживаниями, когда SSD попытался бы записать в любой файл, даже после zero'ing SSD.
Единственной вещью я нашел, что полностью восстанавливает производительность, было безопасное использование стирания hdparm
. Я делал это привычкой к безопасному стиранию мой SSD каждые 6-12 месяцев, когда это начинает страдать от некоторых легких отклонений. Кто-то на MacRumors сделал Mac определенным учебным руководством о том, как сделать для Mac* устройства.
Согласно всем требованиям я видел, безопасное стирание отправляет специальную команду в SSD, который заставляет его обнулять все секторы на намного более низком уровне затем просто использование dd
или что-то.
На Mac проверьте digilloydTools DiskTester. Существуют также некоторые интересные точки данных там для наблюдения эффектов восстановления на производительности диска.
ThinkPads имеют скрытое меню BIOS (включите с http://www-307.ibm.com/pc/support/site.wss/MIGR-68369.html), который сбрасывает Ваш SSD.