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.
Before you begin
Review the information in Installation process overview for BMC Digital Workplace Catalog. Complete the Installation worksheets for BMC Digital Workplace Catalog.
Confirming the Oracle Java JRE or OpenJDK location to include in the installation options file
To check for existing Java installations, run the
alternativescommand as shown in the following example. On some Linux systems, you can also use
update-alternativeswith the same syntax.Example
# alternatives --config java There are 3 programs which provide 'java'. Selection Command ----------------------------------------------- 1 java-1.7.0-openjdk.x86_64 (/usr/lib/jvm/java-1.7.0-openjdk-220.127.116.11-18.104.22.168.el7_3.x86_64/jre/bin/java) *+ 2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-22.214.171.124-2.b15.el7_3.x86_64/jre/bin/java) 3 /usr/java/jre1.8.0_144/bin/java Enter to keep the current selection[+], or type selection number:
If multiple Java installations are present, select the most recent Java version as instructed.Example
Enter to keep the current selection[+], or type selection number: 3
To locate the correct path to include in the installation options file, search for the Java path.Example
# ls -al /usr/java total 12 drwxr-xr-x 3 root root 4096 Aug 8 00:50 . drwxr-xr-x. 14 root root 4096 Jul 22 00:13 .. lrwxrwxrwx 1 root root 16 Aug 8 00:50 default -> /usr/java/latest drwxr-xr-x 7 root root 4096 Aug 8 00:50 jre1.8.0_144 lrwxrwxrwx 1 root root 22 Aug 8 00:50 latest -> /usr/java/jre1.8.0_144
If you use Oracle JRE, by default, Oracle installs Java into a folder with a version number, such as /usr/java/jre1.8.0_144, and creates the /usr/java/latest symbolic link to point to the folder. When you edit the installation options file, specify the symbolic link rather than the versioned folder. When you update the server's Java version, the symbolic link will remain consistent and keep your application running after the update.
If Java is not installed, download and install the latest release of Java version.
If your Linux server is connected to the internet, you can install Java directly after you find a link to the 64-bit RPM from Oracle's website. For example, to download and install Oracle Java 1.8.0_151, run the following command:Example
rpm -ivh http://javadl.oracle.com/webapps/download/AutoDL?BundleId=227541_e758a0de34e24606bca991d704f6dcbf OR wget http://javadl.oracle.com/webapps/download/AutoDL?BundleId=227541_e758a0de34e24606bca991d704f6dcbf rpm -ivh AutoDL\?BundleId\=227541_e758a0de34e24606bca991d704f6dcbf
- After you have installed Java, return to steps 1 and 2 to set the default Java version. Then, follow step 3 to confirm that the location of the Java folder is represented in the symbolic link /usr/java/latest.
Preparing a server for installation as a non-root user
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 files||Read||Write||Execute|
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 files||Read||Write||Execute|
|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.
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.Example
Create a non-root user in the newly created group.Example
useradd -g dwpcatalog dwpuser
Assign a password to the newly created non-root user.Example
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:Example
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 can run the install_dependencies.sh 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 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
The following example shows a direct installation from a link to a public mirror that serves the library.Example
# rpm -ivh ftp://126.96.36.199/linux/centos/7.3.1611/os/x86_64/Packages/compat-libstdc++-33-3.2.3-72.el7.i686.rpm ... 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
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 -Hato review the hard limit, and
ulimit -Sato review the soft limit.Example
# 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 -nfollowed by the value to set.Example
# 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 .
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 (client or browser) 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: