FixDist / TapeGen User's Guide

FixDist / TapeGen User's Guide

AIX Version 4.3 fixes are now available from the Fix Delivery Center. The application known as FixDist will be withdrawn from service on September 4, 2003.


FixDist Introduction

Downloading And Installing FixDist

Using FixDist

Using Proxies

Supported Products

How FixDist Determines Requisites

Technical Tips and Hints


Trademarks and Acknowledgements

About This Book

This book contains information on the FixDist and TapeGen service tools. It includes an overview of the service and procedural information needed to access and use the tools.

FixDist is a user interface used to download software fixes on the Internet. TapeGen is a command line utility enabling you to create a stacked tape containing SMIT installable fixes.

Who Should Use This Book

This book is for the user responsible for receiving and installing software fixes for AIX operating environments.


To help customers browse and download fixes stored at our fix sites, we have released a freely available service tool called FixDist. FixDist is a user interface tool designed to enable customers to select and download a fix and any neccessary requisite fixes. This tool and the anonymous ftp servers are available to customers with Internet ftp access.

A companion service tool called TapeGen is provided with FixDist to enable you to create a stacked tape containing SMIT installable fixes. It is installed into the /usr/bin directory. It is a command line utility that uses the FixDist databases to copy the fixes onto tape. See the"TapeGen"section for more information.

IBM provides a number of mirrored sites on the Internet where you may freely download AIX related fixes. While not every AIX related fix is available, we are constantly adding more and more product fixes. These sites are anonymous ftp servers. Though we do not guarantee all fixes will be immediately made available, we usually update the servers within 24 hours after the same fix is available from our tape distribution sites.
The current list of anonymous ftp servers available for FixDist users are:

        United States

With FixDist, you can choose to download immediately or configure to download later. It supports both AIX selective fixes as well as AIX Maintenance Packages. Fix requisites are downloaded with your fix. You can also tell FixDist what requisite fixes you do not need.

FixDist enables you to select fixes by APAR number, PTF number or fileset name. Once a fix is selected, the utility attempts to deliver only the necessary fixes to satisfy all requisites. This speeds up delivery of the fix package because any fixes you may have already received are not downloaded. See "How FixDist Determines Requisites" for information on how to use this option.

System Requirements

The following table describes the system requirements for each process.

  1. Downloading
  2. Installing
  3. Using FixDist with motif Interface
  4. Using FixDist with curses Interface
  5. The FixDist AIX V4 Database
  6. The FixDist AIX V3 Database
  7. The FixDist CAD/CAM Database

Downloading And Installing FixDist

To obtain FixDist or read the user guide, simply download it via anonymous ftp from any of the servers listed in the "Introduction" section. Many of these sites are also web servers (example URL: From the web pages you can read the user guide.

The FixDist client along with the user guide is located in the anonymous ftp directory /aix/tools/fixdist. Below is an example of downloading and installing the tool and the PostScript user guide.

Note:The following procedures must be performed as "root"

  1. Change to your /tmp directory
           cd /tmp
  2. Download the tool and documentation. The tool comes with the user guide in plain text as /usr/lpp/fixdist/fixdist.txt.
           > login:     anonymous
           > password:  "email"   (example: johndoe@)
           > bin
           > cd /aix/tools/fixdist
           > get fd.tar.Z         (FixDist tool in compressed tar format)
           > get     (User guide in compressed PostScript)
           > quit
  3. Install the tool into the /usr file system. You "must" install it from the / (root) directory in order to access the online help and preserve your .netrc file.
            cd /                              (change directory to the root)
            zcat /tmp/fd.tar.Z |tar -xpvf -   (uncompress and untar)

    To start up FixDist simply run the command:


    /usr/bin/fixdist is a script that calls /usr/lpp/fixdist/fixdistm for AIXwindows or CDE desktop users. For non-graphical displays, fixdist will call /usr/lpp/fixdist/fixdistc.

Using FixDist

The FixDist utility is a user interface to an anonymous FTP server that contains software fixes for selected AIX products. These fixes can be selected for immediate download, or they can be specified to download at a later time. FixDist does not "install" any fixes onto your system. It simply transfers the needed fixes to a target directory on your system. When a fix is downloaded, you will receive all requisite fixes automatically.

Starting FixDist

To start the FixDist utility, enter the following:


Configuring FixDist

Note: Verify that hardware and software requirements are met (see System Requirements).

  1. Select a database from the menu bar. You may get an informational message if the FixDist Server or the Target Directory entries are not defined.
  2. Specify in the FixDist Server field a fully qualified name or IP address of an IBM FixDist Server.
  3. Specify in the Target Directory field, a directory on your system where you wish to have the fixes downloaded. If the directory does not exist, it will be created. We suggest you use different directories for each database (i.e. /tmp/fixes/v4 and /tmp/fixes/v3 and /tmp/fixes/cad).
  4. Specify the path and name of your ftp executable. From the menu bar, select Options -> Ftp. This will allow you to specify a different ftp executable (for instance, a SOCKS version) for FixDist to use when downloading databases/fixes.
  5. Download the database by clicking on Download/Refresh AIX x.x Database. FixDist will "ftp get" the database from the server. When the database has been successfully received and uncompressed, a list of available fix types will be displayed.
  6. Double click on a fix type or highlight a fix type and press the enter key.

Generally Available Fix Types

There are two ways to search for a fix. A toggle button is provided enabling a PTF view or an APAR view. If you are looking for a fix to an APAR then select APAR View. If you are looking for a specific PTF number then select PTF View.

Once you have selected the desired fix, you can download that fix by clicking on the Okay button.

You will be prompted to specify your AIX Level. Use the Help button for information on how to determine your AIX level.

Package Content Information is then displayed, providing pertinent information on the fixes selected. Clicking Start Download starts the download process.

Excluding Fixes / Reducing the Size of the Fix Package

You can greatly reduce the size of many fix packages by using an exclusion file. To help you create and maintain an exclusion file, FixDist provides an Exclusion File button. Use this to view, create, append or overwrite an existing exclusion file.

This file can be in virtually any format. FixDist makes two passes through the exclusion file. The first pass looks for matching PTF numbers. The second pass looks for matching fileset names.

FixDist will remember the last exclusion list you specified and use it by default. On subsequent uses you will not need to re-select your exclusion list.

Other Fix Types

FixDist supports other fix types, such as maintenance packages. Periodically, other types of fixes will be available. All fix types, other then Generally Available Fixes, are presented through a set of simple windows.

By selecting one of these fix types, you are presented with a list of available packages to choose from. Unlike Generally Available Fixes, you are not provided a search facility or a method to exclude parts of the package.

After selecting an item, you are presented with package size information. Clicking on Start Download begins the download process.

Using Proxies

Proxy FTP allows you to open a connection to the FixDist server through an intermediate system (proxy FTP server). This function is useful for those network environments that do not allow your AIX system to perform "ftp gets" directly on the Internet.

FxDist supports 2 common types of proxy FTP, Active Proxy and Passive Proxy. Note that the terms Active and Passive are used to more easily delineate between the 2 types FixDist uses.

FixDist supports SOCKS by allowing you to specify the ftp executable you wish to use. In the Options menu, selecting the Ftp Command option will display a dialog box that allows you to specify any executable with the full path. This is the executable that FixDist will use to download fixes and databases.

Active Proxy FTP

In active proxy mode, FixDist will use your UNIX based system that is directly on the Internet as a gateway. Images will first be ftp'd to your UNIX based system then ftp'd to your AIX system.

To use active proxy, the UNIX based system needs to have a standard UNIX login account, password, and enough space in that account's home directory to download the fix. The user login on your UNIX based system should be a regular account with read-write permissions to the home directory of that login.

To ensure that you have enough space available on the proxy server, we recommend that you have free space equal to the amount that FixDist says will be needed. In reality, you only need enough space to satisfy the largest individual fix image that is part of your fix package. Example: The fix package you select is 10MBs in size and is composed of 7 individual fix images. The largest image is 3.5MBs in size. You will need no more than 3.5MBs of free space in the home directory on your UNIX based system because each fix image is removed from the proxy server immediately after being transferred to your AIX system.

Configuring FixDist to Use Active Proxy FTP

From the menu bar, select Options -> Proxy -> Active. Fill in the three fields.

   Proxy Server  The UNIX based system to act as the gateway.
   Proxy Id      The user login id on the proxy server.
   Proxy Pwd     The password for the user login id on the proxy server.

If any of these fields are empty, active proxy will not work. FixDist does not check the validity of these entries.

Note: Because the fix images are effectively being transferred twice, performance will be affected.

The configuration file used to keep this information is in the file $HOME/.fixdist_home/.proxyinfo. The password entry is not retained.

Passive Proxy FTP

In passive proxy mode, FixDist communicates to the IBM FixDist server by first requesting a proxy server to grant permission to connect to the Internet. This is done by ftping to the proxy server by giving it a port number specified by the system administrator of the proxy server. This enables the client machine to pass through the proxy server. On the proxy server, the login userid is anonymous@server.domain and the password is your current login. Once logged in, all commands entered are being run on the FixDist server not the proxy server.

Configuring FixDist to Use Passive Proxy FTP

From the menu bar, select Options -> Proxy -> Passive. Fill in the two fields.

    Proxy Server    The UNIX based system to act as the gateway.
    Port            The port number used by the proxy server.

If any of these fields are empty, passive proxy will not work. FixDist does not check the validity of these entries.

The configuration file used to keep this information is in the file $HOME/.fixdist_home/.proxyinfo.

Supported Products

There are currently six (6) anonymous FTP servers functioning as FixDist servers. These servers are updated daily. They are mirrored with all 3 FixDist databases.

AIX V4 Database

We keep the latest AIX product fixes available on these servers. Virtually, every IBM AIX Version 4.2 and 4.1 related product is represented. However, there are some fixes that cannot be distributed anonymously. Those fixes will not appear in FixDist. Additionally, there are a few fixes that are not in a format that FixDist can understand. Those will not be available through FixDist but are typically available through other electronic means.

AIX V3 Database

Virtually, every IBM AIX Verson 3.2.5 related product is represented. However, there are some fixes that cannot be distributed anonymously. Those fixes will not appear in Fixdist. Additionally, there are a few fixes that are not in a format that FixDist can understand. Those will not be available through FixDist, but are typically available through other electronic means.

CAD/CAM Database

This database currently houses CATIA for AIX fixes. These include the latest tar images as well as the earlier bff images. CADAM for AIX is not yet available.

How FixDist Determines Requisites

AIX V4 Database

The AIX V4 fix policy is to deliver the original fix for a specified APAR (Authorized Problem Analysis Report). A fix is composed of one or more installable images that usually replace portions of a software product.

The fix package is selectable either by viewing the APAR list or by viewing the PTF-Fileset list. A fileset fix is the AIX V4 representation of a PTF.

A Brief Discussion on V4 Filesets

The fileset concept is straight forward and quite different from the way AIX V3 fix information is stored.

A fix for TCP/IP's ifconfig (interface configuration command) is a good example to compare AIX V3 and AIX V4. In V3, a fix for ifconfig is tracked on the system by PTF number:

      bos.tcpip.obj  U491130  03.02.0000.0000

In V4, the same fix is tracked on the system by fix level:

The level is read Version.Release.Modification.Fix level (VRMF). If the F is 0, like, that fileset has no fixes applied to it. If the F is 5, like, that fileset is at the 5th fix level meaning only that the fileset has been revised at least 5 times and you have installed the 5th fix level. When a new Modification is shipped, the Fix level resets to 0 like

Note that all operating system fixes install as filesets on AIX V4. While the operating system fixes are in fileset format, other IBM and non-IBM products can be in the old-style V3 formats while still other products may install in simple tar format using their own tracking methods.

AIX V3 Database

The AIX V3 fix policy is to deliver the latest package that contains the fix for an APAR (Authorized Problem Analysis Report). A fix package is composed of PTFs. A PTF is an installable image that usually replaces portions of a software product.

PTFs often fix more than just one APAR. As new PTFs are released, some replace the same portions of a software product. In this way, the fix is a cumulative fix. The newer fix is said to "supersede" the previous fix.

FixDist for AIX V3 takes this policy a bit further. FixDist delivers fixes using what is commonly referred to as "preventive supersede". This is the process of always delivering the latest fix package. The effect can be seen when you select an APAR that has been fixed for some time or a PTF that has been superseded. FixDist will tell you that the fix you have selected has been superseded by a newer fix. FixDist will always deliver the newest fix.

CAD/CAM Database

The CAD fix policy is to deliver the original fix for a specified PTF. A fix is composed of one or more installable images that usually replace portions of a software product.

The fix package is selectable either by viewing the APAR list or by viewing the PTF list.

Technical Tips and Hints

The following technical tips and hints provide suggested ways to take advantage of the functionality of FixDist. Some internal structures are also examined.

Where does FixDist keep it's configuration file?

The config file is $HOME/.fixdist_home/.fixdistcfg. This file is a flat text file. If the $HOME/.fixdist_home directory does not exist, it is created for you. The directory and the .fixdistcfg file must have read/write access by the effective user.

The .fixdistcfg file helps FixDist remember: what FixDist server you use; where it's databases are; whether you wish to download now or later; and what database was last used.

How does FixDist talk to the server?

FixDist is a stateless application in that it does not keep in contact with the FixDist server. It uses anonymous ftp to get fix images from the server.

When FixDist is initially started, it is lacking a database. By clicking on the Database button, it logs into the server via anonymous ftp and gets the specified database.

After a database is retrieved from the server, FixDist can search the database and build a list of fixes. When you tell FixDist to start the download, it initiates a number of anonymous ftp gets to the server to retrieve the fixes.

FixDist requires the use of a .netrc file. In order to avoid using the $HOME/.netrc file, the $HOME environment variable is changed to $HOME/.fixdist_home. This allows FixDist to create and manipulate it's own .netrc file safely, without the possible loss of the user's normal .netrc file.

What files make up FixDist?

FixDist is made up of a main driver shell script called /usr/bin/fixdist that calls either the graphical user interface /usr/lpp/fixdist/fixdistm or the character based user interface /usr/lpp/fixdist/fixdistc.

The shell script performs initial setup for FixDist by temporarily resetting your $HOME variable to $HOME/.fixdist_home then determining whether you have a graphical display ($DISPLAY is set).

There are various help files and other text files. FixDist is hard coded to look for these files in the /usr/lpp/fixdist directory.

How does FixDist keep track of fixes on the server?

FixDist keeps track of fixes and their requisites by reading a database that is downloaded to your system.

The AIX V4 database is contained in a compressed tar image called 41fd.db.Z (AIX V4 FixDist Database). This database is regularly updated and put on the server in the /aix/fixes/v4/fixdistdb directory.

The AIX V3 database is contained in a compressed tar image called fd.db.Z (AIX V3 FixDist Database). This database is regularly updated and put on the server in the /aix/fixes/v3/fixdistdb directory.

How often should I refresh the database?

You should get a copy of the database every time you use FixDist. Before you begin searching any database, you should check the timestamp displayed on the main menu to see when was the last time you updated a database. If the timestamp is older than one day, you need to refresh the database to ensure you have a current one.

Why are outdated AIX V3 fixes unavailable on the FixDist servers?

The fix policy for the AIX V3 operating system is based on delivering only the most recent fixes. This policy is commonly referred to as preventive supersedes.

The result of this policy on FixDist servers is the deletion and removal of superseded fixes from the database and the deletion of those superseded fixes from the server.

What is the fix policy for AIX V4 in lieu of the above question?

The fix policy for the AIX V4 operating system is more traditional. Few, if any fixes are superseded in V4. This policy will ensure that any fixes released into the AIX V4 database will remain available for an extended period of time. The AIX V4 FixDist Database will continue to allow the selection and downloading of all fixes for an extended period of time.

What is the fix policy for CAD/CAM?

CAD/CAM fixes are delivered in much the same way as AIX V4 fixes are. The fix you select is the fix you receive. This is different from the way we deliver fixes for AIX V3 which is to deliver the latest superseding fix to you.

This policy will ensure that any fixes released into the CAD/CAM database will remain available for an extended period of time. The CAD/CAM FixDist Database will continue to allow the selection and downloading of all fixes for an extended period of time.

Where are the database files kept?

The database files are kept in a subdirectory, under the target directory you specify. The name of the subdirectory is fddb.

How Can I use the download later option?

By default, the download method is set to immediately download the selected fixes. From the main menu, you can toggle between Now and Later.

The later option generates FTP scripts that can be used through a cron job. Normally, FixDist creates a .netrc file that is called by the ftp command. Because there is an inherent file size limitation on the .netrc file of 4096 bytes, FixDist will often create more than one .netrc file, usually calling them .netrc0, .netrc1, etc... etc...

By selecting Later as the download method, you are instructing FixDist to create the necessary .netrc* files and hold off executing the ftp command. You can then create your own shell script that executes the ftp command using the .netrc* files created by FixDist.

The .netrc* files are created in the $HOME/.fixdist_home directory.

When creating a shell script, the logic below should be followed:

       Copy .netrc0 to .netrc
       Run ftp 
       Copy .netrc1 to .netrc
       Run ftp  again
       Copy .netrc2 to .netrc
       Run ftp  again

What if my RISC System/6000 cannot get to the FixDist server?

FixDist currently supports two types of proxy FTP. See the chapter on "Using Proxies" for more information.

If you are running in a SOCKS environment, you can specify the path and executable to run the SOCKS version of ftp. In the Options menu, select Ftp Command, in the resulting dialog box, enter the complete path and filename of the executable (e.g. /usr/bin/rftp).

Still, some network environments prevent you from using any of the above alternatives. There is a rather tedious way to run FixDist to help you figure out what requisites are needed.

This process is to manually get the appropriate FixDist database from the server and use it to generate the ftp scripts as described in the above question How Can I use the download later option?

For file names of the databases, see the above question on "How does FixDist keep track of fixes on the server?".

The basic steps to using FixDist when your RISC System/6000 cannot get to the Internet directly or indirectly are:

  1. Manually ftp get the database (fd.db.Z or 41.fd.db.Z) from the FixDist server and put it on your RISC System/6000 in the directory to be your target directory.
  2. Untar the database
            zcat fd.db.Z | tar -xvf -
  3. Run FixDist. Specify any system as your FixDist server and specify the target directory as the directory where you just untar'd the database.
  4. Click on Apply/Save and FixDist will look for the database files in the target directory. You can use FixDist to access the database when you see the fix type of Generally Available Fixes appear. Set your Download Method to Later so FixDist will not attempt to go to the server.

    CAUTION:Do not attempt to Refresh your database. Doing so won't overwrite the database but may cause FixDist to hang waiting for a response.

How do I install a fix after receiving it via FixDist?

FixDist does not install fixes for you. It is a fix distribution tool, not an installation tool. The images received from FixDist are typically in installp format. This means that you can use SMIT to install the fixes.

Installing fixes requires that you be the root user. SMIT (calling the installp programs) looks for a table of contents file named .toc in the target directory. If .toc does not exist, it will be created automatically. If it already exists, SMIT may NOT recreate it.

We recommend that each time you download a fix, you manually run the inutoc command on the target directory to create the .toc file. Do not rely on SMIT to create it for you because it may already exist when you download fixes repeatedly. Since SMIT may NOT recreate the .toc if one already exists, SMIT may not find the recently downloaded fixes in your target directory.

Are there any README files for the fixes?

Yes. For each fix downloaded, you will usually find that an additional informational file has been downloaded as well. The info files will have a suffix of .info in the filename.

How do I recover from an interrupted download?

FixDist works by creating .netrc macros to automate the download of the selected filesets via anonymous ftp. If you are downloading a fix and the download is interrupted, when you restart, FixDist will generate a new, complete .netrc macro to get the necessary files. FixDist is a stateless application -- it does not "remember" what files have already by retrieved from the server. To avoid downloading the same fixes again (those that were successfully downloaded before the interruption), you will need to do the following:

  1. Select the Download Later option. Using the motif interface, click the button marked "Later" under the Download Method section on the main screen. Using the curses interface, select Specify Configuration Options... from the main screen. In the dialog box, select the Download: option and choose "Later".
  2. Select the same fix you were downloading before the interruption.
  3. When you select "Start Download" or "Continue", FixDist will create a series of .netrc files in the $HOME/.fixdist_home directory. Depending on how many filesets are required for the fix, there may be several or only one. They will be named .netrc0, .netrc1, etc.
  4. Exit FixDist, and go into the $HOME/.fixdist_home directory. Edit the .netrc files and remove from the macros those files that you have already downloaded. Depending on how many filesets are required and how many you have already successfully downloaded, you may end up removing some of the .netrc files altogether.
  5. Finally, download the remaining filesets. See How can I use the download later option? for more details on how to use these .netrc files.

Note: You cannot use the exclusion list to accomplish this. If FixDist finds a file in the exclusion list, it assumes that the fix that file is part of has already been downloaded successfully. This means that the file along with all of the requisite files for that file will be excluded.

TapeGen Introduction

TapeGen is a service tool from IBM that enables you to create a stacked tape containing SMIT installable fixes. You create a stack file that lists all the images you want stacked onto a tape and TapeGen does the rest.

TapeGen Requirements

The PTF images must be installable through SMIT. This means the fixes must be in installp format.

The tape device must have the block size set to 512.

Create the stack file. It must contain a list of PTF images that are to be written to tape.

Using TapeGen

TapeGen may be executed by typing the following :

    tapegen -l stack_file -s fix_dir [-d device] [-w work_dir]

Note: The flags encased in brackets [ ] are optional flags. Descriptions of the applicable flags are listed below:

    -l  Name of the stack file.  One PTF image per line.

    -s  Location of the PTF images.

    -d  Tape device name.  The default is /dev/rmt0.

    -w  Location where temporary files will be created.
             The default is /tmp.

Once the command is executed you will be asked to verify the parameters, see example below:

                   AIX TapeGen Utility Version 1.13
   The following parameters will be used to create a stacked tape:

         STACK FILE                    stack.list
         PTF IMAGES DIRECTORY          /images/32
         TAPE DEVICE                   /dev/rmt0
         TAPE TYPE                     8MM
         WORK DIRECTORY                /tmp

   Do you want to proceed with the above parameters (y/n)?

If the parameters are correct and TapeGen is executed then the following informational message will be displayed on the screen.

     Verifying if the tape device block size is set to 512...done

     Insert a writeable tape cartridge into /dev/rmt0 and press enter

Press enter to start the process. TapeGen will display several informational messages on the screen to verify the steps of writing to the tape.

How TapeGen Works

The Concept of "Stacked Tapes"

TapeGen puts PTF images onto tape in a format that enables SMIT or installp to update your licensed programs directly from the tape without needing to copy the fix package onto your hard disk first. This tape format is called "stacked tape" because the images are stacked one after another on the tape.

SMIT (installp) requires more than just a stacking of PTF images one after another. The install process reads a table of content file in order to find the locations of the images on the tape.

The Format of "Stacked Tapes"

The first and second image on the tape are reserved, empty images. These reserved areas are not used on fix tapes. They are used by bootable product installation tapes.

The third image is a special plain text file called the table-of-contents or toc. As the name implies it contains content information about the images that are on the tape.

The remaining images are the actual PTF images. If FixDist is used to created the stack file, they will be ordered on the tape in such a way as to limit the amount of "tape play". Tape play is the process of skipping images to get to another image.

The Building of "Stacked Tapes"

TapeGen uses the stack file to determine what PTF images will be put on the tape.

Then TapeGen verifies that all the images are available to be stacked.

Next, each PTF image is opened and it's toc fragment is extracted. All the toc fragments are brought together in an ordered format to create the table-of-contents file that will become the third image on the tape.

After rewinding the tape, we begin the actual writing to the tape. We call upon dd (device dump) to write each image to the tape. When the last image is done, the building of the stacked tape is complete.

Trademarks and Acknowledgements

The following trademarks and acknowledgements apply to this information: