Предположим, у меня есть диск с 10000 512b секторов.

Если я сделаю

sudo dd if=/dev/zero of=/dev/disk2 skip=99999 count=10

что случится?

Когда я проверял это на реальном диске, вывод dd предполагал, что он действительно что-то записал, но я не понимаю, где и как это возможно?

1 ответ1

0

На целые диски ссылаются без номеров, например: /dev /sda На разделы ссылаются с номерами: /dev /sda2

Ваш пример: of =/dev/disk2 ссылается на раздел 2 на диске.

Во многих случаях последний раздел не использует весь диск, и фактически несколько МБ остаются неиспользованными. Пройдя конец раздела 2, вы можете повредить раздел 3, если на жестком диске есть третий раздел.

Наиболее вероятная причина, по которой это сработало, - это неиспользуемое пространство, о котором я упоминал, и тот факт, что вы пытались превысить ограничение на 10 секторов, а не ограничение жесткого диска. 1MB - это 2048 секторов. Если вы достигли конца диска, возникнет ошибка ввода-вывода.

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