FAS 2.1.11 and FCSDK 2.1.5 were installed as a non-root user.
Their services were created using the appropriate add-service.sh scripts.
Media Broker was then started using the 'service' command.
At this point it tries to start but gets stuck in its 'starting' state.
Looking into the MB's master.console.log, it reports the following error message:
Failed to create temporary file for jnidispatch library: java.io.IOException: Permission denied
Media Broker uses JNA to access shared libraries. JNA normally uses the /tmp/jna folder, however if the /tmp/jna directory is missing, it creates this directory with the permissions of the current user.
The problem here is that the non-root user does not have access permissions to the /tmp/jna folder.
It's likely that this was caused by Media Broker being installed previously on the machine as root, resulting in the current non-root user not being able to access the directory.
The solution is to simply remove the /tmp/jna folder and restart the Media Broker.
On startup it will detect that the folder does not exist and create a new one with the permissions of the current non-root user.