Novell is now a part of Micro Focus

Upgrading an Enterprise Using the NetWare 5 Accelerated Upgrade

Articles and Tips: article

CURT KANAHELE
Software Engineering Manager
Novell Inc.

SCOTT VAN UITERT
Software Engineer
Novell, Inc.

01 Apr 1999


Wondering how to upgrade hundreds of NetWare servers over a weekend? Now it's possible with the Accelerated Upgrade utility available with NetWare 5.

Introduction

Many customers that have deployed NetWare 4.1x in large enterprise networks want to take advantage of the features and benefits of NetWare 5 as quickly as possible. However, there can be several impediments to a quick enterprise-wide server upgrade. Some organizations lack enough technically skilled people to accomplish such an upgrade. Others are running up against an impending Y2K blackout period. Fortunately, the time it takes to upgrade a multiple-server network has been significantly reduced with the NetWare 5 Accelerated Upgrade.

The NetWare 5 Accelerated Upgrade was developed last year when Novell's Information Systems and Technology (IS&T) department was faced with the challenge of rapidly upgrading its own NetWare 4.11 enterprise network to NetWare 5. IS&T not only wanted to upgrade multiple servers in a single evening, but they also wanted to upgrade servers from remote locations. This daunting task was made possible through the Accelerated Upgrade.

This AppNote discusses the following aspects of the NetWare 5 Accelerated Upgrade:

  • Benefits and limitations of an accelerated upgrade

  • How to prepare an enterprise network for the upgrade

  • How to use the accelerated upgrade

  • The process by which a NetWare 4.x server becomes a NetWare 5 server

  • The customization of the accelerated upgrade

To obtain the files necessary for the NetWare 5 Accelerated Upgrade, download ACCLUPGD.EXE from

http://www.novell.com/download/

Accelerated Upgrade Benefits and Limitations

This section describes the benefits and limitations of the Accelerated Upgrade.

Accelerated Upgrade Benefits

Four key benefits of the Accelerated Upgrade are:

  • Speed. A NetWare 4.1x server can be upgraded in 10 minutes (individual results may vary). Novell's IS&T department experienced an 87% reduction in server upgrade time with the tool.

  • Remote. It can be run on a server with a Remote Console session from a client.

  • Low Overhead. It does not require as much RAM or DOS partition space as the standard NetWare 5 install/upgrade system. This is valuable for customers who want to upgrade to NetWare 5, but do not yet have the budget to upgrade their server hardware (it has been known to upgrade a server with only 24MB RAM and a 20MB DOS partition).

  • Customizable. It can be modified to fit the needs of the enterprise customer.

Accelerated Upgrade Limitations

Of course, some trade-offs are necessary to achieve these benefits. The primary limitations of the Accelerated Upgrade are:

  • The first server in the network to be upgraded to NetWare 5 must be upgraded with the standard install/upgrade system. This is because the standard system performs schema extension operations for the entire network; these operations are not included in the Accelerated Upgrade.

  • Additional drivers cannot be loaded, nor can additional protocols (such as TCP/IP) be bound during the upgrade. These operations are available in the standard install/upgrade system, but not in the Accelerated Upgrade. However, after using the Accelerated Upgrade, drivers and protocols can be added to a server by using the NetWare 5 NWCONFIG and INETCFG server utilities.

  • Additional Products and Services (such as Novell Distributed Print Services) cannot be installed during an Accelerated Upgrade. This is because the installation of these Novell products and services were developed using the Java-based Novell Installation Services SDK (see the Software Developer Kit available from http://developer.novell.com).

Preparing the Enterprise Network for Upgrade

Whether you are using the Accelerated Upgrade or the standard install/ upgrade system, the NetWare 4.1x network must be running NDS version 5.99a or higher before introducing a NetWare 5 server into the NDS tree.

You may use the NDS599.IPS script found on the NetWare 5 CD in the \PRODUCTS\411_UPG\NDS directory to update all NetWare 4.11 servers in your tree (see the instructions in 411_UPG.TXT). However, since additional issues were addressed after NDS v5.99a, it is recommended that all NetWare 4.11 servers be upgraded to NDS v6.00 (see "Installing 5.0 servers into mixed 4.10/4.11," Technical Information Document #2943193 available from http://support.novell.com). DS v6.00 is found in NetWare Support Pack v6.0 (IWSP6.EXE, also at http://support.novell.com).

NetWare 4.10 servers should be updated with NDS v5.15 or higher; this is available in DS410n.EXE (where n is an incremental letter representing the revision of the file). In addition, the latest CLIB modules will need to be applied to a NetWare 4.10 server in order to load TAR.NLM during the Accelerated Upgrade. These are available in LIBUPn.EXE.

Prepare each server for Accelerated Upgrade as follows.

  1. Back up all data and verify your backup. Not only should you back up your data, but you should also back up your NDS database with the "Create a database dump file" option from the Advanced Options menu of DSREPAIR. You should also make a backup copy of the directory that contains the server startup files (typically C:\NWSERVER). If the upgrade does not complete successfully, you may need to restore this directory.

  2. Verify that all computer hardware components, such as storage devices, are functioning properly and are supported by NetWare 5. If you have outdated adapters for which a NetWare 5 compatible driver is not available (for example, .DSK storage drivers are not supported in NetWare 5—they are replaced by .HAM drivers), you should update your hardware on NetWare 4 prior to upgrading to NetWare 5.

  3. Mount all volumes. If you have experienced disk errors in the past, you may want to run VREPAIR on all of the volumes on the server to ensure that there are no errors.

  4. Use the standard NetWare 5 install/upgrade program (invoked via INSTALL.BAT) to upgrade the server that holds the Master replica of the [Root] partition. Once this is complete, verify that NDS is fully synchronized in the tree using the Report Synchronization Status option of DSREPAIR.

  5. Mount the NetWare 5 CD-ROM as a volume or copy the files and directory structure of the NetWare 5 CD-ROM to a server on the network that will be accessible by other servers that you want to upgrade.

Now you are ready to upgrade other NetWare 4.1x servers in your tree using the NetWare 5 Accelerated Upgrade.

Using the Accelerated Upgrade

To use the Accelerated Upgrade, make sure you have copied the Accelerated Upgrade files to the server that has the NetWare 5 CD-ROM or directory structure, as described in Step 5 above. At the NetWare 4.1x server console, load INSTALL.NLM. This can be done via a Novell Remote Console session.

Note: If you run Remote Console from the same server you are upgrading, you will get errors during the file copy that TEXTUTIL.IDX, RCONSOLE.MSG, TEXTUTIL.MSG, and RCONSOLE.HEP could not be opened. You can get past this by selecting "Continue copying the next file." Also, the server will not be downed properly because the Remote Console connection will have RCONSOLE and TEXTUTIL files opened. Press "Y" for yes to down the server.

Once INSTALL is loaded, select Product Options and then Install a Product Not Listed. Enter the path to the directory where the Accelerated Upgrade files are located. NWConfig finds the script file and automatically displays the menu.

The Accelerated Upgrade menu has three visible options that are selected by default:

  1. Reboot the server after copying files. If you do not choose this option, the Accelerated Upgrade will end after copying files and you must manually reboot the server.

  2. Auto-detect computer hardware after rebooting. This option will detect the hardware in your server and translate driver information from the previous version of NetWare. If you do not choose this option, the hardware will need to be specified explicitly. You can manually specify the hardware setup by following the steps outlined in Appendix A of the Accelerated Upgrade documentation. (This documentation is contained in the UPGRADE.HTM file included with the Accelerated Upgrade program.)

  3. Remove unsupported DOS utilities. This option will remove legacy DOS-based text utilities (such as NETADMIN, PCONSOLE, WHOAMI, and so on) from the server.

These options are chosen by highlighting the menu option and then pressing the spacebar to check its associated box.

How the Accelerated Upgrade Works

The Accelerated Upgrade is implemented with NetWare installation scripts, NCF files, and NLMs. This section describes in detail the process by which the Accelerated Upgrade converts a NetWare 4.1x server to NetWare 5. The Accelerated Upgrade does the following:

  1. Checks to see if NetWare SFT III or Data Migration (HCSS) is running. Since these features are not supported in NetWare 5, they must be shut down first before upgrading to NetWare 5.

  2. Displays a menu with the options listed above.

  3. Displays the License Agreement (LICENSE.TXT).

  4. Copies REBOOT.NCF and NDSDIBUP.NLM to the SYS:SYSTEM directory.

  5. Displays the Readme file (README.TXT).

  6. Prompts for the source location of the NetWare 5 files.

  7. Prompts to confirm the Startup directory on the server to be upgraded. At this point you can specify an alternate directory and the Accelerated Upgrade will install to the new directory—preserving the original directory as backup.

  8. Comments out the lines in the STARTUP.NCF and AUTOEXEC.NCF files that load patches. The Accelerated Upgrade will also remove outdated products from the Installed Products database and add OS2 (4.10) or LONG (4.11/4.20) name spaces to Volume SYS. This is necessary for the TAR files (containing Java files) to be extracted.

  9. Removes outdated NLMs and files from the Startup and SYS:SYSTEM directories.

  10. Copies the NetWare 5 files to the appropriate locations on the server. Once this is complete, the server's STARTUP.NCF will be modified to allow a reboot without disk drivers. An AUTOEXEC.NCF file will be placed in the Startup directory to allow a hardware detection module to start.

  11. The server reboots (if that menu option was not deselected).

  12. Starts the NetWare 5 Hardware Detection module (HDETECT.NLM) after the reboot. This module detects the storage and LAN drivers for the upgraded server and rewrites STARTUP.NCF with the new driver names and the uncommented lines from the old STARTUP.NCF.

  13. Loads NDSDIBUP.NLM. This module will upgrade the copy of the NDS database located on the upgraded server.

  14. The server reboots again and the upgrade to NetWare 5 is complete.

Customizing the Accelerated Upgrade

The Accelerated Upgrade consists of two scripts. The first script (UPGRADE.IPS) performs Steps 1 through 10 above prior to the server reboot. The second script (HWDETECT.ICS) starts the hardware detection and the NDS database upgrade after the server is rebooted. It also cleans up after the Accelerated Upgrade and reboots the server one last time.

Exposing Additional Menu Options

The simplest customization to the Accelerated Upgrade is the exposure of additional menu options. There are several procedures that are normally run automatically, but which may be turned into menu options. They are:

  • Remove old files from Startup and SYS:SYSTEM directories

  • Copy server startup drivers and files

  • Copy NetWare SYSTEM, PUBLIC, and LOGIN directories and files

  • Install Script Files

  • Copy Java files

  • Copy Novell ConsoleOne

  • Run NetWare GUI Install

  • Custom End-User Installation

Descriptions of what these options do are found in the UPGRADE.IPS install script on the Help: line associated with the menu option.

Note: If you reveal these options and deselect any of them, NetWare 5 will not be fully installed. Moreover, disabling these options may result in an upgrade failure and may render your server unusable.

To display these procedures as options on the Accelerated Upgrade menu, locate the @FileSet and @EndFileSet commands in UPGRADE.IPS. These commands define the groups of files to copy, or instructions to be performed, if the corresponding box is checked. For example, the section associated with "Copy server startup files and drivers" is shown below:

@Fileset
Description: "Copy server startup files and drivers"
Name: DOS_STUFF
Class: MANDATORY
Help: "Server startup files, needed to boot the server,  are copied to 
the servers startup directory. Hardware  drivers, such as: storage, I2O, 
PSM, and SBD, are copied  to the servers startup .\\DRIVERS directory."
DiskBytes: 8780000
Bytes: 8780000
SetVar SBOOT, %{true}
SetVar itemSelected, %{true}
@EndFileset

To make any one of these options visible on the menu, you must do two things.

  • First, replace the keyword "MANDATORY" on the Class: line with "OPTIONAL" (the option is selected by default) or "OPTIONAL_OFF" (the option is not selected by default). This will allow the Fileset to appear as an available menu option.

  • Second, search in UPGRADE.IPS for the second copy of the same Fileset group by its Name: and replace the keyword "MANDATORY" with "OPTIONAL" or "OPTIONAL_OFF." By way of example, the following is the second Fileset for "Copy server startup files and drivers" (identified by the Name: DOS_STUFF).

    @Fileset
    Name: DOS_STUFF
    Class: MANDATORY
    Attributes: 0,0
     (other script commands are inserted here)
    @EndFileset

Changing the Behavior of Hardware Detection

You may also want to change the behavior of hardware detection and the NDS database upgrade. By removing the "- S" option from the lines that load HDETECT.NLM and NDSDIBUP.NLM in the HWDETECT.ICS script file, these modules will run interactively instead of silently. This means that for hardware detection, you can confirm or add new hardware devices during the upgrade.

Completely Customizing the Accelerated Upgrade

Finally, you can completely customize the Accelerated Upgrade to meet your enterprise needs. To accomplish this you will need to have an understanding of the NetWare Installation Scripts. For detailed information, see Technical Information Document #2944480 at http://support.novell.com.

Accelerated Upgrade v1.1 includes a sample of a script (CUSTOM.ICS) that can be used to extend the utility. Figure 1 below (taken from CUSTOM.TXT in v1.1) briefly explains the commands most widely used in the installation scripts.

Commands to call the sample script (CUSTOM.ICS) already exist in UPGRADE.IPS, but are disabled. To enable them, you must uncomment two groups of lines by removing the semi-colon at the beginning of each line. To find the first group, search for "Custom End-User Installation"; then uncomment every line from @Fileset to @EndFileSet. Then search for CUSTOM.ICS and uncomment every line from @IncludeFile to @EndIncludeFile. You are now on your way to extending the Accelerated Upgrade for your enterprise needs.

Figure 1: Sample CUSTOM.ICS file.


@Version 5.00
@SyntaxVersion 1.03
; ?CoPyRiGhT=(c) 1996 Novell, Inc.  All Rights Reserved.?
;CUSTOM.ICS ** IBM Version 1.10**
; Called by UPGRADE.IPS v1.10
;
; Global variables 
;	Variable, whether defined by Install.nlm or the script, are case sensitive.
;	Variables are referenced by placing ?%{}? around the variable name.
;		Example: %{NWSRC}
; Defined by Install.nlm (READ-ONLY)
; Name                    Description
; -------           ------------------------------------------
;  NWSRC                  Source path where the script is started.
;  NWDST                  Destination path (Where the server will start from).
;  NWBOOT                 Current path (Where the server was booted from).
;  NWLANG                 Current language number (See SETLANG.ICS file).
;  NWSTATUS               Completion status of script commands.
; Defined by Upgrade.ips (READ & WRITE)
; Name                    Description
; -------           ------------------------------------------
;  true                   Defined as 1, (default).
;  false                  Defined as 0, (default).
;  done                   Defined as %{false} (default).
;  itemSelected           Defined as %{false} (default).
;  installSelected        Defined as %{false} (default).
;  autoexecDir            Defined as SYS:\SYSTEM
;  sys                    Defined as SYS:\
;  SRC                    Defined as the location of the NetWare 5 CDrom.
;  NEWDST                 Defined as the destination path (Where the server will
;                         start from). This is, by default, the path as NWBOOT 
;                         unless the user selects to backup the NWBOOT
;                         directory.
;	
;  The following variables control whether or not the associated filesets are
;  run. If they are true, the fileset instructions will be executed. If they
;  are false, the fileset will be skipped.
;  HDETECT, AREBOOT, CLEANUP, DOSUTILS, SBOOT, MAIN, SCRIPT, JAVA, CONSOLE1,
;  SINSTALL, CUSTOM; Custom Install Files
;-----------------------------------------------------------------------------
;@Fileset
;  Name:           CUSTOM
;  Class:          OPTIONAL_OFF
;    (This class parameter must match it?s partner in the
;    upgrade.ips file)
; 
;----- If Done = true then exit -----
;  GotoIfEqual %{done}, %{true},NO_CUSTOM_SCRIPT
;
;----- If CUSTOM = false then exit CUSTOM Install -----
;  GotoIfEqual %{CUSTOM}, %{false}, NO_CUSTOM_SCRIPT
;
; Example of setting a variable to a value.
;  SetVar LANG, %{NWLANG}
;  SetVar LANG, ?4?
;           |    |
;           |    ----- Variable value is surrounded by ?or ?
;           |          can also reference another variables content %{NWLANG}
;           ---------- Variable name (Case Sensitive). if the variable doesn?t
;                  exist, it is created.
;
; Example of setting a PATH variable to a value.
;  GetPath sys, 1, ?SYS:\\?,??
;  GetPath local, 1, ?C:\\?,??
;           |     |    |    |
;           |     |    |    ---- Prompt (optional, must at least include quotes)
;           |     |    -----------Default value
;           |     |
;           |     ---------------Path type
;           |           1 - Any path
;           |           2 - Floppy only (Remote allowed)
;           |           3 - DOS only (Remote allowed)
;           |           4 - NetWare only
;           |           5 - Local floppy only
;           ---------------------Variable name (Case Sensitive). if the variable 
;                                                    doesn?t exist, it is
created.
;
;Example of CopyFile
;  CopyFile 0,0,1,2,0,NWSRC,?icmd.nlm?,??,??,NEWDST,??,??,??
;
;  CopyFile 0,          Recurse flag
;               0 - Do not copy subdirectories
;               1 - Copy subdirectories
;        0,     Directory flag
;               0 - Copy a file to a directory
;               1 - Copy a directory to a directory
;               2 - Copy a file to a file
;               3 - Copy a directory to a directory, IF it exists
;        1,     Empty flag
;               0 - No error if files not found
;               1 - Error if files not found
;        2,     Attribute flag
;               0 - Use the default file set attibutes
;               1 - Use the source file?s attributes
;               2 - Use the attibute specified by 
;                             (This must be the value to copy to the local C:
drive).
;        0,     Attibutes
                0 - Normal
;               1 - Read-only
;               2 - Hidden
;               4 - System
;          NWSRC,Source variable name
;          ?icmd.nlm?,Source filespec
;          ?,Source volume name
;          ?,Source description
;          NEWDST,Destination variable name
;          ?,Destination filespec
;          ?,Destination volume name
;                 ?Destination description
;Example of Console 
;  Console ?load monitor?, 10
;  Console ?load monitor?, 10
;                   |       |
;                   |       ----- Delay in seconds
;                   ---------------- Console command to be executed
;
;Label NO_CUSTOM_SCRIPT
;@EndFileset

Conclusion

This AppNote has described how the NetWare 5 Accelerated Upgrade can be used to quickly upgrade your enterprise network. It has explained in detail how the utility works and how you can customize it for your own needs. It is our hope that this utility will make your task of upgrading to NetWare 5 easier and that it will save you time and effort.

* Originally published in Novell AppNotes


Disclaimer

The origin of this information may be internal or external to Novell. While Novell makes all reasonable efforts to verify this information, Novell does not make explicit or implied claims to its validity.

© Copyright Micro Focus or one of its affiliates