Subject: Re: bug#8171: [dd] bs=blocksize doesn't work as expected

From: Pádraig Brady <[email-masked]>
Date: Fri, 04 Mar 2011 14:02:35 +0000

On 04/03/11 05:02, Станислав wrote:
> [dd] bs=blocksize doesn't work as expected, for example:
> tar -c /somedir | dd bs=256K of=/dev/nst0
> In this example backup record will be recorded to a tape with block size =
> 10K instead of 256K because 10K is default for tar.
> There is workaround:
> tar -c /somedir | dd ibs=256K obs=256K of=/dev/nst0
> If we set block size for input and output separatly - it works as expected.

This operation is expected and dictated by POSIX.
It is surprising though, and I tried to clarify it in the docs:
http://git.sv.gnu.org/gitweb/?p=coreutils.git;a=commitdiff;h=d5ab0599

Note also that we're currently considering warning
that iflag=fullblock should be used, but only
currently in the case were a count is specified,
as then you get the wrong amount of data as well
as the wrong sized writes.
http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7362

cheers,
Pádraig.