tape (sa0) on sparc64 ?
Zaphod Beeblebrox
zbeeble at gmail.com
Thu May 16 20:51:35 UTC 2013
I have to retrieve some very old backups. They were made on FreeBSD and
are on tape... specifically DDS4. I have a DDS4 drive and I ordered cables
that hook it up to my sparc64. For fun and giggles I have both the
motherboard controller...
sym0: <1010-66> port 0x900-0x9ff mem 0x100000-0x1003ff,0x102000-0x103fff at
device 2.0 on pci2
sym0: No NVRAM, ID 7, Fast-80, LVD, parity checking
sym1: <1010-66> port 0xa00-0xaff mem 0x104000-0x1043ff,0x106000-0x107fff at
device 2.1 on pci2
sym1: No NVRAM, ID 7, Fast-80, LVD, parity checking
and an adaptec controller
ahc0: <Adaptec 3960D Ultra160 SCSI adapter> port 0x300-0x3ff mem
0x100000-0x100fff at device 1.0 on pci3
aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
ahc1: <Adaptec 3960D Ultra160 SCSI adapter> port 0x400-0x4ff mem
0x102000-0x102fff at device 1.1 on pci3
aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
in the box.
The tape drive is terminated with an external terminator (which seems
proper since I found it in my collection with that terminator still
attached). I have tried the tape connected to both the internal and
adaptec controllers. Right now it shows up as:
sa0 at sym1 bus 0 scbus3 target 2 lun 0
sa0: <HP C5683A C908> Removable Sequential Access SCSI-2 device
sa0: 40.000MB/s transfers (20.000MHz, offset 31, 16bit)
[1:24:324]root at run:/home/foo> mt stat
Mode Density Blocksize bpi Compression
Current: 0x26:DDS-4 variable 97000 DCLZ
---------available modes---------
0: 0x26:DDS-4 variable 97000 DCLZ
1: 0x26:DDS-4 variable 97000 DCLZ
2: 0x26:DDS-4 variable 97000 DCLZ
3: 0x26:DDS-4 variable 97000 DCLZ
---------------------------------
Current Driver State: at rest.
---------------------------------
File Number: 0 Record Number: 0 Residual Count 0
However, attached to either controller (after a reboot of the machine and a
powercycle of the drive), I get:
[1:25:325]root at run:/home/foo> dd if=/dev/sa0 of=tape5
dd: /dev/sa0: Input/output error
0+0 records in
0+0 records out
0 bytes transferred in 0.002930 secs (0 bytes/sec)
... which is a return code of '1' and no messages on the console...
I have, before you ask, tried "bs=10k" and 20k ... but I believe this
command should run by itself fetching the first 512 bytes of each block ---
narrowing down the block size logically comes after making the tape go.
(in case it matters, the machine is
FreeBSD run.dclg.ca 9.1-STABLE FreeBSD 9.1-STABLE #1 r250082: Mon Apr 29
20:54:58 EDT 2013 root at run.dclg.ca:/usr/obj/usr/src/sys/GENERIC sparc64
More information about the freebsd-hackers
mailing list