• Introduction to NetWare tape support 
NetWare tape support for OS/400 provides the ability to use either SBACKUP or ARCserve utilities in conjunction with an Integrated PC Server running NetWare and the AS400TP.HAM driver with an AS/400 tape device specified as the target of the save or restore operation. 

The AS400TP.HAM driver can only be loaded on 4.1x Integrated PC Servers. You can however use the NetWare tape support to backup remote 3.12 servers from an Integrated PC Server that is running the AS400TP.HAM driver. 

This function is provided for OS/400 Integration for NetWare users running V3R7 with a production date of 28 Feb 97 or later, or cumulative PTF package C7029370 or later, and PTF SF38570 for product 5716SA200. 

The AS/400 tape device must be varied off in order to be a used by NetWare. 

You should use brand new tapes if possible. If you need to reuse AS/400 tapes then initialized them as non-labeled with the AS/400 INZTAP command. For example: 

  INZTAP TAPnn CHECK(*NO) DENSITY(*CTGTYPE) CLEAR(*YES) 

Refer to the FAQ - Using OS/400 Integration Products for NetWare for more information about NetWare tape support. 



 
  • Using Novell's SBACKUP 
  • Install the latest version of SBACKUP fixes available from Novell.

  • As of 11 February 97, the latest SBACKUP patch is SBACK6.EXE
  • To allocate an AS/400 tape device and start SBACKUP, issue the following commands from the NetWare console using RCONSOLE. Ensure that the AS/400 tape device is varied off before proceeding with these steps: 
     
    load as400tp.ham load AS/400 Host Adapter Module (NetWare driver which communicates with AS/400 Virtual Tape server component) 
    as400tp list display a list of AS/400 tape devices 
    as400tp allocate n n is the device number of the AS/400 tape device to use 
    scan for new devices or
    list devices
    make NetWare aware of the AS/400 tape device 
    load tsa410 load the NetWare Target Service Agent NLM 
    load sbackup load the NetWare SBACKUP utility NLM 



 
 
  • Using ARCserve 
    • Setup the ARCserve environment 
    • Install ARCserve 6 for NetWare on your Integrated PC Server. Be sure you update ARCserve by installing the latest Service Pak for ARCserve 6
        •  
      Beginning with the ARCserve 6.1 update it is no longer necessary to obtain the TAPELIST.DAT file which had been required with earlier versions. 
      • Put ARCSERVE.6\NLM\ in the search path by adding the following line to the AUTOEXEC.NCF file 
      search add sys:\arcserve.6\nlm 
      
      
      • Increase the cache buffers by adding the following line to the AUTOEXEC.NCF file 
      set minimum directory cache buffers=500 
      
      
      • Set the reserved buffers by adding the following line to the STARTUP.NCF file 
      set reserved buffers below 16 meg=200  
      
      
      • Vary off and then vary on your Integrated PC Server to make these changes take affect. 

      •  
      • To allocate an AS/400 tape device and start ARCserve, issue the following commands from the NetWare console using RCONSOLE. Ensure that the AS/400 tape device is varied off before proceeding with these steps: 

      • DO NOT run ASTART6.NCF as the ARCserve documentation suggests. You can create your own .NCF file to load the required ARCserve NLMs. You could run that .NCF file after you allocate the appropriate AS/400 tape device and allow NetWare to detect it.
         
        load as400tp.ham load AS/400 Host Adapter Module (NetWare driver which communicates with AS/400 Virtual Tape server component) 
        as400tp list display a list of AS/400 tape devices 
        as400tp allocate n n is the device number of the AS/400 tape device to use 
        scan for new devices or
        list devices
        make NetWare aware of the AS/400 tape device 
        load nwaspi load NWASPI.CDM (used with ARCserve) 
        load csdbapib load for use with ARCserve 6.1 fix pack 1 and later. 
        load asdb load ARCserve data base NLM. 
        load aspibd useabove16 load ARCserve ASPI board NLM (useabove16 keyword allows better performance) 
        load tapesvr useabove16 load ARCserve tape server NLM (useabove16 keyword allows better performance) 
        load arcserve load ARCserve scheduler NLM 



     
    • Sample .NCF file to start ARCserve 
    load nwaspi 

    load csdbapib 

    load asdb 

    load aspibd useabove16 

    load tapesvr useabove16 

    load arcserve 



     
    • Problem Determination 
    If problems are encountered it may be necessary to collect additional information for analysis. The following AS/400 problem determination methods are available using Start System Service Tools (STRSST): 
    • Product Activity Log (aka Error Log) 

    • Dump each log entry for the time in question. 

    • Flight Recorder 

    • There are two flight recorders which are of use in debugging. 

      The AS/400 Tape Hardware Driver flight recorder captures the tape drive interaction and the Virtual Tape Server flight recorder captures the interaction between the Integrated PC Server and Tape Hardware Driver. 

      Each flight recorder can be obtained using System Service Tools (STRSST). However, the data must be collected before the associated NWSD is varied off

      Contact your IBM service representative for information on dumping the flight recorders. 

    • Licensed Internal Code Log 

    • Dump each log entry for the time in question. The following LOG entries are new for NetWare tape support for OS/400
       
      Major Code Minor Code Meaning
      2700  0000  Exception in router. 
      2700  0010  IPCF connection failed to open to IOP entity. 
      2700  0100  Too many tape devices detected on AS/400. 
      2700  0101  Invalid tape device state. 

  • Licensed Internal Code Trace 

  • You can also collect information by starting a Source/Sink object trace on the NWSD. The following tracepoints are defined.
     
    Source/Sink Tracepoints for NetWare tape support
    Tracepoint 
    Name 
    Data 
    22420  X6T_SendSmallReadRequest  TaskName, SmallReadRequest 
    22421  X6T_ReceiveSmallReadRequest  TaskName, SmallReadResponseData, IPCFReturnCode, IPCFServerCompletionStatus 
    22422  X6T_SendLargeReadRequest  TaskName, LargeReadRequest, LargeReadResponseData 
    22423  X6T_ReceiveLargeReadRequest  TaskName, IPCFReturnCode, IPCFServerCompletionStatus 
    22424  X6T_SendWriteRequest  TaskName, WriteRequest 
    22425  X6T_ReceiveWriteResponse  TaskName, WriteResponseData, IPCFReturnCode, IPCFServerCompletionStatus 
    22426  X6T_SendTapeHWDRequest  "ACTIVATE", TapeActivateResponse, ClientId 
    "READ", BufferPageList, Length, TapeResponseObject 
    "ERASE", TapeResponseObject 
    "READPOS", TapeResponseObject 
    "SETPOS", TapeResponseObject 
    "UNLOAD", TapeResponseObject 
    "REWIND", TapeResponseObject 
    "SPACE BLKS FWD", TapeResponseObject, NumberOfOps 
    "SPACE BLKS BKW", TapeResponseObject, NumberOfOps 
    "SPACE TMS FWD", TapeResponseObject, NumberOfOps 
    "SPACE TMS BKW", TapeResponseObject, NumberOfOps 
    "SPACE EOD", TapeResponseObject 
    "CHECKTAPE", TapeResponseObject 
    "RESET", TapeResponseObject 
    "WRITETM", TapeResponseObject, NumberOfTapeMarks 
    "WRITEBUFFER", TapeResponseObject
    "CONTINUE", TapeResponseObject 
    "RESERVE", TapeResponseObject 
    "READYTAPE", TapeResponseObject, ReadTapeParmsObject, WriteTapeParmsObject 
    "RELEASE", TapeResponseObject 
    "DEACTIVATE", TapeResponseObject 
    "RESET", TapeDeActivateResponse 
    "RELEASE", TapeDeActivateResponse 
    "DEACTIVATE", TapeDeActivateResponse 
    "WRITE", BufferPageList, Length, TapeResponseObject, IDRCBit 
    22428  X6T_UnexpectedError  TaskName, spaceType, "10) DEVICE SWITCH ERROR" 
    TaskName, state, "10) DEVICE SWITCH ERROR" 
    TaskName, "1) SEND SMALL READ REQUEST ERROR" 
    TaskName, RequestType, "6) READ SWITCH ERROR" 
    TaskName, IPCFReturnCode, IPCFServerCompletionStatus, "3) RECEIVE SMALL READ REQUEST ERROR" 
    TaskName, IPCFReturnCode, IPCFServerCompletionStatus, "3) RECEIVE SMALL READ REQUEST ERROR" 
    TaskName, "4) SEND LARGE READ REQUEST ERROR" 
    TaskName, IPCFReturnCode, IPCFServerCompletionStatus, "5) RECEIVE LARGE READ REQUEST ERROR" 
    TaskName, IPCFReturnCode, IPCFServerCompletionStatus, "5) RECEIVE LARGE READ REQUEST ERROR" 
    TaskName, state, "6) READ SWITCH ERROR" 
    TaskName, state, "6) READ SWITCH ERROR" 
    TaskName, state, "6) READ SWITCH ERROR" 
    TaskName, "6) READ SWITCH ERROR" 
    TaskName, "6) READ SWITCH ERROR" 
    TaskName, writeID, "8) WRITE ID ERROR" 
    TaskName, "7) SEND WRITE REQUEST ERROR" 
    TaskName, RequestType, "9) WRITE SWITCH ERROR" 
    TaskName, IPCFReturnCode, IPCFServerCompletionStatus, "3) RECEIVE WRITE REQUEST ERROR" 
    TaskName, IPCFReturnCode, IPCFServerCompletionStatus, "3) RECEIVE WRITE REQUEST ERROR" 
    TaskName, WriteID, "8) WRITE ID ERROR" 
    TaskName, WriteID, "8) WRITE ID ERROR"