File System Layout

Directory Hierarchy

The Altair Accelerator follows a non-intrusive model of file installation. All the files installed for the product are within the single branch of the file system where the product is installed. No files are installed into other areas of the file system.

This leads to a convention that you should follow for managing the installed files. Establish a single directory to hold all Altair Accelerator products and only install Altair Accelerator releases into this area.

The intention is that this single Altair Accelerator directory will contain sub-directories for each release version of the products, named after the release. All the files installed for a given release version will be placed into the file system branch below their release directory.

Within the release directory, along with subdirectories holding commonly shared files, there are sub-directories for each platform (machine type) that is used within the network. These sub-directories hold the executables for those platforms. The expectation is that each machine in the network can access the installed files by mounting this area onto their system via a Network File System (NFS). This allows them to use a local path on their system to access their executables in the installation area.
Top Level Installation Directory Structure

    opt/
        rtda/
            current/ --> 2015.03 <-- symbolic link
            2014.03/ ...
            2014.09/ ...
            2015.03/ ...
                linux/ ...
                    bin/...
                win64/ ...
                    bin/...

For instance, if the top level product installation directory is /opt/rtda, then it is recommended that you install the 2016.09 version into a subfolder with the path /opt/rtda/2016.09.

Later, when you install the 2017.03 version, you will install it into the path /opt/rtda/2017.03.

There are a set of files, such as configuration files, within each release that are expected to be changed locally. These site specific information and customization files exist under the release's common/local subdirectory, like this: /opt/rtda/2016.09/common/local/*. These files are changed within a release during the life of the release. It is important to preserve these files and carry them forward when a new release is installed.

The recommended best practice for managing these local files is to place them in a folder outside the release, then use a symbolic link to that folder from the common/local within the release . This layout makes it particularly easy to move them forward into new releases.
Top Level Installation Directory Structure (showing release-independent /local directory)

    rtda/
        local/ <-- Holds changed files outside of a release.
            environments/
            capsules/
            ...
        current --> 2015.09
        2014.09/ ...
        2015.03/ ...
        2015.09/
            common/
                etc/
                local/ --> ../../local <-- symbolic link
                tcl/
                scripts/
            linux/ ...
                bin/

This recommended technique requires that you manually create the needed release-independent /local file. The installation process doesn't take on the authority to affect any files outside the release directory, so it will not create that file. You need to create this recommended layout after doing the first install.

This local information can be preserved and carried forward during installation of new releases. See Local Directory to read the details about the installation options for controlling this.

The description of the files so far, shows the way that the /local directory in each release can be a symbolic link to the release-independent /local directory as a way to have one file that is accessed in various ways.

The final refinement of this description is that there is also a /local folder within each platform area. This allows you to have different local values for each platform. However, if you want to have a single place for all local values and you want this to apply to each platform within a release, then you can use symbolic links to cause this to happen.

Installation Directory Structure (showing platform-specific /local directory)

    rtda/
        licmon/
        local/ <-- Holds changed files outside of a release.
            environments/
            capsules/
            ...
        vnc/
        current --> 2015.09
        2014.09/ ...
        2015.03/ ...
        2015.09/
            common/
                etc/
                local/ --> ../../local <-- symbolic link
                tcl/
                scripts/
            linux/ ...
            win64/
                bin/
                lib/
                etc/ --> ../common/etc <-- symbolic link
                local/ --> ../common/local <-- symbolic link
                tcl / --> ../common/tcl <-- symbolic link
                scripts/ --> ../common/scripts <-- symbolic link

            macosx/ ... 

This layout is showing a suggested relationship between various /local directories that uses symbolic links to have all the various /local directories be a single one, outside the release.

Each platform section within a release has a /local directory that is a symbolic link to the <version>/common/local directory in the release that is independent of the platform. The link is created so there is one shared /local directory across all platforms within the release.

Further, the shared <version>/common/local directory is a symbolic link to the top level release-independent /local directory. This link is created so there is one shared /local directory across all releases and all platforms.

This layout provides an easy way to have a setup where there is one place where all locally changed files exist. This setup requires that the top level release-independent /local directory be created manually, because it is not created automatically by the installation. The /local directories and links within the version and within the platforms are created by the installation process. The installation will make them links to the top level directory if it is directed to during the install.

In the detailed layout above the directory /vnc contains the files associated with Accelerator. See the documentation on Altair Accelerator User Guide for more information.

The directory /licmon is the default location for the Altair Monitor User Guide.