The SCSI tape driver returns an i/o error if the block length is not an exact multiple of 512 bytes. This causes problems when attempting to do a tar dump with the z option, or a remote dump over the network (since a network read will return only as many bytes as are currently available). Example: [hughett@chaplin hughett]$ dd if=/dev/zero of=/dev/nst0 \ bs=511 count=1 dd: /dev/nst0: Input/output error 1+0 records in 0+0 records out [hughett@chaplin hughett]$ dd if=/dev/zero of=/dev/nst0 \ bs=512 count=1 1+0 records in 1+0 records out A workaround for this problem is to write a filter that read bytes until it gets a full block of 512 before writing them out and that adds enough zero bytes at EOF to make up a complete block. Paul Hughett
assigned to dledford
Does this still happen in 2.4? Please reopen if so.