Changing the JVM
PKI Services Manager uses Java technology to support running on multiple platforms. PKI Services Manager installs its own Java Virtual Machine (JVM) and uses this installed JVM by default. It is also possible to configure PKI Services Manager to use a different JVM.
Note: If you upgrade your JVM (whether manually or automatically) it is installed to a new directory, so you'll need to repeat the following procedures to copy the unlimited strength policy files to the new directory and update the pointers to the new directory.
Apply the Unlimited Strength Jurisdiction Policy Files to your JVM
- Download the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files from Oracle. Uncompress and extract the downloaded file.
Note: If you prefer not to download the Unlimited Strength Jurisdiction Policy files from Oracle, you can use the ones located in the default PKI Services Manager JVM, typically in /opt/attachmate/pkid/_java/lib/security.
- Locate the following two policy files.
- Replace the existing limited strength policy files (located in <java-home>\lib\security on Windows or <java-home>/lib/security on Unix) with the unlimited strength versions you extracted in the previous step.
To change the JVM on Windows
Note: If you upgrade PKI Services Manager, you do not need to repeat this procedure. The edited registry setting remains after an uninstall.
- Open the Windows Registry Editor and navigate to the following key (or create this key if it does not yet exist).
(On 64-bit systems, use HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Attachmate\ReflectionPKI.)
- Create a new string value named JvmPath and set the value to point to the full path where jvm.dll is located (<java-home>\bin\client).
- (Optional) You can create and edit a value called JvmParams for supplying any additional parameters or arguments. Use this feature if you are also configuring connections via a SOCKS proxy.
Note: The path to the JVM can also be set using the environment variable PKID_JVM_PATH on Windows systems. If the path is specified in both the registry and using the environment variable, the environment variable takes precedence.
To change the JVM on UNIX
To configure a JVM on UNIX you need to modify the PKID_JVM_PATH keyword in /etc/pkid.conf to point to the JVM shared library (either libjvm.so or libjvm.sl depending on your UNIX operating system), as described in the following procedure.
Note: If you upgrade PKI Services Manager you'll need to run uninstall.sh with the upgrade option in order to preserve your modified path setting, as described below.
- Log in as root.
- Add write permissions to /etc/pkid.conf:
chmod u+w /etc/pkid.conf
- Open /etc/pkid.conf in a text editor.
Set the value of PKID_JVM_PATH to point to the JVM shared library. For example, on Linux:
- Save the modified script.
- Remove write permissions from /etc/pkid.conf.
chmod u-w /etc/pkid.conf
- Restart PKI Services Manager:
To configure a separate JVM to be used only by PKI Services Manager
On some Unix systems, if you already have a JVM on your system that you use for other purposes, you can configure a separate JVM private to PKI Services Manager. The following procedure describes how to do this on Linux systems:
- Download the non-RPM version of the JVM.
- Extract the JVM package.
- Move the extracted JVM directory to a directory of your choice in the PKI Services Manager data directory (typically /opt/attachmate/pkid). For example:
mv /extracted_jvm /opt/attachmate/pkid/jre_latest
- Apply the Unlimited Strength Jurisdiction Policy Files to this JVM.
- Edit /etc/pkid.conf to configure PKI Services Manager to use this JVM, as described in the preceding procedure.
To preserve your modified JVM setting when upgrading on UNIX systems
This procedure creates a backup file that includes your modified path to the JVM (along with other location settings you specified when you installed PKI Services Manager). When you install the upgrade, the installer locates this backup and asks if you want to preserve your settings.
To uninstall the old version
- Log in as root.
- Run uninstall.sh using the upgrade option. (By default, this script is installed to /opt/attachmate/pkid/bin/.) For example:
Note: The upgrade option creates a backup of your current location settings (including your modified JVM path). It does not change the default uninstall behavior for backing up the configuration directory, as described in Upgrading From Earlier Versions.
To install the newer version
- Log in as root.
- Run the install script:
- If you uninstalled using the upgrade option, you will see a message like the following:
Found location settings from prior installation:
pkidHome = /opt/attachmate/pkid
pkidJvmPath = /opt/attachmate/pkid/jre_latest
systemBin = /usr/local/bin
systemSbin = /usr/local/sbin
Use locations from prior installation (y/n):
- Enter y to preserve your settings.