Назад | Перейти на главную страницу

Как удалить MBR (главную загрузочную запись) из файла образа?

У меня есть образ QEMU myserver.img то есть около 20 ГБ. Файл служит «виртуальным» жестким диском для сервера. Теперь первые 512 байтов содержат MBR, и я пытаюсь перезаписать эти байты нулями. На обычных дисках это будет работать:

dd if=/dev/zero of=/dev/sda bs=512 count=1

Но когда я пытаюсь сделать это в файле изображения, файл перезаписывается и имеет размер всего 512 байт (вместо 20 ГБ). Есть ли способ изменить только первые 512 байт, желательно с помощью dd?

Попробуйте использовать dd с conv=notrunc

dd if=/dev/zero of=myserver.img bs=512 count=1 conv=notrunc

Со страницы руководства dd

   notrunc
          do not truncate the output file

например

ls -l myserver.img
-rw-r--r-- 1 iain users 1536 Mar 27 12:31 myserver.img

dd if=/dev/zero of=myserver.img bs=512 count=1 conv=notrunc

ls -l myserver.img
-rw-r--r-- 1 iain users 1536 Mar 27 12:32 myserver.img

Добавить conv=notrunc:

dd if=/dev/zero of=YOUR_IMAGE_FILE bs=512 count=1 conv=notrunc