This is actually OS-level help, but I struggled with it when setting up bacula so I thought I'd share my experiences with it. Trying to find the answer really tested my Google-fu.
This is not a stone-path how-to, but some pointers in the right direction. It has worked with two different tape libraries installed on two different Solaris hosts. Specifically an old Qualstar TLS4210 and a shiny new (at the time) Quantum SL-3.
First off, ensure that you have the proper patch-levels to support the tape harware. The hardware is connected properly, then Solaris will usually “just find” the tape device automagically.
Edit the file : /kernel/drv/sgen.conf
This file should contain at the beginning the following device-type-config-list=“changer”,“sequential”
This will force the driver to attach only to the devices with type either changer (the robot) and sequential (the tape). Next you must tell the driver on which id it should check for devices (tape on id 5, robot on id 6 in this example),
name=“sgen” class=“scsi” target=5 lun=0; name=“sgen” class=“scsi” target=6 lun=0;
This will create the 2 device files /dev/scsi/sequential/c0t5d0 (scsitapedev option in chg-scsi.conf) /dev/scsi/changer/c0t6d0 (changer option in chg-scsi.conf)
So the complete sgen.conf looks like:
device-type-config-list=“changer”,“sequential name=“sgen” class=“scsi” target=5 lun=0; name=“sgen” class=“scsi” target=6 lun=0;
For HP you have to create the special device files for the pass throu interface. Check if the ctl driver is installed. Example:
# lsdev -C ctl
Character Block Driver Class
203 -1 sctl ctl
Next check on which bus your drives are connected. (ioscan) with the Character device num form the lsdev and the card instance from ioscan create the special file. Example:
mknod /dev/scsi/1 c 203 0x001000
||| LUN of device
||SCSI ID of the device
2 digit instance number from ioscan
I found this information in the Amanda documentation, http://www.amanda.org/docs/tapechangers.html to be specific.