dd Copie o arquivo de imagem de partição no arquivo de imagem de disco

1

Estou criando uma imagem de disco e copiei um mbr nele:

dd if=/dev/zero bs=2M count=256 > ./hd.img
dd if=mbr.bin of=hd.img conv=notrunc
sfdisk --force ./hd.img < partitions.sfdisk

onde partitions.sfdisk se parece com isto:

2048,,0x83,*

fdisk -lu hd.img agora lista isso:

./hd.img1  *     2048 1048575  1046528  511M 83 Linux

com setores de 512 bytes.

Agora quero formatar hd.img1 com ext4 sem criar um dispositivo de loop. Então eu criei uma segunda imagem hd.img1 com o tamanho de 512MB - (2048 x 512) bytes. Eu executei

mkfs.ext4 hd.img1

e agora eu quero copiar hd.img1 em hd.img na posição da partição criada hd1.img .

Isso é possível? Eu tenho que dd hd.img1 com um deslocamento (ignorar) de 2048 x 512 ?

dd if=hd.img1 of=hd.img skip=2048 bs=512

Quando faço isso, pareço ter sobrescrito minha tabela de partições criada com sfdisk , então obviamente estou fazendo algo errado.

    
por Stefan 14.08.2017 / 08:35

1 resposta

1

skip pula dentro da entrada. Para mover sua posição inicial no arquivo output , use seek .

Em man dd :

seek=BLOCKS

skip BLOCKS obs-sized blocks at start of output

skip=BLOCKS

skip BLOCKS ibs-sized blocks at start of input

    
por 14.08.2017 / 08:55

Tags