There are a couple of gotchas with this setup. Eg. I wanted to install on a Debian 4.x server and the installer reported that the platform is not supported.
To get over this, you've to start the installer with an option:
./installFMS -platformWarnOnly
The installer script was written for RedHat and it's not 100% compatible with Debian. It complains about a missing
/sbin/chkconfig
binary. This is not a big problem since it would only set the
/etc/init.d/fms
script to start automatically during every reboot. In Debian you can do this after the FMS installer finished with this:
update-rc.d fms defaults
You're not done yet, because the FMS components miss a couple of shared libraries. to be exact, the following:
The
libnspr4.so
can be installed with the
libnspr4-dev
package, thus issue this command:
apt-get install libnspr4-dev
The
libasneu.so.1
is provided by Adobe and it's already in the FMS directory (eg.
/opt/adobe/fms
). We only have to make sure the shared lib is available to the FMS apps. For this you've to create a file (eg.
adobe_fms.conf
) in
/etc/ld.so.conf.d
and put in it the path to the FMS directory. Now regenerate the dynamic linker run-time bindings by executing
ldconfig
.
Check whether the above change was successful by executing
ldd /opt/adobe/fms/fmscore
and looking for a line like
libasneu.so.1 => not found
. If the lib was found by
ldd
than you're all set.
FMS should run fine from here. You can start it with an
invoke-rc.d fms start
manually or reboot the server and FMS will be started automatically.
P.S.: note that FMS 3 does not depend on the openssl libs or the crypto libs as FMS 2 did.
P.S.2: if you're a very convenient person, you might want to give a shot to the
installer patch made by Markus Bertheau. The patch merely alters the installer script to accept Ubuntu as a distro (you won't have to use the
-platformWarnOnly
option) and adds a few Ubuntu/Debian specific changes (like automatically creating
fms
user and group and also adds the
update-rc.d fms defaults
way of autostart configuration. However the library dependency resolution still remains a manual task.
Comments
FMS 3.5
-platformWarnOnly
option is no longer necessary for running the installer (installFMS
) on a non-RedHat platform. apart from that, the procedure is pretty much the same."killall" in server script fails
After "aptitude install psmisc" the scripts are working fine.
Re: "killall" in server script fails
psmisc
as one of the first packages after an install-from-scratch, so I forgot that it was not there by default. I think this package should make it into the base packages that Debian installer puts on your system automatically.Just for note (it is not needed by FMS): the other similiar package is
procps
which is not in the "core" dependency tree ... I mean no other "basic" package depends on it. It is automatically installed by the Debian installer as part of the base system packages, but if you install a system _really_ from scratch (not using the Debian installer, but hand picking every single package), then you should keep in mind thatprocps
is pretty much a must have since it contains utilities likekill
that is used by most standard init.d scripts (and actually all sorts of scripts).FMS 3.5.4 with Debian 5.0
Re: FMS 3.5.4 with Debian 5.0
cd /opt/adobe/fms
ldd fmsadmin
ldd fmscore
ldd fmsedge
ldd fmsmaster
For a Debian 5.0.5 (Linux fms-test 2.6.26-2-686 #1 SMP Wed May 12 21:56:10 UTC 2010 i686 GNU/Linux) and FMS 3.5.0 (r405) the above commands print the following output:
$ ldd /opt/adobe/fms/fmsadmin
linux-gate.so.1 => (0xb77d2000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb77ae000)
libasneu.so.1 => /opt/adobe/fms/libasneu.so.1 (0xb77a5000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb779b000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7797000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb76a9000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7683000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7676000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb751b000)
/lib/ld-linux.so.2 (0xb77d3000)
$ ldd /opt/adobe/fms/fmscore
linux-gate.so.1 => (0xb77c3000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb779f000)
libnspr4.so => /usr/lib/libnspr4.so (0xb776b000)
libplc4.so => /usr/lib/libplc4.so (0xb7766000)
libplds4.so => /usr/lib/libplds4.so (0xb7763000)
libasneu.so.1 => /opt/adobe/fms/libasneu.so.1 (0xb775a000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb7751000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb774d000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb765f000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7639000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb762b000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb74d0000)
/lib/ld-linux.so.2 (0xb77c4000)
$ ldd /opt/adobe/fms/fmsedge
linux-gate.so.1 => (0xb7707000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb76e3000)
libasneu.so.1 => /opt/adobe/fms/libasneu.so.1 (0xb76da000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb76d0000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb76cc000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb75de000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb75b8000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb75ab000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7450000)
/lib/ld-linux.so.2 (0xb7708000)
$ ldd /opt/adobe/fms/fmsmaster
linux-gate.so.1 => (0xb7767000)
libpthread.so.0 => /lib/i686/cmov/libpthread.so.0 (0xb7743000)
libnspr4.so => /usr/lib/libnspr4.so (0xb770f000)
libplc4.so => /usr/lib/libplc4.so (0xb770a000)
libplds4.so => /usr/lib/libplds4.so (0xb7707000)
libasneu.so.1 => /opt/adobe/fms/libasneu.so.1 (0xb76fe000)
librt.so.1 => /lib/i686/cmov/librt.so.1 (0xb76f5000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb76f1000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7603000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb75dd000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb75cf000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7474000)
/lib/ld-linux.so.2 (0xb7768000)
If these check out, you'll have to look somewhere else.
You could try to start FMS manually (not through the init script) so you can see all possible output, error messages that might be swallowed by the startup script. Check the usual logs too (syslog).
Running FMS 3.* on Debian Squeeze
/bin/sh
shell points to/bin/bash
and in Squeeze it points to/bin/dash
. There're important differences between the two and the shell scripts of FMS depend on them.To get FMS 3.* working again in Squeeze, you've to change the shell (in the first lines) of the following scripts from
/bin/sh
to/bin/bash
(these scripts are in the FMS install dir, eg./opt/adobe/fms
):adminserver
fmsmgr
server
uninstallFMS
/bin/sh
to point to/bin/bash
again. Run:dpkg-reconfigure dash
Running FMS 3.5.7 on Debian Squeeze
libcap.so.1
too in your library path. To install necessary lib:apt-get install libcap2
And create a symlink that FMS requires:
cd /lib
ln -s libcap.so.2 libcap.so.1
And verify that FMS Edge finds all libs it requires:
ldd /opt/adobe/fms/fmsedge
You should see no "not found" entries in the library dependency list.