Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
lancement des serveurs au démarrage de la machine

Dernièrement j'ai configuré Tomcat, Apache et Postgresql sur une machine suse linux. Tous ces serveurs, je les lance actuellement en mode console. Par exemple si je veux lancer Tomcat, je dois aller dans le répertoire /usr/local/tomcat/bin/./startup.sh. J'aimerais savoir comment faire pour lancer ce serveur au démarrage de la machine(ici je fais allusion au fichier autoexec.bat sous windows). Est-ce que je peux créer un fichier de ce genre sous linux aussi?

Merci de la réponse.

Augustin

Poste le Sunday 20 June 2004 14:40:44
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine
Envoyé par: Teotihuacan

Salut,

Tu peux tout à fait faire un script pour ça. (cf tutos scripts de Lea).
Ensuite, tu peux mettre ton script au démarrage :
le copier dans /etc/init.d/
et faire un lien SXXNomDuScript dans /etc/rcY.d/
où :
_ XX = position du script par rapport aux autres
_ Y = niveau de démarrage pour lequel le script doit être lancé.

Sinon, plus simplement, tu mets ton script dans /etc/init.d/
et tu utilise le programme ksysv pour configurer les scripts au démarrage.

A+ et bonne chance.


PS :
_ si tu utilise une distrib comme Slack, tu peux mettre directement tes commandes dans /etc/rc.d/rc.local
_ il faut mettre les droits en exécution pour ton script


Poste le Sunday 20 June 2004 15:08:05
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine

Teotihuacan,

Merci d'avoir répondu à ma question.

Augustin

Poste le Tuesday 22 June 2004 14:54:15
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine

Bonjour Teotihuacan,

En fait j'ai fait le script comme vous m'avez ditet je l'ai copié dans le repertoire /etc/init.d/ et puis j'ai lancé la commande suivante: ln -d /etc/init.d/serverDem /etc/rc.d/rc1.d/s20serverDem. Malgré tout ça ne marche. Pourriez-vous me dire si j'ai fait une erreur quelque part. Merci de votre réponse.

Voilà le contenu de mon script.
#!/bin/ksh
cd /usr/local/tomcat/bin
./startup.sh
su postgres
./postmaster -D /usr/local/pgsql/data -i &

Voudriez-vous m'aider? Merci d'avance.

Augustin

Poste le Wednesday 23 June 2004 11:23:08
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine
Envoyé par: oudoubah

> ln -d /etc/init.d/serverDem /etc/rc.d/rc1.d/s20serverDem

Il faut un S et non un s:

ln -d /etc/init.d/serverDem /etc/rc.d/rc1.d/S20serverDem


Poste le Wednesday 23 June 2004 11:41:15
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine

Bonjour Oudoubah,

J'ai fait ce que vous avez dit, mais malgré ça rien ne marche et en plus quand j'essaie de lancer mon script à partir de la console, la dernière ligne n'est pas exécutée.
Voilà comment j'ai écrit mon script:

#!/bin/sh

cd /usr/local/tomcat/bin
./startup.sh
cd
cd /usr/bin
su postgres
./postmaster -D /usr/lib/pgsql/data -i &

~


Voudriez-vous m'aider!!!

Augustin.

Poste le Thursday 24 June 2004 15:46:31
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine
Envoyé par: francoisp

./ implique un chemin explicite

si tu lances par ./postmaster.....................

lors qu'il se trouve pas dans le $HOME de l'utilisateur postgres il ne peux pas se lancer puisque le fichier n'existe pas (à cet endroit).

fais le meme script avec le chemin reel du postmaster et avec un sudo plustot qu'un su (car le su demande un password).

ensuite tu le testes et si ok tu le copie comme /etc/init.d/postgres
et tu crée dans /etc/rc3.d un lien symbolique vers /etc/init.d/postgres

Poste le Thursday 24 June 2004 16:06:26
Répondre     Citer    
Re: lancement des serveurs au démarrage de la machine
Envoyé par: oudoubah

Salut!

Au niveau du script, la ligne
cd
ne sert à rien puisque après tu fais un cd /usr/bin

C'est normal que la dernière ligne ne s'exécute pas: tu viens de changer d'utilisateur. Quand cet utilisateur se déconnectera, alors la suite sera exécutée.

Pour faire cela, tu peux utiliser la commande sudo (voir le man car je la connais mal).


Pour postgres, lit ça:
[lea-linux.org]

Tu peux y lire entre autre:
su postgres -c "/usr/local/pgsql/bin/postmaster -S -D /usr/local/pgsql/data" >\/var/log/postgresql.log &

Il y a plein d'autres infos utiles pour l'installation.

Quand tu dis que rien ne marche, qu'est-ce qui te fait dire que Tomcat ne marche pas? Tu as un retour d'erreur? Tu n'as rien?


Poste le Thursday 24 June 2004 16:06:51
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
lancement des serveurs au démarrage de la machine
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons