installation fms pour ubuntu 9.04, par Stéphane Caldéroni

Ce How-To a été rédigé, testé et validé par Stéphane Caldéroni.
C'est avec son accord qu'il est reproduit ci-dessous. Tous nos remerciements à Stéphane pour cette contribution particulièrement soignée.

réf : http://www.calderoni.fr/doc/fms/install/howto-fms-3.5.1-ubuntu.txt

HOW-TO : FMS UBUNTU 9.04

# -------------------------------------------------------------------------
# Adobe Flash Media Server 3.5.1 Development Edition
# -------------------------------------------------------------------------
# Guide d'installation pour Linux Ubuntu
# Testé sur Ubuntu 9.04 (The Jaunty Jackalope | noyau 2.6.28-11)
# -------------------------------------------------------------------------
# Auteur : Stéphane Calderoni
# Contact : stephane.calderoni@gmail.com
# Date : Mai 2009
# -------------------------------------------------------------------------
#
# PROCEDURE D'INSTALLATION VALIDEE AVEC FLASH MEDIA SERVER 3.5.1
#
# La procédure proposée ici s'appuie sur un patch qui permet d'adapter
# la procédure d'installation initiale d'Adobe, ainsi que les routines
# de démarrage du serveur, aux spécificités d'Ubuntu
#
# -------------------------------------------------------------------------



La procédure d'installation de Flash Media Server 3.5.1 propose en option une
installation du serveur HTTP Apache. Nous supposerons néanmoins ici que vous
disposez déjà d'un serveur Apache dans votre environnement Ubuntu et nous
ne nous appuierons donc pas sur celui proposé par Adobe.



NB: Dans ce qui suit :

* chaque ligne préfixée par "::" correspond à une commande qui doit être
saisie dans le shell

* les séparateurs "=====" délimitent le contenu d'un fichier édité
(ou simplement un extrait)



# -------------------------------------------------------------------------
# Récupération du tarball d'installation
# -------------------------------------------------------------------------

Pour commencer, il faut récupérer l'archive d'installation du logiciel sur le
site web d'Adobe :

* soit en visitant la page suivante avec votre navigateur :

http://www.adobe.com/support/flashmediaserver/downloads_updaters.html

rubrique : Flash Media Server 3.5.1
lien : Download the Linux Update --> FlashMediaServer3.5.tar.gz

placer le fichier téléchargé dans le répertoire temporaire :
:: mv FlashMediaServer3.5.tar.gz /tmp
:: cd /tmp

* soit en le téléchargeant directement avec wget :

:: cd /tmp
:: wget http://download.macromedia.com/pub/flashmediaserver/updates/3_5_1/Linux/FlashMediaServer3.5.tar.gz



# -------------------------------------------------------------------------
# Extraction des composants d'installation
# -------------------------------------------------------------------------

:: tar zxf FlashMediaServer3.5.tar.gz
:: cd FMS_3_5_1_r516


# -------------------------------------------------------------------------
# Préparation de l'environnement système
# -------------------------------------------------------------------------

# Installation des bibliothèques manquantes
# -----------------------------------------

Nous allons maintenant nous assurer que notre environnement Linux dispose bien
de toutes les bibliothèques nécessaires pour assurer le bon fonctionnement
de Flash Media Server.

Pour cela, nous allons regarder avec quelles bibliothèques vont être liés les
binaires sur lesquels repose l'application FMS. Le test suivant peut être
limité au fichier "fmscore" qui est le noyau de l'application FMS.

:: ldd fmscore

linux-gate.so.1 => (0xb7fe5000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb7fbd000)
libnspr4.so => not found
libplc4.so => /usr/lib/libplc4.so (0xb7f81000)
libplds4.so => /usr/lib/libplds4.so (0xb7f7d000)
libasneu.so.1 => not found
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7f74000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7f70000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb7e80000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7e5a000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb7e4b000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb7ce8000)
/lib/ld-linux.so.2 (0xb7fe6000)

Ce qui doit, ici, attirer votre attention est la présence de liens non résolus.
C'est-à-dire les liens "not found". Les binaires FMS ont en effet été compilés
avec une association dynamique de certaines bibliothèques qui doivent être
présentes sur votre système pour que FMS fonctionne correctement.
Par exemple, dans mon cas, j'ai deux bibliothèques manquantes :

libnspr4.so => not found
libasneu.so.1 => not found

Il va donc falloir ajouter ces bibliothèques à notre système pour garantir le
bon fonctionnement de FMS.

Le gestionnaire de paquets Synaptic peut vous aider à identifier quels paquets
doivent être installés pour intégrer les bibliothèques manquantes à votre
système. Vous pouvez également interroger la base de données Ubuntu en ligne :

http://packages.ubuntu.com/

* la bibliothèque libnspr4.so se trouve ainsi dans le paquet libnspr4-dev
pour l'installer, tapez :

:: sudo apt-get install libnspr4-dev

l'association doit maintenant être résolue :

:: ldd fmscore

libnspr4.so => /usr/lib/libnspr4.so (0xb8068000)

* la bibliothèque libasneu.so.1, quant à elle, est fournie par Adobe et se
trouve précisément dans le tarball que vous venez d'extraire. Elle est donc
présente dans le répertoire dans lequel vous trouvez :

/tmp/FMS_3_5_1_r516/libasneu.so.1 :)

Après la procédure d'installation, cette bibliothèque sera placée dans le
répertoire racine de FMS : /opt/adobe/fms. Il nous suffit donc d'indiquer
au système qu'il doit prendre en compte ce répertoire lors de la recherche
de bibliothèques liées dynamiquement. Pour ce faire, vous allez créer un
fichier "adobe-fms-conf" (son nom n'a pas d'importance) dans le répertoire
/etc/ld.so.conf.d/ et y inscrire le chemin qui mène à la bibliothèque :

:: sudo nano /etc/ld.so.conf.d/adobe-fms.conf
=============================================
/opt/adobe/fms
=============================================

Puis relancez la configuration des liaisons dynamiques :

:: sudo ldconfig


# Patcher les scripts d'installation et de lancement de FMS pour Ubuntu
# ---------------------------------------------------------------------

La procédure d'installation proposée par Adobe est initialement prévue pour
Linux RedHat. Elle nécessite quelques adaptations pour prendre en charge les
spécificités liées à Ubuntu... Mais figurez-vous que j'ai déniché un patch
magique qui réalise cette prouesse en un tour de main ;) Merci à Joe Terranova
qui propose sur son site un patch permettant d'adapter les scripts d'Adobe pour
Ubuntu. Récupérez son patch et appliquez-le :

:: wget http://www.joeterranova.net/code/fms-3.5-ubuntu.patch
:: sudo patch -p1 < fms-3.5-ubuntu.patch

Ce patch permet de faciliter l'installation des scripts d'initialisation et de
créer un groupe "fms" spécifique pour l'exécution des processus du serveur.

NB: ce patch est initialement prévu pour la version FMS_3_5_0_r405, mais
fonctionne parfaitement avec notre version FMS_3_5_1_r516. Par contre,
je suppose qu'il n'est pas entièrement adapté à la version 3.5.2 de FMS
car les scripts de démarrage et d'arrêt du serveur ne fonctionnent pas
correctement... à regarder de plus près...


# Préparation des scripts d'initialisation du serveur FMS
# -------------------------------------------------------

Après application du patch, il reste à prévoir dans votre système une alternative
à la commande chkconfig présente sur RedHat, mais pas sur Ubuntu. Pour cela,
vous allez installer le paquet sysv-rc-conf et associer la commande fictive
"chkconfig" à une commande équivalente sous Ubuntu :

:: sudo apt-get install sysv-rc-conf
:: sudo ln -s /usr/sbin/sysv-rc-conf /sbin/chkconfig

Cette petite astuce vous évitera de planter l'installation des scripts
d'initialisation du serveur FMS :)



# -------------------------------------------------------------------------
# Installation
# -------------------------------------------------------------------------

Nous allons maintenant lancer le script d'installation de FMS et répondre aux
questions posées au fur et à mesure. N'oubliez pas que l'on part du principe ici
que vous disposez déjà d'un Apache qui tourne (et qui occupe donc déjà le port 80).
Cette petite précision pour ne pas oublier :
* de ne pas installer Apache quand on nous le demandera
* de ne pas associer le port 80 au serveur FMS (comme il est spécifié par défaut)

Alors allons-y !


:: sudo ./installFMS
.
.
.
To install Adobe Flash Media Server now, press ENTER. --> ENTER
.
.
.
Do you agree with the license agreement? (y/n): --> y

Please enter your Flash Media Server 3.5 serial number. --> ENTER

Would you like to try again? y/n: Default [n]: --> n

The installer will install Adobe Flash Media Server 3.5 in the
following directory
Default [/opt/adobe/fms]: --> ENTER

Please enter the Adobe Flash Media Server port(s), comma-separated
Default [1935,80]: --> 1935

Please enter the port to use for the Admin service.
Default [1111]: --> ENTER

Please enter the administrative username: --> admin
Please enter the administrative password: --> ********
Confirm password: --> ********

Please enter the user that the Adobe Flash Media Server service will run as
Default user [nobody]: --> ENTER

Do you want to install apache? (y/n)
Default [y]: --> n

Do you want the Adobe Flash Media Server service to run as a
daemon? (y/n)
Default [y]: --> ENTER

Do you want to start the Adobe Flash Media Server
after the installation is done? (y/n)
Default [y]: --> ENTER

----------- Install Action Summary -----------

Installation directory = /opt/adobe/fms

Flash Media Server Port = 1935
Flash Media Admin Server Port = 1111


Administrative username = admin
Administrative password = (suppressed)

service owner = nobody

service user = nobody
service group = fms

Run as daemon = Yes
Start Flash Media Server = Yes

Proceed with the installation? (y/n/q): --> y
.
.
.
The Adobe Flash Media Server installation is complete.


Et voilà. Votre serveur tourne !!!
Vous pouvez vous en assurer en scannant les ports définis ci-dessus :

:: nmap -p 1935,1111 localhost

Starting Nmap 4.76 ( http://nmap.org ) at 2009-05-28 20:44 RET
Interesting ports on localhost (127.0.0.1):
PORT STATE SERVICE
1111/tcp open unknown
1935/tcp open rtmp

Nmap done: 1 IP address (1 host up) scanned in 0.10 seconds



# -------------------------------------------------------------------------
# Configuration du serveur Apache
# -------------------------------------------------------------------------

Il ne nous reste plus qu'à configurer Apache pour qu'il prenne en charge
la desserte des ressources FMS via HTTP (donc sur le port 80). Pour cela,
éditez le fichier de configuration /etc/apache2/sites-available/default, et
ajoutez les lignes suivantes :

:: sudo nano /etc/apache2/sites-available/default
=================================================
Alias /fms "/opt/adobe/fms/webroot"
<Directory "/opt/adobe/fms/webroot">
Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
=================================================

Puis relancez le serveur Apache :

:: sudo /etc/init.d/apache2 reload



# -------------------------------------------------------------------------
# Testez votre installation
# -------------------------------------------------------------------------

Ouvrez votre navigateur web, et connectez-vous sur :

http://localhost/fms/ et ... A D M I R E Z ! ! ! . . .


# -------------------------------------------------------------------------
# Démarrage et arrêt du serveur FMS
# -------------------------------------------------------------------------

Le patch que nous avons appliqué plus haut a permis d'installer des scripts
de démarrage et d'arrêt du serveur FMS spécifiques à Ubuntu :

:: sudo /etc/init.d/fms start | stop | restart


Comments