Amanda-Users

Re: DAT DDS4 size or avoiding hardware compression on Linux/Debian

2002-11-25 23:06:23
Subject: Re: DAT DDS4 size or avoiding hardware compression on Linux/Debian
From: Gene Heskett <gene_heskett AT iolinc DOT net>
To: Ronan KERYELL <Ronan.Keryell AT enst-bretagne DOT fr>, amanda-users AT amanda DOT org
Date: Mon, 25 Nov 2002 22:39:17 -0500
On Monday 25 November 2002 11:56, Ronan KERYELL wrote:
>I'm in trouble with a HP SureStore DAT40 (DDS-4) since I cannot
> write compressed partition past 16GB instead of achieving the
> theoretical 20GB.
>
>I guess it is because the drive is in hardware compression mode,
> but I do not know how to explain it to the drive... :-)
>
>I've read the man st and is does not look as clear as on
> Solaris...
>
>gaudi:~# ls -al /dev/nst0*
>crw-rw----    1 root     tape       9, 128 Mar 14  2002 /dev/nst0
>crw-rw----    1 root     tape       9, 224 Mar 14  2002 /dev/nst0a
>crw-rw----    1 root     tape       9, 160 Mar 14  2002 /dev/nst0l
>crw-rw----    1 root     tape       9, 192 Mar 14  2002 /dev/nst0m
>
>I've tried each /dev/nst0* without success :
>
>gaudi:~# tapetype -f /dev/nst0
>wrote 524508 32Kb blocks in 1604 files in 9324 seconds (short
> write) wrote 505626 32Kb blocks in 3102 files in 11965 seconds
> (short write) define tapetype unknown-tapetype {
>    comment "just produced by tapetype program"
>    length 17021 mbytes
>    filemark 403 kbytes
>    speed 1576 kps
>}
>gaudi:~# tapetype -f /dev/nst0a
>tapetype: could not rewind /dev/nst0a: No such device or address
>gaudi:~# tapetype -f /dev/nst0l
>tapetype: could not rewind /dev/nst0l: No such device or address
>gaudi:~# tapetype -f /dev/nst0m
>tapetype: could not rewind /dev/nst0m: No such device or address
>
>Hmmm... Strange...
>
>Any help in the audience ? :-)
>Thank you,

In addition to the reply message posted by Bernhard Beck, you should 
be aware that in earlier DAT drives, the MRS occasionally mentioned 
in the propaganda, records to the tape in a hidden header block, 
the status of the compression setting when the tape was last 
written.

What this means is that you will have to use a means external to 
amanda to turn off the compression (this in addition to disabling 
it via the dip-switches the links in the message from Bernhard, to 
the docs on howto do that).  If this isn't done, then when amanda 
re-reads the tape id block, the compression will be turned back on.

So in addition to turning it off via the dip-switch setting, each 
tape previously written to in the compressed mode will require that 
you run a little script you can probably write yourself, and which 
does approximately this, paying attention to the /dev/tapedevice 
used:
1 read out the tape label using dd.
        dd if=/dev/st0 of=scratch count=1
2 issue all mt legal combinations of turning the compression off, 
see man mt.
        mt -f /dev/nst0 defcompression off
        mt -f /dev/nst0 datcompression off
        mt -f /dev/nst0 compression off
there may be more, or less in your version of mt.

3 using dd, write enough raw data from /dev/zero to the tape to 
cause the drive to do a buffer flush, thereby re-writing that 
hidden header with the non compression state in effect.
        dd if=/dev/zero of=/dev/st0 bs=32k count=65535
4 restore the tapes name header
        dd if=scratch of=/dev/st0 count=1
5 by now, if the drive has a compression status LED, often labeled 
"DC", it should be off.
6 verify the header can be read
        dd if=/dev/st0 count=1
which should print the header to the screen.

7 advance the magazine to the next tape needing this treatment if 
there is more.
8 repeat 1-7 until out of tapes that need it.

9 re-run the tapetype program to get your new value for the tapes 
actual capacity, it should be closer to 20gb than before.

-- 
Cheers, Gene
AMD K6-III@500mhz 320M
Athlon1600XP@1400mhz  512M
99.19% setiathome rank, not too shabby for a WV hillbilly

<Prev in Thread] Current Thread [Next in Thread>