APLawrence.com -  Resources for Unix and Linux Systems, Bloggers and the self-employed

Reading SCO tapes on Linux

By Rob Fantini

This is the problem & a solution from the time I had to read some old SCO tapes on a Linux 2.4 system. I also ran into the same problem with tapes created on a 2.2 kernel linux. This might be useful for someone someday.

The old tapes were written with an HP dds drive, which used variable blocking. I curently use an IBM dds-4 dat [ it is made by Seagate I assume, as /proc/scsi/scsi lists it as SEAGATE 06240-xyz ], which used fixed blocks.

There is a change in 2.4 versions of linux I'm using [mandrake and redhat] which make reading the old tapes impossible [for me].

When I try:

  • 1- use tape made with the HP in the Ibm dds-4 drive.
  • 2- mt -f /dev/st0 setblk 0
  • 3- tar xvf /dev/st0

I get this error:

tar: /dev/st0: Cannot read: Cannot allocate memory   
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now

If I adjust the software block size in tar, I get the same error.

I get a similiar error if I try 'dd' . /tar/tvf /dev/st0 [without any block size manipulation] gets the error.

To get the files off of the tape, I used 'toms root boot' disk [ http://www.toms.net/rb/ ] to boot the computer. It uses a 2.2 kernel I think, and a different tar program or tape driver. I'm not sure why it worked but it did.

  • 1- use tape made with the HP in the IBM dds-4 drive.
  • 2- mt -f /dev/st0 setblk 0
  • 3- tar -xf -b 64 -f /dev/st0


I can set the block size of the tape drive to 0 and use tar if the tape was originally made using my current ibm dds drive. I won't get the 'Cannot allocate memory' error.

Editor's note: see http://meteora.ucsd.edu/~pierce/linux_tape.html and

//aplawrence.com/Unixart/tapes.html#compat also.

Got something to add? Send me email.

(OLDER)    <- More Stuff -> (NEWER)    (NEWEST)   

Printer Friendly Version

-> -> Reading SCO tapes on Linux


Increase ad revenue 50-250% with Ezoic

More Articles by © Rob Fantini

---September 28, 2004
THANKS MUCH! It works exactly as you described. Ive been working on getting the data from these old SCO tapes for nearly a week straight.

---January 19, 2005
I haven't tried the method above yet, but I just may to see if it is any faster than what I am currently doing. My tapes were created under SCO OpenServer 5.0.7 with an HP DAT24 drive. The following works on SuSE 9.2 kernel 2.6.8-24.10: Add '--blocking-factor=128' to your 'tar' command string, ie: tar -t --blocking-factor=128 -v -f /dev/st0

Wed Mar 23 00:17:47 2005: 225   anonymous

--blocking-factor=128 worked for me on some backups that were made with lone-tar! thanks much!

Kerio Samepage

Have you tried Searching this site?

Support Rates

This is a Unix/Linux resource website. It contains technical articles about Unix, Linux and general computing related subjects, opinion, news, help files, how-to's, tutorials and more.

Contact us

Just because they've sold you an IP based phone system doesn't mean they know anything about IP, does it? (Tony Lawrence)

This post tagged: