por que as pessoas usam "notrunc" ao criar uma ISO a partir de um DVD?

por que as pessoas usam "notrunc" ao criar uma ISO a partir de um DVD?

Existem muitos artigos na web que descrevem uma linha de comando para criar uma imagem ISO de um disco DVD-Vídeo como esta:

dd if=/dev/sr0 of=mydvd.iso conv=noerror,sync,notrunc

Eu gostaria de entender por que notruncé necessário. Pelo que sei, e pela manpágina do comando, notruncevita que o arquivo de saída seja truncado. Basicamente, isso significa que, se o arquivo existir, ddapenas sobrescreve o que já está lá; se houver conteúdo que ddnão seja tocado (talvez buscando outro ponto no arquivo), o conteúdo original será deixado intacto.

Ao fazer uma ISO, certamente você deseja começar com um arquivo novo, limpo e vazio?

A única coisa que consigo pensar é no caso de um disco realmente ruim, o uso notruncpermite que você execute o mesmo comando dd várias vezes no mesmo arquivo de saída para preencher bits diferentes a cada vez. Se o arquivo de saída não existir, notruncnão terá efeito.

É isso ou há algum outro motivo que todos especificam notrunc?

(Não estou perguntando como contornar CSS, ARccOS ou qualquer outra coisa; apenas sobre dduso)

Responder1

Se eu tivesse que adivinhar, com base neste comentário doArtigo da Wikipédia sobredd:

A opção de conversão notrunc significa não truncar o arquivo de saída - ou seja, se o arquivo de saída já existir, apenas substitua os bytes especificados e deixe o restante do arquivo de saída em paz.

o uso de notruncé por motivos de desempenho. Não faz sentido reescrever o arquivo inteiro apenas para atualizar alguns bytes/kbytes/megabytes/etc.

OBSERVAÇÃO:A resposta definitiva a esta pergunta deve ser as perguntas e respostas do StackOverflow que@garethTheRedreferenciado nos comentários, intitulado:Por que usar conv=notrunc ao clonar um disco com dd?. A resposta é excelente e inclui um programa C++ que demonstra o efeito que O_TRUNCtem em dispositivos e arquivos de bloco.

Responder2

Não é necessário se você deseja copiar um DVD inteiro para um arquivo que posteriormente conterá apenas a carga desse DVD. Na verdade, notrunc é um risco para a privacidade e pode causar estouro de mídia se você substituir um arquivo antigo que seja maior que a carga útil do DVD. Neste caso, os blocos excedentes do arquivo antigo permanecerão anexados ao conteúdo do DVD copiado. Assim, eles seriam copiados para um novo DVD junto com o sistema de arquivos.

Bastante útil é o conselho no comentário de starfry de copiar apenas os blocos do sistema de arquivos ISO 9660 (se for realmente ISO 9660) porque a mídia DVD pode fornecer mais blocos do que os do sistema de arquivos.

informação relacionada