tcopy tape to tape WAY too slow

Jesse Guardiani jesse at wingnet.net
Tue Mar 30 15:31:13 PST 2004


On Tuesday 30 March 2004 15:27, Dan Nelson wrote:
> In the last episode (Mar 30), Jesse Guardiani said:
> > On Tuesday 30 March 2004 10:39, you wrote:
> > > If you have multiple files or unknown blocksizes, the cptp command
> > > from the MAG package at http://www.cs.vu.nl/~dick/mag.html will
> > > preserve filemark and blocksize info through pipes, so you could do
> > > a cptp | cptp pipe.
> >
> > That looks promising. Do you have special build instructions for this
> > package under FreeBSD 4.x?
> >
> > I'm getting the following error on 'gmake' or 'make':
> >
> > gcc -ansi -DUNIX -O -s -c tperr.c
> > tperr.c:18: initializer element is not constant
> > *** Error code 1
>
> Bug in the program (stderr cannot be used to initialize static
> variables).  Replace line 18 with
>
> #define tperr stderr
>
> and it'll build.  It looks like you may also want to edit tploc.h, line
> 49, and replace those two "8"'s with "%d"'s.  Then something like
> "cptp -m 0 of=- | cptp -m 1 if=-" should copy from rmt0 to rmt1 with a
> little bit of pipe buffering inbetween.  Adding "team" or "buffer"
> (both in ports/misc) inbetween will add even more buffering.

Having lotsa trouble getting this working. I'm using this command line:

cptp -hm 1 of=- | cptp -hm 0 if=-

(tried it without the -h too)

And getting this output:

After 0 tape marks, after 0 blocks: tape image format error on standard input

And this error in /var/log/messages:

Mar 30 18:23:24 billmax /kernel: (sa1:ahc0:0:2:0): 64512-byte tape record bigger than supplied buffer
Mar 30 18:23:24 billmax /kernel: (sa1:ahc0:0:2:0): tape is now frozen- use an OFFLINE, REWIND or MTEOM command to clear this state.

Any ideas?

-- 
Jesse Guardiani, Systems Administrator
WingNET Internet Services,
P.O. Box 2605 // Cleveland, TN 37320-2605
423-559-LINK (v)  423-559-5145 (f)
http://www.wingnet.net




More information about the freebsd-questions mailing list