14

У меня есть диск на 2 ТБ, который был заполнен до> 99%. Я удалил разделы с помощью fidsk и отформатировал их с помощью mkfs.ext4 .

Насколько я знаю, фактические данные, которые были на диске, все еще существуют. Тем не менее таблица разделов была переназначена.

Вопрос в том, улучшит ли это производительность записи для дальнейших действий записи, если диск будет очищен? С очищенным я имею ввиду заполнить диск нулями?

Что-то вроде

dd if=/dev/zero of=/dev/sdx bs=1 count=4503599627370496

3 ответа3

35

Нет, это не улучшит производительность.

TL; DR: ротационные магнитные жесткие диски не работают так.

Во-первых, когда вы записываете какие-либо данные на вращающийся магнитный накопитель, эти данные преобразуются в магнитные домены, которые на самом деле могут сильно отличаться от битовой структуры, которую вы пишете. Это делается отчасти потому , что гораздо легче поддерживать синхронизацию , когда шаблон считан из тарелочки имеет определенное количество изменчивости, и, например, длинная строка "ноль" или "один" значение будет сделать очень трудно поддерживать синхронизацию , (Вы прочитали 26 393 бита или 26 394 бита? Как вы узнаете границу между битами?) Способы выполнения этого преобразования между битами компьютерных данных и сохраняемыми порциями развивались с течением времени; например, посмотрите Модифицированную частотную модуляцию, MMFM, Групповую запись кода и более общую технологию кодирования с ограниченной длиной прогона.

Фактический процесс записи, такой как HAMR, PMR, опоясывающий лишай и т.д., Ортогональн к этому, поскольку они описывают механизм хранения магнитных доменов на физическом носителе.

Во-вторых, когда вы записываете новые данные в сектор, магнитные домены соответствующих частей диска просто устанавливаются на желаемое значение. Это делается независимо от того, какой предыдущий магнитный домен находился в этом конкретном физическом месте. Блюдо уже вращается под головкой записи; сначала чтение текущего значения, а затем запись нового значения тогда и только тогда, когда оно отличается, приведет к тому, что для каждой записи потребуется два оборота (или дополнительная головка для каждого диска), что приведет к удвоению задержки записи или значительному увеличению сложности диска, в свою очередь увеличивается стоимость. Поскольку ограничивающим фактором производительности последовательного ввода-вывода на жестком диске является то, насколько быстро каждый бит проходит под головкой чтения / записи, это даже не принесет никакой пользы пользователю. (Кроме того, ограничивающим фактором в производительности произвольного ввода / вывода является то, как быстро головка чтения / записи может быть расположена на желаемом цилиндре, а затем желаемый сектор попадает под головку. Основная причина, по которой твердотельные накопители могут быть такими быстрыми при случайных нагрузках ввода-вывода, заключается в том, что они полностью устраняют оба эти фактора.)

Как отмечает JakeGould, одной из причин, по которой вам может потребоваться перезаписать диск с помощью некоторого фиксированного шаблона (например, всех нулей), является обеспечение того, чтобы никакие остатки ранее сохраненных данных не могли быть восстановлены, умышленно или случайно. Но это не повлияет на производительность привода в будущем по причинам, указанным выше. Другая причина, которая, как можно предположить, может "повысить производительность", как может быть сказано в liori, заключается в том, чтобы помочь сжать неиспользуемые части сохраненных образов дисков, но даже это не повышает производительность используемой системы.

4

Вы говорите это:

Вопрос в том, улучшит ли это производительность записи для дальнейших действий записи, если диск будет очищен? С очищенным я имею ввиду заполнить диск нулями?

100% Нету. Запись нулей на диск не улучшает производительность. Вы бы сделали это только для уничтожения данных. Итак, зная это, вы говорите так:

Насколько я знаю, фактические данные, которые были на диске, все еще существуют.

Технически да… Данные, которые ранее существовали на диске, все еще существуют на диске на некотором фундаментальном уровне. Тем не менее, он не существует в форме, к которой легко получить доступ или восстановить на данном этапе, но это может быть проблемой, если вы действительно обеспокоены тем, что данные могут быть скомпрометированы кем-то, кто готов приложить усилия для восстановления тех фрагментов данных, которые остаются.

Таким образом, если вас беспокоит безопасность и конфиденциальность, вы можете записать на диск нули, чтобы убедиться, что все свободное пространство действительно стерто. Но безопасность и конфиденциальность - абсолютная единственная причина, по которой вы когда-либо удаляете свободное место с нулями, поскольку подобные действия никогда не улучшают производительность.

0

Мой подарок в два цента для всех вас - мой собственный опыт, ДА, это помогает, но с осторожностью.

У меня было много SSD и, основываясь на моих собственных тестах, я рекомендую заполнить нулями до перезаписи основной таблицы и вместо удаления разделов воссоздать основную таблицу.

Позже я объясню почему, но шаги были бы «доп», чтобы заполнить весь SSD, использовать bs = 1M, намного быстрее, чем bs = 1, и забыть параметр count, чтобы заставить его идти до конца (это даст ошибку, когда больше места не будет, когда дойти до конца, который указан, так что не беспокойтесь, чтобы увидеть такую ошибку, она должна быть показана); после полного заполнения используйте gparted или все, что вы хотите, чтобы записать основную таблицу (MBR/GPT/etc) по мере необходимости, это «обрежет» весь диск, затем создаст разделы с желаемым форматом и т. д.

Зачем заполнять его нулями? Коротко говоря, мой опыт заключается в том, что когда я заполняю его нулями, некоторые твердотельные накопители исправляют 2-24 нечитаемых блока, и блоки больше не используются.

Теперь первое, что я делаю, когда получаю новый твердотельный накопитель, перед его использованием - это полное заполнение его нулями, чтобы избежать повторных случайных ошибок нечитаемых блоков объемом 1 КБ.

Мой опыт: используя программное обеспечение для чтения / тестирования всего SSD (оно говорит вам, сколько времени занимает чтение каждого «сектора»), я получил множество пар «512-байтовых секторов» (блоки по 1 КБ), которые не могут быть использованы, и их положение изменяется случайным образом и количество отказов варьируется от 2 до 24 и т. д .; после полного заполнения нулями и воссоздания мастер-таблицы (которая обрезает обрезки) больше не читаемые сектора.

Мой краш-тест: Я запустил заполнение нулями для восстановления после таких ошибок, я позволил использовать один SSD, через несколько часов и после того, как на него было записано менее одного терабайта (120GiB SSD), он умер по ошибке, он не позволяет доступ к нему больше, биос материнской платы не может его видеть, USB-корпуса зависают при доступе к нему, поэтому ни Windows не видит его, ни Linix fdisk не видит его.

Это был тест «die» с несколькими SSD, которые я купил одновременно, идентичные ... все, что я не обнулял, умерли, остальные перераспределили много блоков, но без каких-либо нечитаемых ошибок.

Конечно, я пришел к выводу, что все твердотельные накопители не являются надежными, независимо от марки и емкости.

Итак, по моему опыту, первое, что нужно сделать, - это заставить их заполниться хотя бы один раз, лучше с нулями, чем со случайными (это быстрее).

Более того, большинство SSD выполняют внутреннюю обрезку, когда пишутся с нулями (алгоритмы выделения garbe и т.д.).

Кроме того, если вы сначала заполните их один раз, любой блок, который дает ошибку записи, перераспределяется. Гораздо лучше, если такое происходит без важных данных, когда записанные нули, если данные были потеряны (все были нулями), не имеют значения, но если данные «жизненно важны» для операционной системы, это очень плохо.

Большинство перераспределенных SSD делают это, но, теряя данные в блоке, который дал ошибку записи, только «предприятие» (они стоят> 10 € за ГиБ) делают попытку записи после перераспределения правильно. Некоторые SSD также потеряют все другие «сектора» в таком отказавшем блоке (как, например, «сброс»).

Так что лучше, попробуйте сначала, после полного заполнения, проверьте данные SMART, чтобы увидеть, сколько еще можно сделать перераспределений.

Не так важно, сколько было выполнено перераспределений, большинство твердотельных накопителей было получено от производителя с некоторыми перераспределенными блоками, найти один с нулем менее 1%, поэтому важно соотношение между перераспределением и возможным перераспределением в будущем.

Это мой опыт после того, как сотни SSD умерли в течение пяти пяти лет, некоторые умерли в первый час использования, другие через неделю, другие через месяц; но все, что я сделал с таким нулевым полным заполнением, действительно проживало от 2 до 3 лет, с записью 13 ГБ каждый день, 3 * 365 * 13 ГиБ = 13,9 ТБ, что намного меньше, чем говорят производители (> 100 ТБ).

Но скорость имеет значение, особенно если в Windows (в Linux хорошее чередование 2xHDD LVM2 дает одинаковое время загрузки, но не перестает работать в течение> 25 лет), поэтому использование SSD по цене 0,21 € за гигабайт (120GiB = 25 €) стоит Стоит (для Windows), среди них они могут быть изменены через 2 или 3 года; Я надеюсь, что технологии улучшат надежность.

Для Linux я больше не хочу SSD, пока они не станут более надежными, но для Windows (Vista, 7 и 10) системный раздел является обязательным (время загрузки в десять раз ниже, в некоторых случаях, с Windows Vista, вместо> 30 минут загрузки) загружается на> 4 мин на моем старом ноутбуке).

Да, полное заполнение нулями обязательно, учитывая мой опыт.

Но только тогда, когда вы получаете SSD и до того, как использовать его для чего-либо.

Совет: Если SSD плохо выполняет сборку мусора, а операционная система не требует, чтобы он все обрезал, лучше выполнить полное заполнение нулями, в конце это то, что внутри SSD, когда он удаляет блоки. Кроме того, запись нулей очистит электронные данные, поэтому он помогает восстанавливать блоки при сбое чтения.

Кроме того, каждый раз, когда вы изменяете данные на нем, попробуйте выполнить клон, SSD сообщит, что запись была в порядке, также на нечитаемых секторах (они могут быть записаны в порядке, но не прочитаны), ни одна операционная система не предназначена для поддержки такого условия. , они все предлагают, если wtite в порядке, данные могут быть прочитаны; не путайте читаемые с прочитанными различными данными, чем написанные.

Это мой опыт работы с твердотельными и жесткими дисками. Для загрузки Windows и приложений я использую SSD, но всегда с клоном, сделанным на обычных HDD, так как SSD умирает менее чем за 3 года, но для Linux я использую 2x или 3x хороших 2,5 "HDD, что при обычном использовании дает те же времена, что и SSD , но длится гораздо дольше (> 25 лет).

Я не собираюсь платить> 1000 евро за SSD-накопитель 100 ГБ, который хорошо работает в течение 10 лет, я предпочитаю платить 25 евро за 130 ГБ каждые 2 или 3 года. Цена имеет значение 100 € в год (для предприятий) против 10 € в год (Yucon, Samsung и т.д.), Просто посчитай.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .