I apologize. I haven't use Solaris and I haven't tar
red onto a tape drive. I have piped between two Linux boxes using something like
1) tar cvf - /tarred_up_director | ssh -l root Linux_Server 'cd /tmp ; tar xf -'
TMK, the linux tar
command when used with the -c
option can accept only real
files and directories as sources. If you try something like
tar -cf <file or device> -
it will interpret the dash as a filename rather than using stdin
. (I have tried this with a filename; I don't have a tape drive to try it with.)
Please correct me if I am wrong, but in your sequence
1) On Solaris box; tar cvf tarball.tar /tarred_up_directory
2) SCP the tarball.tar file to the Linux box
3) tar cvf /dev/st1 tarball.tar
wouldn't you be creating a tarball of a tarball? I.e. an archive consisting of one file which itself was an archive? If you were to try that through piping, even if you could convince tar
to accept it, it would not know what to call the file it archived. Again, I have tried this when creating a file, but not with tape.
I don't know if this will work (or even if it will create a disaster), but the only thing I can think of is using dd
to write the already created archive to tape:
tar -cvf - /usr | ssh -l root lnx_srv "dd of=/dev/st1"
Other than that I don't know what to suggest. I am sorry I don't have any better suggestions and I apologize for not having digested your original post better.
EDIT: corrected format of dd