By Kelvin Lee
Note : I’ve only tested this on SME 5.1.2. It might work on older versions but
I can’t be sure.
OnStream’s web site recommends the use of ide-scsi + osst to drive the DI-30. This approach does not require a
kernel patch or a kernel recompile (which is required if you decide to use the ide-tape kernel patch instead). It was by accident that I
discovered that SME 5.1.2 ships with both ide-scsi.o
as well as osst.o because officially, SME does not
support the OnStream DI-30. However, my tests indicates that the osst.o
modules that ships with SME does not seem to work properly. However, the latest
version of osst available that is supported under
kernel 2.2.19 used by SME works and have been included with this How-To.
Additionally,
I’ve not been able to successfully use the DI-30 with flexbackup
(I did not spend too much time on this, so it might be possible) but have had
no problems so far with taper once taper has been correctly configured.
1. Install the
Follow the recommended instructions on installing the
DI-30 into your SME Server
2. Download and install the updated osst.o
module
Once you downloaded the new osst.o
module, you may replace the one that shipped with SME which can be found in :
/lib/modules/2.2.19-7.0.8/scsi
3. Modify rc.sysinit to automatically
load ide-scsi and osst
(thanks to Ari for
his help on this)
a) make a backup of your rc.sysinit file
# cp /etc/rc.d/rc.sysint
/etc/rc.d/rc.sysinit.bak
b) edit the rc.sysinit file
# pico
-w /etc/rc.d/rc.sysinit
c) search for the section that reads "# Initialize the
serial ports." (it's near the end)
d) Add the following section:
# install the ide-scsi module
insmod ide-scsi
insmod osst
Then reboot and allow the ide-scsi
and osst modules to load.
4. Run the Makedevs.sh script to
create the osst device nodes
The Makedevs.sh script is
listed here
#!/bin/sh
# Script to create OnStream SC-x0 device nodes (major 206)
# Usage: Makedevs.sh [nos [path to dev]]
major=206
nrs=4
dir=/dev
test -z "$1" || nrs=$1
test -z "$2" || dir=$2
declare -i nr
nr=0
test -d $dir || mkdir -p $dir
while test $nr -lt $nrs; do
mknod $dir/osst$nr c $major $nr
chown 0.disk $dir/osst$nr; chmod 660 $dir/osst$nr;
mknod $dir/nosst$nr c $major $[nr+128]
chown 0.disk $dir/nosst$nr; chmod 660 $dir/nosst$nr;
mknod $dir/osst${nr}l c $major $[nr+32]
chown 0.disk $dir/osst${nr}l; chmod 660 $dir/osst${nr}l;
mknod $dir/nosst${nr}l c $major $[nr+160]
chown 0.disk $dir/nosst${nr}l; chmod 660 $dir/nosst${nr}l;
mknod $dir/osst${nr}m c $major $[nr+64]
chown 0.disk $dir/osst${nr}m; chmod 660 $dir/osst${nr}m;
mknod $dir/nosst${nr}m c $major $[nr+192]
chown 0.disk $dir/nosst${nr}m; chmod 660 $dir/nosst${nr}m;
mknod $dir/osst${nr}a c $major $[nr+96]
chown 0.disk $dir/osst${nr}a; chmod 660 $dir/osst${nr}a;
mknod $dir/nosst${nr}a c $major $[nr+224]
chown 0.disk $dir/nosst${nr}a; chmod 660 $dir/nosst${nr}a;
let nr+=1
done
5. Create symbolic links to point to /dev/osst0 and /dev/nosst0
Because the backup scripts in SME references the
devices /dev/st0 and /dev/nst0, we need to point those devices to /dev/osst0
and /dev/nosst0 respectively.
a) backup current /dev/st0
and /dev/nst0
cd /dev
mv /dev/st0 /dev/st0.old
mv /dev/nst0 /dev/nst0.old
b) create symbolic links to osst
ln –s /dev/osst0 /dev/st0
ln –s /dev/nosst0 /dev/nst0
6. Configure taper as your backup program
I followed Darrel May’s excellent How-To on using
taper as the backup program. You will need to configure taper a little further
through its Change Preferences screen and set the following :-
Under Tape Drive Preferences
Have fast fsf : NO
Can seek : NO
Can fsr : NO
Set block size : NO
Block size : 032K
Need to erase tapes : YES
Use eom : NO
Illegal end of tape : NO
Under Unattended Preferences
Overwrite unrecognised tapes :
YES
7. Configure SME for nightly tape backups
The last step is to use SME’s
server manager panel to enable tape backups.
That should be it. The
OnStream DI-30 should now be working. Just remember
that with taper, restores will need to be done interactively via it’s console interface. Good luck !
Just remember to test restores from time to time to make sure the backup is
working as expected.