Howdy!

I have another little problem with my linux-alpha I would like to solve.
This time it's about DAT unit.

I have some archive tapes, written under DigitalUNIX v3.2 using GNU tar.

Problem in short: I could not read those tapes using the same hardware. Is
it possible to do it somehow?


Long desription of the problem (I'm sorry about that; I just wanted to
give you, guys and girls, as much detail as possible):

When I try to access the tape (eg. tar -ztvf /dev/nst0), it says:

////////
tar (grandchild): Read error on /dev/tape: Input/output error
tar (grandchild): At beginning of tape, quitting now
tar (grandchild): Error is not recoverable: exiting now

gzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error exit delayed from previous errors
////////

and in syslog, it says

////////
st0: Incorrect block size.
////////

If I check the tape information using mt -f /dev/nst0 status, it says

////////
SCSI 2 tape drive:
File number=-1, block number=-1, partition=0.
Tape block size 512 bytes. Density code 0x24 (DDS-2).
Soft error count since last status=0
General status bits on (5010000):
 WR_PROT ONLINE IM_REP_EN
////////

The same command issued under DigitalUNIX (with same tape in DAT unit)
returns following:

////////
DEVIOGET ELEMENT        CONTENTS
----------------        --------
category                DEV_TAPE
bus                     DEV_SCSI
interface               SCSI
device                  TZxx
adpt_num                0
nexus_num               0
bus_num                 0
ctlr_num                0
slave_num               24
dev_name                tz
unit_num                24
soft_count              0
hard_count              0
stat                    9
                        DEV_BOM DEV_WRTLCK 
category_stat           20000
                        DEV_61000_BPI

MTIOCGET ELEMENT        CONTENTS
----------------        --------
mt_type                 MT_ISSCSI
mt_dsreg                0
mt_erreg                0
mt_resid                0
////////

While comparing the outputs, I notice the density setting. Apparently DU
thinks that DAT is DDS-1 (density 61000bpi). If I try to set the same
density under linux, the command (mt -f /dev/nst0 setdensity 0x13)
succeeds (no error message), but if I query the status immediately after
that, it still shows density setting of 0x24 (DDS-2).

The next thing which occurs to me is that the block size under DU might 
not be 512 bytes. I could not find information on what it really is.
Anybody knows?

Peace!
  Mkx

---- perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);'

Reply via email to