У меня есть два диска в моей системе Windows:

  • Диск 1, Система и Загрузка.
  • Диск 2, хранилище данных.

Некоторое время назад у меня была установлена Windows на втором диске. Теперь, когда у меня есть текущие настройки, я хотел бы удалить загрузочный код из Windows из загрузочного сектора на диске 2. Если быть точным, я не хочу стирать таблицу разделов или что-то еще, просто избавиться (обнулить) небольшую часть кода, который ищет NTLDR.

Есть ли программное обеспечение или команда для этого?

3 ответа3

3

MBR, в случае таблиц разделов в стиле DOS, всегда присутствует на диске как очень маленькая коллекция секторов в начале диска.

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

Дополнительная информация: http://technet.microsoft.com/en-us/library/cc976786.aspx

Изменить: так как вы редактировали вопрос, я обновлю свой ответ; ДД может стереть это. Загрузитесь с linux livecd и запустите на вашем отключенном диске с данными;

dd if=/dev/<path to data drive> of=/dev/<somewhere safe on windows drive>/mbr.img bs=512 count=1

Это даст вам 512-байтовую резервную копию MBR, включая таблицу разделов, на случай, если что-то пойдет не так.

Чтобы стереть 446-байтовый загрузчик:

dd if=/dev/zero of=/dev/<path of data drive> bs=446 count=1 seek=0

В зависимости от того, чего вы пытаетесь достичь, вы можете стереть только первые 440 байтов MBR. 4 байта, следующие за первыми 440 байтами, содержат уникальную подпись диска Windows, которую вы, возможно, захотите сохранить. Чтобы стереть только первые 440 байт, используйте эту команду:

dd if=/dev/zero of=/dev/<path of data drive> bs=440 count=1 seek=0
2

Пометка его как неактивного в управлении дисками должна более чем подходить для вашей ситуации.

1

Заранее прошу прощения за сложный ответ, но я не совсем понимаю, что вы хотите сделать (или лучше: почему).

Я думаю, что вы ищете команду FDISK /CMBR . Есть также утилиты, которые выполняют ту же задачу, например Paragon Partition Magic или Boot /Partition Editor.

Что вы хотите сделать, это переписать MBR и установить раздел D: не системный (не активный, не загрузочный, без флага B и т.д.).

Обратите внимание, что FDISK /CMBR должен действовать только на несистемном диске; многие загрузчики устанавливают код, который впоследствии необходим для "просмотра" диска с правильным форматом или геометрией; замена их на стандартный загрузчик (что делает /CMBR) может сделать диск недоступным до восстановления предыдущего кода.

Если вам нужно сделать диск не загрузочным, потому что он мешает загрузочной последовательности или чему-то (и отображает ошибку "NTLDR not found" вместо загрузки, скажем), лучшим выбором будет изменение параметров BIOS для порядка загрузочных устройств. или используя утилиту, подобную FDISK, чтобы пометить все разделы на этом диске как несистемные. В крайнем случае, замена двух жестких дисков должна достичь того же результата.

В противном случае существуют "выборочные загрузчики" (например, GRUB), которые могут помочь вам реализовать гибкую опцию загрузки (например, загрузка Linux или Windows или другой Windows с экрана меню запуска).

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