欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Installer Flash Media Server 2 sur Gentoo Linux 博客分类: Linux LinuxFlashGCCAdobeRedHat 

程序员文章站 2024-03-06 16:21:02
...

Installer Flash Media Server 2 sur Gentoo Linux

Installer Flash Media Server 2 sur Gentoo Linux
            
    
    博客分类: Linux LinuxFlashGCCAdobeRedHat 

Après plusieurs demandes concernant l'installation d'un serveur Flash Media Server 2 (FMS2) sur une plate-forme Gentoo Linux, je trouve enfin le temps de vous donner quelques indications utiles qui devraient vous permettre d'installer votre serveur sans difficultés.

Téléchargement

Commencez par télécharger la dernière version de FMS2 sur le site d'Adobe. Vous pouvez récupérer l'édition developpeur, qui est gratuite (mais n'autorise que 10 connections simultanées). Une fois le téléchargement effectué, vous disposerez d'un fichier FlashMediaServer2.tar.gz.

Installation

Désarchivez le fichier FlashMediaServer2.tar.gz dans /tmp :

% tar -zxvf FlashMediaServer2.tar.gz -C /tmp

Une fois le désarchivage effectué, vous trouverez un dossier FMS_2_0_3_r68_linux dans votre dossier /tmp. Placez-vous à l'intérieur de ce répertoire et lancez le script d'installation (en tant que superutilisateur root bien sûr) :

% cd /tmp/FMS_2_0_3_r68_linux/
% ./installFMS -platformWarnOnly

Vous aurez remarqué l'option -platformWarnOnly passée au script d'installation. Cette option est nécessaire pour passer outre les vérifications qu'effectue le script pour tester le type de plate-forme sur laquelle il s'exécute. Gentoo n'est en effet pas représentée. Le script n'est prévu que pour détecter une RedHat ou une Solaris (arf...).

Suivez les instructions du script en répondant aux questions successives qu'il va vous poser (rien de méchant, rassurez-vous). Si vous ne savez pas y répondre par vous-même, acceptez les options qu'il vous propose par défaut. Ça ira très bien. Une fois la configuration de l'installation terminée, le script installe l'arborescence du serveur FMS2 à l'emplacement que vous aurez spécifié durant la configuration. Par défaut, il s'agit de /opt/macromedia/fms/. Rendez-vous à cet emplacement pour la suite de l'installation (la partie spécifique à Gentoo) :

% cd /opt/macromedia/fms/

A ce stade, nous devons vérifier que toutes les bibliothèques nécessaires à FMS2 sont bien présentes sur votre système Gentoo et que FMS est bien capable de les retrouver. En effet, les binaires compilés et distribués par Adobe utilisent des bibliothèques partagées qu'ils chargent dynamiquement. Ces binaires sont au nombre de 4 :

  • fmscore
  • fmsmaster
  • fmsedge
  • fmsadmin

Pour connaître la liste des bibliothèques nécessaires, il existe une commande magique : /usr/bin/ldd. Tapez la commande suivante :

% ldd fmscore

Vous devriez obtenir quelque-chose comme :

linux-gate.so.1 =>  (0xffffe000)
libssl.so.4 => not found
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7fd2000)
libnspr4.so => not found
libplc4.so => /usr/lib/nspr/libplc4.so (0xb7f93000)
libplds4.so => /usr/lib/nspr/libplds4.so (0xb7f90000)
librt.so.1 => /lib/tls/librt.so.1 (0xb7f87000)
libdl.so.2 => /lib/libdl.so.2 (0xb7f82000)
libstdc++.so.5 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so.5 (0xb7ecd000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7eab000)
libgcc_s.so.1 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libgcc_s.so.1 (0xb7ea3000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7d91000)
lib/ld-linux.so.2 (0xb7feb000)
libcrypto.so.4 => not found

Comme vous pouvez le remarquer, quelques bibliothèques restent introuvables (celles qui comportent la mention not found). Ces bibliothèques doivent être présentes sur votre système pour que FMS2 puisse fonctionner. Le fait que ldd renvoie not found ne signifie pas pour autant que les bibliothèques concernées ne soient pas déjà présentes sur votre système. Mais elle peuvent exister sous une version différente (généralement plus récente). Il faut donc vérifier que ces bibliothèques sont bien installées sur votre Gentoo ; et si leur version est plus récente, il suffit de tricher un peu en créant des liens symboliques vers les versions que vous avez en les nommant à la façon dont FMS2 s'attend à les trouver.

Assurez-vous que vous avez bien installé les packages Gentoo openssl et nspr :

% emerge -p openssl
% emerge -p nspr

Si ce n'est pas le cas, installez-les :

% emerge openssl
% emerge nspr

Dans mon cas, je dispose des versions nspr-4.4.1-r2 et openssl-0.9.7e.

Il ne reste plus qu'à créer les liens symboliques astucieux. Pour cela nous allons créer un répertoire lib dans le répertoire d'installation de FMS2 :

% mkdir lib
% cd lib
% ln -s /usr/lib/libcrypto.so.0.9.7 libcrypto.so.4
% ln -s /usr/lib/libssl.so.0.9.7 libssl.so.4
% ln -s /usr/lib/nspr/libnspr4.so
% cd ..

Vous devez maintenant avoir le répertoire lib suivant :

% ls -l lib/
total 0
lrwxrwxrwx 1 nobody nobody 27 Nov 6 16:28 libcrypto.so.4 -> /usr/lib/libcrypto.so.0.9.7
lrwxrwxrwx 1 nobody nobody 24 Nov 6 16:32 libssl.so.4 -> /usr/lib/libssl.so.0.9.7
lrwxrwxrwx 1 nobody nobody 25 Nov 6 16:31 libnspr4.so -> /usr/lib/nspr/libnspr4.so

Maintenant, nous allons ajouter ce répertoire lib dans la liste des chemins stockés par la variable LD_LIBRARY_PATH :

% export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/macromedia/fms/lib

Maintenant, regardez le résultat de la commande ldd sur l'un de nos 4 binaires :

% ldd fmscore
linux-gate.so.1 => (0xffffe000)
libssl.so.4 => /opt/macromedia/fms/lib/libssl.so.4 (0xb7fbb000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7fa3000)
libnspr4.so => /opt/macromedia/fms/lib/libnspr4.so (0xb7f69000)
libplc4.so => /usr/lib/nspr/libplc4.so (0xb7f64000)
libplds4.so => /usr/lib/nspr/libplds4.so (0xb7f61000)
librt.so.1 => /lib/tls/librt.so.1 (0xb7f58000)
libdl.so.2 => /lib/libdl.so.2 (0xb7f53000)
libstdc++.so.5 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libstdc++.so.5 (0xb7e9e000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7e7c000)
libgcc_s.so.1 => /usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.5-20050130/libgcc_s.so.1 (0xb7e74000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7d62000)
libcrypto.so.4 => /opt/macromedia/fms/lib/libcrypto.so.4 (0xb7c6b000)
lib/ld-linux.so.2 (0xb7feb000)

Vous voyez que cette fois-ci toutes les bibliothèques nécessaires sont bel et bien identifiées.

Il existe, dans votre répertoire /opt/macromedia/fms/, deux scripts shell chargés de lancer FMS2 en exécutant ces binaires : server et adminserver. Il suffit donc d'aller déclarer la bonne définition de la variable LD_LIBRARY_PATH dans chacun de ces scripts pour que les bibliothèques soient bien retrouvées à chaque fois que vous lancerez FMS2. Pour cela, ajoutez simplement les lignes suivantes aux deux scripts (juste avant la ligne de commentaire # Path to FMS binary...) :

[ ... ]

LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/opt/macromedia/fms/lib
export LD_LIBRARY_PATH

# Path to FMS binary, and short-form for messages.
[ ... ]

Et voilà. Tout est OK maintenant. Vous pouvez lancer FMS2.

Lancement du serveur FMS2

Il suffit donc de lancer les deux scripts server et adminserver (attendez que la première commande vous rende la main avant de lancer la seconde... ça ne prend que quelques secondes) :

% ./server start
NPTL 2.3.4
Starting Macromedia Flash Media Server (please check /var/log/messages)

% ./adminserver start
Starting Macromedia Flash Media Admin Server (please check /var/log/messages)

Utilisez les mêmes commandes avec l'argument stop pour arrêter FMS2 ou restart pour le re-démarrer. server lance le serveur d'application FMS2, tandis que adminserver lance le serveur d'administration.