Есть ли простая команда, которую я могу использовать, чтобы обнулить последние 1 МБ жесткого диска?
Для начала езды я бы dd if=/dev/zero of=/dev/sdx bs=1M count=1
. seek
Вариант для дд выглядит многообещающим, но кто - то есть простой способ , чтобы определить, насколько далеко я должен искать?
У меня есть аппаратное устройство RAID, которое хранит часть конфигурации RAID в конце диска. Мне нужно, чтобы устройство RAID считало диски неконфигурированными, поэтому я хочу удалить конфигурацию RAID, не тратя время на полную очистку дисков. У меня дюжина дисков по 2 ТБ, и полное стирание всех этих дисков заняло бы много времени.
sda
качестве примера ужасно опасно, если вы копируете и вставляете и получаете возможность скопировать возврат каретки.sdx
будет гораздо лучше подходит. Я принимаю меры предосторожности, но только из-за них я не уничтожил свой диск прямо сейчас.Размер каждого раздела доступен в
/proc/partitions
. Следующая команда показывает размерsdx
(в килобайтах):Таким образом:
источник
Использование поиска до конца диска работает очень хорошо, а именно:
Тем не менее, когда вы используете это, я рекомендую вам либо знать, что значение вашего счета является правильным, либо не использовать его вообще. Причина, по которой я говорю это, состоит в том, что диски могут иметь 512-байтовые сектора или 4-килобайтные сектора, и если вы используете это решение с диском, на котором есть 4 тыс. Секторов, вы не перейдете в конец диска с этим значением счетчика, и может пропустить информацию RAID в конце (я столкнулся с этим).
источник
dd
адресные секторы при использовании с пользовательскимиbs
значениями меньше / больше, чем фактический размер блока, сообщаемый прошивкой устройства или ядром linux.Вы можете получить количество секторов на диске с помощью
hdparm -v /dev/sdx
. Попробуйте найти число_секторов - 2048 (при условии 512-байтовых секторов).источник
/sys/block/sdx/queue/physical_block_size
может дать вам информацию, но некоторые новые диски воспроизводятся быстро и свободно с размером сектора, о котором они сообщают. Возможно, лучше прочитать этикетку на диске или посмотреть ее в техническом описании производителя.hdparm -I /dev/sda
перечисляет 2 "версии" размера сектора:Logical
иPhysical
. Это то, что вы подразумеваете под «быстрым и свободным»? .... у меня возникает такое "чувство", что если что-то будет вести себя таким образом, это вполне может быть система RAID ..Вы можете использовать
dd
и получить размер устройства черезfdisk
:Я не использую размер блока 1 м, чтобы избежать ошибок округления.
В качестве альтернативы, вы можете написать небольшую C-программу (или скрипт), которая вызывает
lseek
функцию сSEEK_END
отрицательным смещением 1 Мб, а затем вызываетwrite
.источник