Software Installation The following information provides instructions on adding standard K8-TAPE ( Exabyte 8505) 8MM compression tape drives to SGI systems. Applicable SGI Systems The Exabyte EXB-8200 and EXB-8500 are supported on the SGI INDIGO system in IRIX version 4.0.5 and on the CHALLENGE and INDY systems in IRIX version 5.1 and 5.2. The following will describe what is required to add a standard EXB-8505. It is understood that INDIGO will move to IRIX 5.2 by March, 1994. Althought this software installation is written specifically for IRIX 5.2, the same procedures, however, apply to IRIX 5.1 and prior with the exception of change in file path and name as indicated as follows: The Important Files Are: /usr/sysgen/master.d/tpsc in IRIX 4.0.5/5.1 (/var/sysgen/master.d/scsi in IRIX 5.1.1/5.2) contains data for the device drivers including the SCSI tape drivers that are of interest here. /dev/MAKEDEV - which is a script file that when executed, makes the device drivers (actually the 'device special files') according to information detected by the OS and the information found in the device files in "/usr/sysgen/master.d/tpsc" (or "/var/sysgen/master.d/scsi") file. /dev/rmt/tps...., /dev/mt/tps....- the device driver files that are created by MAKEDEV to provide access to the tape drive (there is no difference between the two sets of files - in IRIX 5.1 and later, /dev/mt is a link to ./dev/rmt ). The SGI IRIX operating system is similar to the Sun Solaris in that it defines the devices by SCSI controller and TID as follows: tpsld4nrnsv.8505(x) | | | || | |________ Either a 5 or a 0c indicates compression | | | || |__________ Drive emulation | | | ||_____________ Variable blocking enabled | | | |______________ No byte swapping | | |________________ No rewind on close | |__________________ SCSI TID number |____________________ SCSI controller ID number as detected by OS It is recommended that variable length data mode be used since it will significantly increase the efficiency of data transfer. Configuration Procedure for SGI IRIX 5.2 1. Adding K8-TAPE (Exabyte8505 8mm) Tape Drives to /var/sysgen/master.d/scsi To modify the /var/sysgen/master.d/scsi file, perform the following steps: NOTE: The ' are not a part of the data entry. 1. Login as root (super user). 2. Enter 'cd /var/sysgen/master.d'. 3. Enter 'cp scsi scsi.orig' to create a back-up copy of the file 'scsi'. 4. Enter 'vi scsi' to edit the file 'scsi'. 5. Add the following new device entries AFTER the existing EXB-8500" string. 6. Save changes. ************************************************************** { EXABYTE8500, TP8MM_8500, 7, 8, "EXABYTE", "EXB-8505", 6, "\40\4\16\0\200\7", {0x8c, 0x15, 0x90, 0x14}, MTCAN_BSF|MTCAN_BSR|MTCAN_PREV|MTCAN_CHKRDY|MTCAN_VAR|MTCAN_SETSZ| MTCAN_SILI|MTCAN_CHTYPEANY|MTCAN_SETDEN|MTCAN_SPEOD|MTCAN_SYNC| MTCAN_SEEK, 80, 4*60, 25*60, 5*60, 1024, 128*1024}, ************************************************************** If the SGI system is connected to a Sun processor, 128K blocks exceed the Sun limits and should be reduced to 64K by changing the last line as follows: 80, 4*60, 25*60, 5*60, 1024, 64*1024}, Please note the "EXB-8505" device string is identical to that of the "EXB-8500" with the exception of "EXB-8505" device name and density stanza. The sequence of this stanza is significant for the EXB-8505 default settings as set forth below: 0x8c = 8500 compatible recording mode with compression 0x15 = 8500 compatible recording mode without compression 0x90 = 8200 compatible recording mode with compression 0x14 = 8200 compatible recording mode without compression 2. Additions to /dev/MAKEDEV To modify the /dev/MAKEDEV file, perform the following steps: NOTE: The ' are not a part of the data entry. 1. Enter 'cd /dev'. 2. Enter 'cp MAKEDEV MAKEDEV.orig' to create back-up copy of the file 'MAKEDEV'. 3. Enter 'vi MAKEDEV' to edit the file 'MAKEDEV' to insert device entries. 4. Add the following string BEFORE the existing 'EXB-8500' entries. ******************************************************************** *Device*8505*) \ rm -f $${prf}nr ; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add`; \ mknod $${prf}$$1 c ${C_TPS} $$mdev; \ shift; \ done; \ for dens in 0 8 16 24; do \ case $$dens { \ 0) kden=8500c;; \ 8) kden=8500;; \ 16) kden=8200c;; \ 24) kden=8200;; \ }; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add + $$dens`;\ mknod $${prf}$$1.$$kden c ${C_TPS} $$mdev;\ shift;\ done; \ done ;;\ ******************************************************************** 5. Save changes and configure the Kernel by executing '/etc/autoconfig' command at the prompt. 6. Perform system shutdown and cold boot the system to login as root. 7. Enter 'cd /dev'. 8. Enter 'MAKEDEV tps' to execute the 'MAKEDEV' script with 'tps' as the command line argument to create the new devices in the '/dev/mt' directory. It should end up with an "ls" of the '/dev/mt" looking something similar to the following: tps0d6nrs.8500 tps0d6s.8500 tps0d6nrv.8500c tps0d6nrnsv.8500c tps0d6v.8500c tps0d6nsv.8500c tps0d6nrsv.8500c tps0d6sv.8500c tps0d6nr.8500c tps0d6nrns.8500ctps0d6.8500c tps0d6ns.8500c tps0d6nrs.8500c tps0d6s.8500c tps0d6nrv tps0d6nrnsv tps0d6v tps0d6nsv tps0d6nrsv tps0d6sv tps0d6nr tps0d6nrns tps0d6 tps0d6ns tps0d6nrs tps0d6s tps0d6stat tps0d6nrs.8200 tps0d6s.8200 tps0d6nrv.8200c tps0d6nrnsv.8200c tps0d6v.8200c tps0d6nsv.8200c tps0d6nrsv.8200c tps0d6sv.8200c tps0d6nr.8200c tps0d6nrns.8200c tps0d6.8200c tps0d6ns.8200c tps0d6nrs.8200c tps0d6s.8200c tps0d6nrv.8500 tps0d6nrnsv.8500 tps0d6v.8500 tps0d6nsv.8500 tps0d6nrsv.8500 tps0d6sv.8500 tps0d6nr.8500 tps0d 6nrns.8500 tps0d6.8500 tps0d6ns.8500 tps0d6nrv.8200 tps0d6nrnsv.8200 tps0d6v.8200 tps0d6nsv.8200 tps0d6nrsv.8200 tps0d6sv.8200 tps0d6nr.8200 tps0d6nrns.8200 tps0d6.8200 tps0d6ns.8200 9. The tape drive can now be accessed using the device files under'/dev/mt' directory. 3. Create a Symbolic Link to /dev/tape Assuming that the user will consistently use one device and one driver, a symbolic link to it should be made from /dev/tape as follows: NOTE: The ' are not a part of the data entry. Enter 'mv /dev/tape /dev/tape.orig' to rename the existing file '/dev/tape' to '/dev/tape.orig'. Enter 'ln -s /dev/rmt/tpsydznsv.xxxxx /dev/tape'. Where y = system SCSI controller number, z = SCSI device number, xxxxx = device name ( i.e., 8505 ) With this accomplished, any access to the tape will be by the appropriate driver. Please note that "tpsxdx.8500c" references to EXB-8500 recording mode with compression which is the EXB-8505 default setting. Test drivers with bru, tar dump, etc. and verify that the drivers are working correctly. Important Notes: The easiest way to make a backup tape readable in a miniroot is by making a full backup of the operating system with the unmodified kernel using " Backup & Restore" utility BEFORE executing "/etc/autoconfig" the kernel. In the event of a system disk crash, this backup tape can then be restored from a miniroot with the PROM "System Recovery" menu. Then boot the system from the restored operating system and reconfigure the kernel with the modified scripts. Alternatively, reload the operating system from CD-ROM, change and reconfigure the kernel with the editor, /etc/autoconfig, reboot, and re-generate the appropriate density drivers to read K8-TAPE backup tapes. The following example indicates what the /var/sysgen/master.d/scsi and /dev/MAKEDEV files may look like with the modifications described above: { EXABYTE8200, TP8MM_8200, 7, 8, "EXABYTE", "EXB-8200", 1, "\16", {0, 0, 0, 0}, MTCAN_BSF|MTCAN_BSR|MTCAN_PREV|MTCAN_CHKRDY|MTCAN_VAR|MTCAN_SETSZ| MTCAN_SILI|MTCAN_CHTYPEANY, 80, 4*60, 25*60, 5*60, 1024, 128*1024}, /* There are now 3 densities, 8505/8500c mode, 8500 and 8200 mode. * If someone makes bogus dev numbers using all 4 density bits, * it will default back to 8505 mode. The inventory string sets * the drive up exactly like the 8500. */ { EXABYTE8500, TP8MM_8500, 7, 8, "EXABYTE", "EXB-8500", 6, "\40\4\16\0\200\7", {0x0, 0x14, 0x0, 0x0}, MTCAN_BSF|MTCAN_BSR|MTCAN_PREV|MTCAN_CHKRDY|MTCAN_VAR|MTCAN_SETSZ| MTCAN_SILI|MTCAN_CHTYPEANY|MTCAN_SETDEN|MTCAN_SPEOD|MTCAN_SYNC| MTCAN_SEEK, 80, 4*60, 25*60, 5*60, 1024, 128*1024}, { EXABYTE8500, TP8MM_8500, 7, 8, "EXABYTE", "EXB-8505", 6, "\40\4\16\0\200\7", {0x8c, 0x15, 0x90, 0x14}, MTCAN_BSF|MTCAN_BSR|MTCAN_PREV|MTCAN_CHKRDY|MTCAN_VAR|MTCAN_SETSZ| MTCAN_SILI|MTCAN_CHTYPEANY|MTCAN_SETDEN|MTCAN_SPEOD|MTCAN_SYNC| MTCAN_SEEK, 80, 4*60, 25*60, 5*60, 1024, 128*1024}, The /dev/MAKEDEV file: *Device*8505*) \ rm -f $${prf}nr ; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add`; \ mknod $${prf}$$1 c ${C_TPS} $$mdev; \ shift; \ done; \ for dens in 0 8 16 24; do \ case $$dens { \ 0) kden=8500c;; \ 8) kden=8500;; \ 16) kden=8200c;; \ 24) kden=8200;; \ }; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add + $$dens`;\ mknod $${prf}$$1.$$kden c ${C_TPS} $$mdev;\ shift;\ done; \ done ;;\ *Drive?type:*8mm?8500*) \ rm -f $${prf}nr ; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add`; \ mknod $${prf}$$1 c ${C_TPS} $$mdev; \ shift; \ done; \ for dens in 0 8 ; do \ case $$dens { \ 0) kden=8500;; \ 8) kden=8200;; \ }; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add + $$dens`;\ mknod $${prf}$$1.$$kden c ${C_TPS} $$mdev;\ shift;\ done; \ done ;; \ *Drive?type:*DAT*|*Drive?type:*8mm?8200*) \ rm -f $${prf}nr ; \ set s nrs ns "" nrns nr sv nrsv nsv v nrnsv nrv ; \ for add in 0 1 2 2 3 3 4 5 6 6 7 7 ; do \ mdev=`expr $$minor + $$add`; \ mknod $${prf}$$1 c ${C_TPS} $$mdev; \ shift; \ done ;; \