Installing FME Server as a System Service (Linux)
You can install FME Server as a system service that starts when you start your system. You should do this only if you have set up system services before and understand the different run levels on your system.
WARNING: Configuring scripts to run at start-up on Linux is an advanced task. The steps for doing so vary, depending on your configuration. Use the steps listed in this section as a guide only.
FME Server is composed of a series of components, and each component has its own script. There are a few scripts that must be modified, depending on the choices you made during installation. If you performed an express installation or installed the built-in Database and Web Application Server, ensure that all scripts are moved.
To install FMEServer as a system service, you must make some changes to the init.d and rc*.d files:
- Make a copy of the FME Server start-up scripts:
- <FMEServerDir>/Server/startup/FMEServerAppServer
- <FMEServerDir>/Server/startup/FMEServerDatabase
- <FMEServerDir/Server/startup/FMEServerSMTPRelay
- <FMEServerDir>/Server/startup/FMEServerCore
- <FMEServerDir>/Server/startup/FMEServerEngines
- <FMEServerDir>/Server/startup/FMEServerCleanup
- <FMEServerDir>/Server/startup/FMEServerWebSocket
- /etc/init.d/FMEServerAppServer
- /etc/init.d/FMEServerDatabase
- /etc/init.d/FMEServerSMTPRelay
- /etc/init.d/FMEServerCore
- /etc/init.d/FMEServerEngines
- /etc/init.d/FMEServerCleanup
- /etc/init.d/FMEServerWebSocket
-
Create links from the scripts you just copied to a script in the correct run level, depending on your distribution and configuration.
For Debian, this is typically 2 (rc2.d), and for Red Hat and Fedora, this is typically 5 (rc5.d). If you are unsure what run level you should use, we recommend that you contact your system administrator before proceeding.
If you are on a Debian based distribution such as Ubuntu, you can run the following commands:
update-rc.d FMEServerCore start 99 2 . stop 98 6 .
update-rc.d FMEServerEngines start 99 2 . stop 98 6 .
update-rc.d FMEServerAppServer start 99 2 . stop 99 6 .
update-rc.d FMEServerDatabase start 98 2 . stop 99 6 .
update-rc.d FMEServerSMTPRelay start 98 2 . stop 99 6 .
update-rc.d FMEServerCleanup start 99 2 . stop 99 6 .
update-rc.d FMEServerWebSocket start 99 2 . stop 99 6 .
-
Create the Web Application Server startup link:
sudo ln -s /etc/init.d/FMEServerAppServer /etc/rc2.d/S99fmeserverappserver
-
Create the Database Server startup link:
sudo ln -s /etc/init.d/FMEServerDatabase /etc/rc2.d/S98fmeserverdatabase
Note: It is important that this is S98, not S99.
-
Create the FME Server Cleanup service link:
sudo ln -s /etc/init.d/FMEServerCleanup /etc/rc2.d/S99fmeservercleanup
-
Create the FME Server WebSocket service link:
sudo ln -s /etc/init.d/FMEServerWebSocket /etc/rc2.d/S99fmeserverwebsocket
-
Create the FME Server Core startup link:
sudo ln -s /etc/init.d/FMEServerCore /etc/rc2.d/S99fmeservercore
-
Create the FME Server Engines startup link:
sudo ln -s /etc/init.d/FMEServerEngines /etc/rc2.d/S99fmeserverengines
-
Create the Web Application Server shutdown link:
sudo ln -s /etc/init.d/FMEServerAppServer /etc/rc6.d/K99fmeserverappserver
-
Create the Database Server shutdown link:
sudo ln -s /etc/init.d/FMEServerDatabase /etc/rc6.d/K99fmeserverdatabase
-
Create the FME Server Cleanup service shutdown link:
sudo ln -s /etc/init.d/FMEServerCleanup /etc/rc6.d/K98fmeservercleanup
Note: It is important that this one is K98, not K99.
-
Create the FME Server WebSocket service shutdown link:
sudo ln -s /etc/init.d/FMEServerWebSocket /etc/rc6.d/K98fmeserverwebsocket
Note: It is important that this one is K98, not K99.
-
Create the FME Server Core shutdown link:
sudo ln -s /etc/init.d/FMEServerCore /etc/rc6.d/K98fmeservercore
Note: It is important that this one is K98, not K99.
-
Create the FME Server Engines shutdown link:
sudo ln -s /etc/init.d/FMEServerEngines /etc/rc6.d/K98fmeserverengines
Note: It is important that this one is K98, not K99.
placing the scripts here:
On Red Hat, you can use the chkconfig command. This automatically adds them to runlevel 3. If you need to use a different run level, you need to modify the chkconfig header of these scripts, or manually:
chkconfig --add FMEServerCore
chkconfig --add FMEServerEngines
chkconfig --add FMEServerAppServer
chkconfig --add FMEServerDatabase
chkconfig --add FMEServerSMTPRelay
chkconfig --add FMEServerCleanup
chkconfig --add FMEServerWebSocket
On other distributions, or to manually set up the startup scripts, create the proper links in the appropriate run level directory.
The following steps use a run level of 2.