У меня есть образ 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