On 10/11/10 10:22, Lucia Rotger wrote: > I see this behavior in Solaris, Linux and BSD dd: if I send a big enough > file they all read it short at the end of the stream. > > This works as expected: > > # cat /dev/zero | dd bs=512 count=293601280 | wc > > I get the expected results, dd reads exactly 293601280 blocks and wc > sees 150323855360 characters, 140 GB > > Whereas substituting cat for zfs send doesn't: > > # zfs send <backup> | dd bs=512 count=293601280 | wc
different write sizes to the pipe mean in the later case, dd will get short reads. IMHO dd is doing the wrong/most surprising thing here, but it can't be changed for compatibility reasons. You can get coreutils dd to do what you want with: dd iflag=fullblock cheers, Pádraig.
