Remote installation of OS/2

Introduction

On Warp 4, a facility was provided so that OS/2 could be installed over a network, using just three boot diskettes on the target workstation. This had a graphical interface, and was very simple to use.

The graphical interface was withdrawn in the Convenience Packs, but the functionality is still there if one is prepared to spend a few minutes setting it up for the first time. This page provides step by step instructions on doing so.

A REXX script is also available, and this largely automates the whole process of setting up for a remote installation. If you use this, there isn't much need to read the instructions below! Click here to find out more.


Terminology

In the following instructions, the system on which the installation media resides will be called the code server (but it need not run Warp Server); this term will also be used for the specific networking software that provides access to the installation media across the network. The system on which OS/2 is being installed will be called the target system.

In references to files and directories, a lower case drive letter means that the appropriate drive letter should be substituted according to the configurations of the systems being used. To save repeated explanations, note that the following conventions will be used:

n:
The drive letter of the CDROM containing the OS/2 distribution (the main CDROM, not the 'Installation' CDROM).
g:
The drive letter of a convenient hard disk volume on the code server.

What you will need

The following will be required:


Setting up the code server

This part is simple and quick:

  1. Make sure that the OS/2 distribution CDROM (not the boot CDROM, but the main one) is in the CDROM drive.
  2. Create a directory on the hard disk, calling it g:\SRVIFS.
  3. Issue the command:
    XCOPY n:\CID\SRVIFS g:\SRVIFS
    
    This copies a small number of server files to the code server.
  4. In the g:\SRVIFS directory, create a file named SERVICE.INI containing the following lines:
    Name = CIDSRV
    GroupName = No
    Path = n:\
    PerClient = No
    PermitWrite = No
    MaxClients = 2
    Alias = ReadOnly,Single,CDROM,n:\
    Alias = ReadWrite,Single,STATUS,g:\SRVIFS
    
    This is the configuration file for the code server. You can use any name you like for the server, but CIDSRV is as good as any (although it must be a unique name on your NETBIOS network).
  5. If you have a NIC driver diskette (i.e. the NIC is not directly supported by OS/2), then you also need to perform this step. Make sure that the NIC driver diskette is in drive A:, then issue these commands:
    MKDIR g:\SRVIFS\IBMCOM
    MKDIR g:\SRVIFS\IBMCOM\MACS
    COPY A:\ g:\SRVIFS\IBMCOM\MACS
    

Running the code server

The code server does not need to be started until you are ready to start the installation of the target system, but it is so simple to do that you may as well do it now. First, make sure that the OS/2 CDROM is still in the CDROM drive. Then, to start the code server, simply go to the g:\SRVIFS directory and issue this command:

SERVICE /INI=SERVICE

If you wish, you can use the START command to do this:

START SERVICE /INI=SERVICE
Note that some versions of SERVICE do not accept any kind of pathname for the value of the /INI option. This is one reason for going to the SRVIFS directory before issuing the command; another is to avoid running a completely different program (of the same name!) which is generally known as the FixTool.

A one line signon banner should appear when the server is started (of course, it will be in a separate window if you used the START command). If there is no banner, but just a return to the command prompt, it is likely that there is a configuration problem. See Note 7 for more details.

Displaying code server status

At any time, you can check on the status of the code server by again going to the g:\SRVIFS directory and issuing the command:

SERVICE /STATUS

This will display current connections and other information. /STATUS can be abbreviated to /S.

Stopping the code server

The code server can be stopped in the usual ways, by closing its window or typing Ctrl-C or Ctrl-Break. However, the cleanest (and recommended) method is to go to the g:\SRVIFS directory and issue the command:

SERVICE /QUIT
This causes the server to refuse new connections, and shuts it down when existing connections are closed. /QUIT can be abbreviated to /QU. You can also use /FORCE or /F, which will not wait for any pending connections to be closed.


Creating installation boot diskettes

The target system is intially booted using a specially constructed set of three diskettes. This section describes how to build those diskettes.

Making the basic diskettes

This uses the three pre-prepared empty, formatted and labelled diskettes.

  1. Issue the command: n:\CID\EXE\OS2\SEDISK /S:n:\OS2IMAGE /T:A:
  2. Follow the prompts, inserting the diskettes in the order D0, D1 then D2.

You now have basic OS/2 installation diskettes, which must be modified.

Adding basic networking to the diskettes

This step installs a basic NETBIOS networking stack onto the diskettes. This is enough to provide a way of talking across the network. The instructions are slightly different depending on whether or not you have a NIC driver diskette (see earlier).

If your NIC is directly supported

For the purposes of this example, it is assumed that the NIF file for the selected (supported) MAC driver is called XYZETHER.NIF.

Follow these steps:

  1. Make sure that Remote Diskette 2 is in drive A:.
  2. Issue the command:
    n:\CID\SERVER\MPTS\THINLAPS n:\CID\SERVER\MPTS A: XYZETHER.NIF /TU:A:
    
  3. When a message appears indicating that CONFIG.SYS cannot be updated, remove Remote Diskette 2, insert Remote Diskette 1, and press Enter.

If you are providing a MAC driver (your NIC is not directly supported)

In this example, let us assume that the NIF file is called NEWNIC.NIF.

Follow these steps:

  1. Make sure that Remote Diskette 2 is in drive A:.
  2. Issue the command:
    n:\CID\SERVER\MPTS\THINLAPS n:\CID\SERVER\MPTS A: NEWNIC.NIF /TU:A: /ADD:g:\SRVIFS\IBMCOM\MACS
    
    Note the additional option /ADD, which specifies where to find the NIF file and MAC driver.
  3. When a message appears indicating that CONFIG.SYS cannot be updated, remove Remote Diskette 2, insert Remote Diskette 1, and press Enter.

Final comments on networking additions

On completion, all necessary functionality has been added. If you look at CONFIG.SYS (on Remote Diskette 1) you will see the additions clearly indicated at the end of the file.

Adding the THINIFS networking client to the diskettes

The next step is to add a minimal file sharing client to the diskettes, to provide the actual access to the distribution media on the code server.

  1. Make sure that Remote Diskette 2 is in drive A:.
  2. Issue the commands:
    n:\CID\SRVIFS\THINIFS /D:Z /S:n:\CID\SRVIFS /T:A: /TU:A: /SRV:\\CIDSRV\CDROM /REQ:*
    n:\CID\SRVIFS\THINIFS /D:W /S:n:\CID\SRVIFS /T:A: /TU:A: /SRV:\\CIDSRV\STATUS /REQ:*
    
    Obviously, the name CIDSRV must match the name you used when setting up the code server (the name in SERVICE.INI).
  3. When a message appears indicating that CONFIG.SYS cannot be updated, remove Remote Diskette 2, insert Remote Diskette 1, and press Enter.

On completion, the networking client code has been added. If you look at CONFIG.SYS (on Remote Diskette 1) you will see the additions clearly indicated at the end of the file.

Making final modifications to the diskettes

Follow these steps:

  1. Edit the CONFIG.SYS file on diskette 1, and add the following lines at the end:
    SET OS2_SHELL=CDBOOT.EXE
    SET OEMPROGRAM=\IBMINST\NPCONFIG.EXE
    SET EXITWHENDONE=1
    SET SAVECONNECT=1
    SET ADAPTER_NIF=NEWNIC.NIF
    SET SRVNAME1=CIDSRV
    
    Modify the SET ADAPTER_NIF=... to reflect the name of the NIF file for the NIC driver being used. Also, make sure the the name specified in the SET SRVNAME=... line matches the one you used when setting up the code server (the name in SERVICE.INI). The SET OS2_SHELL... statement will override the one earlier in the file, so there is no need to remove that.
  2. Ensure that Remote Diskette 2 is in drive A:.
  3. Issue the command:
    COPY n:\OS2IMAGE\DISK_2\CDBOOT.EXE A:\
    

Starting the installation

Follow these steps:

  1. Make sure that the OS/2 CDROM is in the code server's CDROM drive (it will be, unless you have removed it).
  2. Make sure that the actual code server software is running.
  3. Insert the Remote Installation diskette into the target system.
  4. Restart the target system.
  5. OS/2 installation should now proceed normally. If the install hangs or gives an error message when diskette 2 has been working for a while, see Note 5 or Note 6.
  6. This is the full integrated install, which includes networking. At the very least, you will probably want to install the NETBIOS protocol, to ensure continued access to the code server after installation (you might want to use Selective Install at some point in the future).
  7. When the networking configuration portion of the install starts, you will need to specify a NIC. If you used a driver not directly supported by OS/2, choose the option for 'other' and insert the driver disk (which you made earlier) as prompted.
  8. In all cases, make sure that the NIC driver has been configured correctly (select the NIC in the NIC/protocol listbox, and press the Settings button).
  9. At the end of installation, a dialog box will appear, entitled "Install Additional Options". You must press the Exit button here, as the installation CDROM is not currently accessible. Use the standard Peer networking facilities, or LAN requester, to attach the CDROM again and then install manually.

Other considerations

This section mentions other considerations which may be of interest.


Troubleshooting

This section is intended to deal with problems related directly to the remote nature of the installation.


Notes

  1. You can easily check to see if the 'pure' NETBIOS protocol is installed. Inspect CONFIG.SYS to see if a driver called NETBEUI.OS2 is being loaded via a DEVICE= statement; if it is, the chances are that you have the NETBIOS protocol installed.
  2. To see if NETBIOS over TCP/IP is installed, look in CONFIG.SYS to see if a driver called TCPBEUI.OS2 is being loaded via a DEVICE= statement; if it is, the chances are that NETBIOS over TCP/IP is installed.
  3. If you do have both NETBIOS, and NETBIOS over TCP/IP, installed, then it is wise to make a further check. You should make sure that the NETBIOS protocol is the first protocol installed on the NIC, by carrying out the following steps:
    1. Open the MPTS configuration object (found in the System Setup folder)
    2. Press the Configuration button.
    3. Press the Configuration button (again).
    4. Check that NETBIOS is the first protocol listed for the NIC; if it isn't, remove and reinstall protocols until it is.
    5. Press the OK button.
    6. Press the Close button.
    7. Press the Exit button.
    If you don't do this, you may receive a message about the SRVIFS service failing to start, when you try to start the code server.
  4. You can check the supported NICs by looking at the directory:
    n:\CID\NIFS\MACS
    
    which contains the NIFs and MAC drivers for supported NICs. The file READMAC.TXT is particularly useful.
  5. An error message saying that the installation cannot be started is usually caused by a missing CDBOOT.EXE file.
  6. A hang when diskette 2 has been working for a while usually indicates a network problem.
  7. A silent failure of the SERVICE command (where it exits without displaying a banner or any other message) is likely to be caused by a configuration error. Error messages from SERVICE are not written to the screen, but to the file g:\IBMCOM\LANTRAN.LOG, so look there for clues.

A REXX script to automate the process

This REXX script can be used to save typing, eliminate typing errors, and generally ease the whole job of setting up the code server and making the installation diskettes.

Just download the script, unzip it, and run it. It takes no parameters.

Download REMINST.ZIP


Back to Tavi OS/2 main page


Last Updated: 18th December 2003
© 2003 by Bob Eager, Tavi Systems