Additional installation considerations (Linux)

Before you install data server products on Linux® operating systems, ensure that the system you choose meets the necessary operating system, hardware, software, and communications requirements. You can use the db2prereqcheck command to check whether your system meets the prerequisites for the installation.

For the most up-to-date installation requirements for data server products, see System requirements for IBM® Db2® for Linux, UNIX, and Windows. This techdoc uses IBM Software Product Compatibility Reports (SPCR). With the SPCR tool, you can locate and find complete lists of supported operating systems, system requirements, prerequisites, and other supported software for these database products.

In addition to system requirements, installing a data server product on supported Linux operating systems has the following considerations:

Multithreaded architecture limitations

If you are installing a Db2 32-bit database product on a Linux operating system, consider upgrading to a 64-bit operating system and installing the Db2 64-bit database product instead. The multithreaded architecture generally simplifies memory configuration however might affect the memory configuration of 32-bit Db2 database servers. Examples of such include:
  • Private memory for agent threads is allocated within a single process. The aggregate of all private memory allocations for database agents might not fit in a single process memory space.
  • Support for multiple databases is limited because all database shared memory segments for all databases are allocated in a single process. You might need to reduce the memory usage for some databases to activate all databases successfully at the same time. However, the database manager performance might be impacted. Another alternative is to create multiple instances and catalog the databases across the instances when you have sufficient system resources to support this configuration.

Distribution Requirements

Make sure that you update your kernel configuration parameters before you install a Db2 database product. The default values for particular kernel parameters might not be sufficient when you run a Db2 database system.

You might also have other products or applications that require Linux system resources. Make sure that you modify the kernel configuration parameters based on the needs of the working environment of your Linux system.

The kernel configuration parameters are set in /etc/sysctl.conf.

For more information about the sysctl command, see your operating system manual.

Package requirements

Table 1 lists the package requirements for SLES and RHEL distributions:
  • libpam.so.0 (32-bit) is required for Db2 database servers to run 32-bit non-SQL routines and JDBC type 2 driver applications in 32-bit JDK.
  • libpam.so.0 is required by IBM data server clients for Db2 user authentication.
  • libaio.so.1 is required for Db2 database servers that use asynchronous I/O.
  • libstdc++.so.6 is required for Db2 database servers and clients.
  • libstdc++33 and libstdc++43 are required for SLES 11.
  • One of ksh (AT&T Korn shell), mksh (MirBSD Korn Shell), or lksh (Legacy Korn Shell) is required for all Db2 database systems.
Table 1. Package requirements for SLES and RHEL
Package name Description
libaio Contains the asynchronous library that is required for data servers.
libstdc++ Contains libstdc++.so.6 that is not required for Linux on POWER® or SLES 11.

libxlc Contains libibmc++.so.1 (64 bit only) that is required for Linux on POWER little endian.
ksh or mksh or lksh AT&T Korn Shell or MirBSD Korn Shell or Legacy Korn Shell
Table 2 and Table 3 list the package requirements for SUSE Linux and Red Hat® distributions for Db2 partitioned database servers.
  • A remote shell utility is required for partitioned database systems. Db2 database systems support the following remote shell utilities:
    • rsh
    • ssh

    By default, the database systems use ssh shell utility when running the commands on remote Db2 nodes, for example, starting a remote database partition. To use the Db2 database system default, the openssh package must be installed (see following table).

    If you choose to use the less secure rsh remote shell instead, then you need to set the DB2RSHCMD registry variable, and inetd (or xinetd) must be installed and running. If the DB2RSHCMD registry variable is not set, then ssh is used by default. In addition, ensure that no messages that are triggered by the profile, or messages such as those in /etc/motd, are displayed if the logging in session is not an interactive shell. Tools such as db2ival might be disrupted otherwise.

  • The nfs-utils Network File System support package is required for partitioned database systems.

All required packages must be installed and configured prior to the Db2 database system setup. For general Linux information, see your Linux distribution documentation.

Table 2. Package requirements for SUSE Linux
Package name Description
openssh

This package contains a set of server programs, which allow users to run commands on (and from) remote computers via a Secure Shell. This package is not required if you configure data servers to use rsh.

rsh-server

This package contains a set of server programs that allow users to run commands on remote computers, login in to other computers, and copy files between computers (rsh, rexec, rlogin, and rcp). This package is not required if you use the default configuration of Db2 database systems with ssh. Using rsh is not recommended due to it's lack of security.

nfs-utils Network File System support package. It allows access to local files from remote computers.
Table 3. Package requirements for Red Hat
Directory Package name Description
/Applications/Internet openssh

This package contains a set of server programs, which allow users to run commands on (and from) remote computers via a Secure Shell. This package is not required if you configure data servers to use rsh.

/System Environment/Daemons openssh-server\

This package contains a set of server programs that allow users to run commands from a remote computer via a Secure Shell. This package is not required if you configure data servers to use rsh.

/System Environment/Daemons rsh-server

This package contains a set of programs, which allow users to run commands on a remote computer. Required for partitioned database environments. This package is not required if you use the default configuration of Db2 database systems with ssh. Using rsh is not recommended due to it's lack of security.

/System Environment/Daemons nfs-utils Network File System support package. It allows access to local files from remote computers.

Software considerations

  • (Client and Server) To use Kerberos authentication, install the Linux krb5 Kerberos support via the operating system Kerberos packages.
  • An X Window System software capable of rendering a graphical user interface is required in the following scenarios:
    • You want to use the Db2 Setup wizard to install a Db2 database product on Linux or UNIX operating systems, or
    • You want to use graphical tools on Linux for x86 and Linux on AMD 64/EM64T.
  • Micro Focus does not offer support for any of its COBOL compiler products on SLES 11.
  • If you plan on using transparent Lightweight Directory Access Protocol (LDAP) on RHEL 5, you must install nss_ldap-253-35.el5 or later.

Security-enhanced Linux considerations

On RHEL systems, if Security-enhanced Linux (SELinux) is enabled and in enforcing mode, the installer might fail due to SELinux restrictions.

To determine whether SELinux is installed and in enforcing mode, you can use one of the following steps:
  • Check the /etc/sysconfig/selinux file.
  • Run the sestatus command.
  • Check the /var/log/messages file for SELinux notices.
To disable SELinux, you can use of the following methods:
  • Set it in permissive mode and run the setenforce 0 command as a superuser.
  • Change the value of SELINUXTYPE in /etc/sysconfig/selinux to disabled and reboot the machine.

If your Db2 database product installs successfully on an RHEL system, Db2 processes will run in the unconfined domain. To assign Db2 processes to their own domains, modify the policy. A sample SELinux policy is provided in the sqllib/samples directory.

Fapolicyd considerations

On RHEL 8 and above, the fapolicyd software framework controls the execution of applications based on a user-defined policy. In its default configuration, fapolicyd can block the installation of Db2 and most Db2 commands from executing. For this reason, Db2 does not support an environment where fapolicyd is active.