Server Installation

Top  Previous  Next

UnForm 10 for Linux requires C libraries 2.5 or higher.  You can check the version on your system with the command ldd --version.  Note that the numbering convention does not use zero-padding, so 2.10 is higher than 2.5.

 

Another thing to note is that UnForm can be configured to use third party packages, and it is usually best to be on a recent version of Linux in order to have access to recent versions of those packages.  The publisher recommends using a well supported (commercial or community) Linux with readily available packages, such as Redhat, CentOS, Ubuntu, Debian, or OpenSUSE.

 

Login as root, or use "sudo -i" to become an interactive super user.

 

Create a directory to hold the UnForm files, and change to that directory.

 

 Example:        

 umask 0

 mkdir /opt/uf100

 cd /opt/uf100

 

Uncompress and extract UnForm from the download file.  If the uncompress program is not available, you can use gunzip instead.

 

 gunzip uf100_xxx_tar.gz

 tar xvf uf100_xxx_tar

 

Execute the UnForm set up script.

 

 ./ufsetup.sh

 

The ufsetup.sh script will create two scripts, called /usr/bin/uf100c and /usr/bin/uf100d.  The uf100c program is the client, while uf100d manages the server.

 

The setup script will offer to create the user 'unform', or if found, to run UnForm under that user.  If you choose not to run UnForm under that user, it will default to starting up as 'root', and you will need to edit the uf100d.ini file [apache] section to specify a different user under which to run the private Apache HTTP server instance (since that cannot run as root).

 

Note that earlier versions of UnForm defaulted to running as 'root', so if you migrate rule files and other files to version 9, you might need to adjust permissions to allow the 'unform' user to read and write those files.

 

The setup script will also look for an Apache web server in several common locations.  If it isn't found, you will be prompted for a location, both of the path to the httpd executable and also a directory where Apache modules reside.

 

If Apache is not installed on your Unix system, you must install it before installing UnForm.  Apache is normally present on any Linux or OSX system, but may or may not be present on AIX systems, though is readily available from IBM.

 

The setup script will test to see if the chkconfig program exists on the system (many modern Linux systems have this), and if so and the /etc/init.d/uf100d script does not exist, it will offer to install it.  This will enable automatic startup of the UnForm server at boot time, and the server can be controlled via the 'service' command line typically used to manage other services: 'service uf100d start', for example.

 

Activate evaluation mode, or activate permanently, using ./license.sh.

 

Start the server: uf100d start

 

Run uf100c –v command to ensure UnForm is installed and set up correctly. The output from this command will display information about the installation.  Note that uf100c requires Perl version 5 or higher.

 

See the licensing chapter for activation information.

 

 

Automatic Startup

The install script will automatically attempt to set up UnForm as a service that starts at boot time.  It recognizes several standard Linux methods for doing this.  However, if this fails due to having an unknown or older Linux distribution, you can review these methods:

 

 

Add a line to /etc/inittab to run uf100d start one time at all regular run levels
 

 uf100:2345:once:/usr/bin/uf100d start

 

 

Create a script S99uf100d, and place this script in any /etc/rc#.d directory associated with normal run levels (typically /etc/rc2.d, /etc/rc3.d, or /etc/rc5.d). It doesn't hurt to place the script in levels 2, 3, and 5. The script can be as simple as:

 

 #!/bin/sh

 uf100d start

 

On some systems there is a pre-installed script called "/etc/init.d/rc.local" that runs at boot time.  You can place the line 'uf100d start' in this script.

 

 

Shared Library Dependencies

The install script will attempt to create symlinks to shared libraries that it depends on.  If this fails for some reason, you can follow these steps:

 

Two optional features require access to shared libraries on Linux, to support SSL and Zlib compression.  These are loaded as libssl.so, libcrypto.so, and libz.so at runtime whenever they are required.  In some cases, these generic names might not be defined in the system's lib directories.  If that is the case, then you can define symbolic links with these names to the correct local paths.

 

For example, if the installed and available name for libssl.so is /lib/libssl.so.0.9.8, you can create a symbolic link like this:

 

 ln -s /lib/libssl.so.0.9.8 /usr/lib/libssl.so

 

You will likely have the same requirement for the related libcrypto.so file:

 

 ln -s /lib/libcrypto.so.0.9.8 /usr/lib/libcrypto.so

 

Verify each of the three .so files are present or links to local versions: libssl.so, libcrypto.so, and libz.so.  Note that if UnForm is a 64-bit version, you will need to perform this step for 64-bit libraries, typically found in /usr/lib64.

 

Custom Launch Settings

The /usr/bin/uf100d script will look for the file uf100d.include in the UnForm home directory.  If found, its lines will be included in the script with ". uf100d.include".  Use this feature to set up custom environment variables or perform other initialization tasks.  The $n variables contain the arguments passed to the script, such as 'start' or 'stop'.