Space banner


This documentation supports the 20.02 version of BMC Digital Workplace Advanced.

To view the latest version, select the version from the Product Version menu.

Preparing a Linux server for BMC Digital Workplace Catalog installation

Before you install BMC Digital Workplace Catalog on a Linux server, perform the following tasks as a system administrator with root user permissions. If you are installing BMC Digital Workplace Catalog for a high availability deployment, perform these tasks on each host Linux server.

Related topics

General troubleshooting

Installing Digital Workplace Catalog 20.02 on Linux 8 Open link

Before you begin

Review the information in Installation process overview for BMC Digital Workplace Catalog. Complete the Installation worksheets for BMC Digital Workplace Catalog.

To verify the correct JDK version

Starting from the 20.02 release, you must have Oracle JDK or OpenJDK 11 installed. 

1. To check for existing Java installations, run the alternatives command as shown in the following example. On some Linux systems, you can also use update-alternatives with the same syntax.

# alternatives --config java

There are 2 programs which provide 'java'.
  Selection    Command
*+ 1           /usr/lib/jvm/java-11-openjdk/bin/java
   2           /usr/lib/jvm/java-1.8.0_92/bin/java

Enter to keep the current selection[+], or type selection number:

2. If multiple Java installations are present, select OpenJDK 11.

Enter to keep the current selection[+], or type selection number: 2

To install OpenJDK 11

  1. Install OpenJDK 11 by running the following command:

    yum-config-manager --enable rhel-7-server-optional-rpms
    yum install java-11-openjdk-devel
  2. Confirm that the location of the OpenJDK 11 folder is represented in the symbolic link /usr/java/latest.

Preparing a server for installation as a non-root user


Skip the procedures below if you are using a root user to install BMC Digital Workplace Catalog.

If you want to install BMC Digital Workplace Catalog as a non-root user, the system administrator with root user access must grant the non-root user account with permission to the folders and files indicated in the following tables. If a file or folder in the tables does not exist on the server, create the file or folder and set its ownership and permissions.

Folder level permissions

Folder and filesReadWriteExecute



















File level permissions

Grant the permissions in the following table to the non-root user until the installation is complete. Afterward, you can remove these permissions.

Folder and filesReadWriteExecute
Shell profile file in the non-root user's home directory. (The file might be named something like .profile or .bash_profile.) These permissions should have been granted when the user account was created.







To grant permission to a user based on Linux groups

Your IT policy will determine whether you should grant permissions at the owner or group level. BMC recommends that a system administrator with root user permissions grants the permissions at the group level from the command line.

The following steps provide an example of one method for granting access from the command line.  

Create a group to assign the permissions that will be granted to all users who are part of the group.

groupadd dwpcatalog

Create a non-root user in the newly created group.

useradd -g dwpcatalog dwpuser

Assign a password to the newly created non-root user.

passwd dwpuser

Changing password for user dwpuser.
New password: (create a secure password)
Retype new password: (repeat the password)

For each file and folder specified in the tables, change the group ownership to the newly created group, and then change the mode to set the specified permissions for the group.

For example, to assign group level permissions to the /opt/bmc folder, run the following commands:

chown root:dwpcatalog /opt/bmc
chmod g+rwx /opt/bmc

After the non-root user account has been granted the required permissions to the specified files and folders, you can continue to the next procedure.

To install XMLStarlet

Use the RPM Package Manager:

yum install xmlstarlet

This installation might require installation of related dependencies.


A user with root privileges can navigate to  installerDirectory/install_files/ and type # rpm -Uvh xmlstarlet-1.3.1-1.el6.x86_64.rpm to install XMLStarlet.

Installing the Linux system dependencies

Before you install BMC Digital Workplace Catalog on a Linux server, use a user account with root level permissions to download and install the system dependencies (prerequisite libraries that the installer requires).

To install the Linux system dependencies


You must run the script before installing BMC Digital Workplace Catalog. It contains all the required libraries.

Use the following yum command to install the prerequisite Linux system libraries.

yum install -y zip glibc nspr libgcc libstdc++ unzip tar compat-libstdc++-33 compat-libstdc++-33.i686 glibc.i686 libgcc.i686 libstdc++.i686 net-tools python-setuptools php-pear

After you issue the yum install command, check for console messages that indicate a library could not be installed, for example, "No package compat-libstdc++-33.i686 available."

To install libraries if the library package could not be found

If the console shows libraries that could not be installed, you must find the missing libraries and issue the rpm command to install them. For example, some Linux repositories do not supply the 32-bit versions of the libraries, indicated by i686 in the package name.

Go to Open link and search for the missing library, for example, compat-libstdc++-33.

Search the page for the most recent 32-bit version of the library for your Linux version and architecture, for example, compat-libstdc++-33-3.2.3-72.el7.i686.rpm.

Copy the link to the rpm file.

Install the library onto your server by running the rpm command.
The following example shows a direct installation from a link to a public mirror that serves the library.

# rpm -ivh
Preparing...                          ################################# [100%]
Updating / installing...
   1:compat-libstdc++-33-3.2.3-72.el7 ################################# [100%]

If the library is installed successfully, then you can proceed to the next step. Otherwise, troubleshoot your environment with your system administrators.

Verifying space requirements and sticky bit permissions for the temporary folder

The BMC Digital Workplace Catalog installer stores logs and working files in a temporary folder that must have at least 1.5 GB of available space.

To check the available space in the temporary folder

Run the df -k command with the following syntax to read the amount of free space on a folder:

# df -k /tmp

If the available space is less than 1.5 GB, a system administrator must increase the size of the temporary folder allocation.

To remove sticky bit permissions on the temporary folder

If the installer fails to create a ARSystemInstalledConfiguration.xml file in the /tmp folder, you can try to install BMC Digital Workplace Catalog again after you remove the sticky bit permissions from the /tmp directory.


Removing the sticky bit permissions from a folder presents a security risk. If you need to remove sticky bit permissions, then reset the sticky bit permissions on the /tmp folder as soon as you have successfully installed and configured the application.

Configuring the server to improve performance

This section contains guidelines for modifying the server configuration to improve runtime performance.

To set the limits on the number of processes and open files

Verify the number of processes (nproc value) and the open files a process is allowed to run.

To review the currently allowed number of open files that a process can run, run ulimit -Ha to review the hard limit, and ulimit -Sa to review the soft limit.

# ulimit -Ha
open files                      (-n) 4096

# ulimit -Sa
open files                      (-n) 1024

In most cases, the value set by default is sufficient.

To maximize performance, set the number of open files allowed per process to 16,384, or to the maximum value allowed by your system administrator. To set the number, run ulimit -n followed by the value to set.

# ulimit -n 16384

# ulimit -Ha
open files                      (-n) 16384

# ulimit -Sa
open files                      (-n) 16384

If the system hangs, collect the Java heap dumps and thread dumps for troubleshooting. For information about collecting Java dumps and thread jumps, refer to KA00101754 Open link .

To increase the number of transactions and users using kernel tuning

Consider increasing the value of kernel parameters that affect the Linux server (or any other multithreaded server process). This increase ensures that BMC Digital Workplace Catalog can support the expected volume of transactions and users.

For example, consider increasing the following process features:

Number of threads available to a process.

Available memory—Some components require between 500 MB and 1 GB of memory to run.

Number of associated files or process descriptors—Descriptors should be at least 2.5 to 3 times the number of expected concurrent connections or 1024 (whichever is greater). Examples of connections include user logons and custom APIs.

Contact your system administrator or operating system vendor for more information about kernel tuning.

Where to go from here

Set up only one of the following database engines:

Database engineReference
Microsoft SQL ServerCreating Microsoft SQL Server databases
OracleCreating Oracle tablespaces
Was this page helpful? Yes No Submitting... Thank you


  1. Maximilian Bugl

    I think the installer for the python setuptools has been changed from "python-setuptools" in CentOS 7 to "platform-python-setuptools" Can you please verify and confirm, please.

    Aug 04, 2020 05:10
    1. Ravee Panjwani

      Thanks for your comment Maximilian Bugl.  I checked and it seems like the name change you are referring to was implemented in CentOS 8. Please let me know if that in sync with your expectation.


      Sep 30, 2020 05:23
  2. Marek Ceizel

    System Dependencies are not relevant for RHEL8. Some of the packages don't exist for that version. Please update.

    Sep 17, 2020 04:08
    1. Ravee Panjwani

      Thanks for your comment Marek Ceizel.

      There have been some changes in the dependencies required for RHEL8, but this topic refers to the steps applicable to RHEL7. I will get back to you on whether some of the warnings can be ignored for RHEL8.


      Sep 30, 2020 05:34
      1. Karl-johan Halleni

        Where can I find info about what is required when installing on RHEL8 in regards of dependencies?

        Apr 13, 2023 02:23
        1. Aaditi Lakade


          Please allow us some time to investigate and get back to you about installing on RHEL8.

          Thanks, Aaditi

          Apr 13, 2023 03:53
          1. Karl-johan Halleni

            I've now received the requested info here:

            Apr 17, 2023 01:42
            1. Olha Horbachuk

              Hi Karl-johan Halleni,

              It is good to know that the knowledge article helped you. We added this KA to our docs but we also need to implement some changes after the R&D investigation.



              Apr 20, 2023 05:57