From: Eric J. <eje...@sw...> - 2008-05-22 15:43:20
|
Hi all, I'm using dump and restore (0.4b41) to do some dumps from a remote machine to a local tape drive (which is device /dev/nst0). All seems to run fine; I do the dump using: ssh remote_machine dump -0ua -b 64 -f - / | dd of=/dev/nst0 bs=64k starting from the machine that has the local tape drive at /dev/ nst0. Dump runs fine, no problem as far as I can see. When I went to double-check that the dump file on tape seemed OK, I tried to do this (again, locally on the machine where the tape drive resides) just to list the contents: restore -t -b 64 -f /dev/nst0 I get an error saying that the block size is wrong, and I should try "-b 64" instead! (Sorry I don't have the exact language here; I'm doing another dump right now and can't re-test it.) Of course, since I'm already using "-b 64", that message doesn't help much. (And removing the "-b 64" just generates the same error again, as it probably should.) But if instead I do this: dd if=/dev/nst0 bs=64k | restore -t -b 64 -f - everything works fine. That is, restore can read 64k blocks from standard input just fine, but doesn't seem to want to read them directly from the tape (or somehow the tape drive isn't delivering them correctly to restore when called directly). Note that a dump done from the local machine itself (i.e. for a local disk), without ever having 'dd' in the mix, works fine with 64k blocks. I can dump locally with -b 64 and then restore with -b 64 and I get no errors. Any thoughts about why restore can't read the dump from tape itself, and has to go through dd instead? Could the remote dump protocol via SSH be writing something different as the initial block somehow? (Note: I'm repositioning the tape to block 0 of the dumpfile between each of these commands, so that's not the problem.) Thanks in advance for any help. Eric |