You are here: Administrator's Guide > Other Common Tasks > Working with the System Services > Installing FME Server as a System Service (Linux)

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

    placing the scripts here:

    • /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 .

  • 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.

    • 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 SMTP Relay startup link:

      sudo ln -s /etc/init.d/FMEServerSMTPRelay /etc/rc2.d/S98fmeserversmtprelay

      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 SMTP Relay shutdown link:

      sudo ln -s /etc/init.d/FMEServerSMTPRelay /etc/rc2.d/K99fmeserversmtprelay

    • 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.