Был бы
dd if=/dev/zero of=somepartition bs=512
также вытрите разделы после somepartition
или остановитесь в конце somepartition
?
dd
dd
очень мощный, но также и опасный инструмент. Это делает то, что Вы говорите этому обходиться без вопросов. Таким образом, если Вы говорите этому вытирать изображения семейства... и это - незначительная опечатка далеко.
Но если Вы проверяете и перепроверяете, можно использовать его.
dd if=/dev/zero of=somepartition bs=512
или я предложил бы
dd if=/dev/zero of=/dev/sdxn bs=4096
где x
буква диска и n
число раздела и размер блока, 4 096 байтов делают процесс записи быстрее.
Важно, чтобы Вы записали в раздел в этом случае. Если Вы пишете в целый диск (конец головки диска) /dev/sdx
целый диск будет перезаписан. Но запись в раздел будет прервана в конце раздела, и разделы позади него будут сохранены. (Я протестировал теперь на USB pendrive в Lubuntu 16.04 LTS, таким образом, я знаю, что он работает как этот.)
Существует исключение для расширенного раздела (который является контейнером для логических разделов, чтобы иметь больше чем четыре раздела в таблице разделов MS-DOS). Это описано в следующей ссылке,
Я могу сделать изображение 'расширенного' раздела с помощью dd?
Но также существует другая проблема. Я протестировал Вашу команду в тестовой среде, и dd один кибибайт только для чтения (1 024 байта), когда я хотел, чтобы это сделало изображение из расширенного раздела.
Я протестировал также это теперь на USB pendrive в Lubuntu 16.04 LTS, и это относится к записи (а также к чтению). Только первый кибибайт перезаписывается.
Таким образом для суммирования, перезаписывая основные разделы и логические разделы работают согласно основному описанию в этом ответе. Но не используйте этот метод для перезаписи расширенного раздела, потому что только первый кибибайт будет перезаписан. Логические разделы расширенного раздела больше не будут находиться с помощью таблицы разделов, но данные, хранившие в них, все еще там.
Записи к устройству раздела не запишут за пределами того раздела с dd или чем-либо еще. Необходимо было бы использовать wholedisk устройство, чтобы иметь любой эффект за пределами единственного раздела.
(Протест: если Ваш диск не имеет таблицу разделов с перекрывающимися разделами, которых никогда не должно происходить.)
Я думаю, что Ваш вопрос основан на фундаментальном недоразумении о как dd
(и на самом деле подобные Unix операционные системы в целом) работа:
dd
не может перезаписать смежные разделы, просто потому что dd
не может перезаписать разделы, период.
dd
просто записи в файлы.Именно.
Теперь, если Вы передаете dd
файл, который представляет несколько разделов, затем dd
перезапишет тот файл. Но в этом случае, это не dd
запись мимо конца раздела. dd
все еще запишет до конца файла, и только до конца файла.
Но, если Вы передаете dd
файл, который только представляет один раздел, затем dd
не запишет мимо конца этого раздела. Снова, это не имеет никакого отношения dd
. dd
просто записи в файл Вы говорите этому писать в. То, что этот файл представляет единственный раздел (в этом случае) обеспечено драйвером блочного устройства в ядре. dd
не имеет никакого отношения к этому.
Так, короче говоря: dd
записи в файлы. То, что представляют те файлы, не является ни одним из dd
беспокойство. dd
ничего не знает о разделах.
Существует опасный, но редкий специальный сценарий, в котором это могло произойти даже с неошибочными драйверами блочного устройства:
Необходимо быть осторожными с dd, как будто Вы делаете ошибку, можно перезаписать больше, чем Вы заключили сделку на, и он зависит от того, что Вы используете dd для (OP был неопределенен в его использовании dd и точном синтаксисе команды dd).
При определении раздела, он запишет в тот раздел, пока раздел не будет полон.
Если Вы сделаете ошибку и поместите весь диск, например, =/dev/sda, то dd запишет в весь диск, начинают заканчивать игнорировать (и перезаписывать) Ваша таблица разделов.
Вы можете также нас dd на разделе для перезаписи удаленных файлов (удаленные файлы могут остаться на разделе и обнаруженный различными средствами восстановления с различными уровнями успеха, пока они не по записанному. В этом случае можно использовать dd для заполнения свободного пространства путем записи в файл.
dd if=/dev/zero of=/path/to/mount_point/zero_file bs=4096
rm -f /path/to/mount_point/zero_file
В зависимости от того, что Вы делаете, однако, можно хотеть использовать альтернативный инструмент для безопасного удаления файлов. Посмотрите, Как удалить файл (файлы) безопасным способом? для опций.