[HS][bash-CRON] arreter et redémarrer des services via un script

Le
C. Mourad Jaber
Bonjour,

J'ai besoin d'arrêter et de redémarrer mysql et openldap de manière planifier via cron
(sur le crontab du root).
Pour se faire, j'ai fait un petit script qui fait appel à la commande service (j'ai essayé
aussi l'appel directe des scripts du /etc/init.d)
Quand je lance mon script moi-même, tout se passe bien, quand le confie à cron, j'ai
l'erreur suivante :

exec: 129: stop: not found
Stopping OpenLDAP: slapd.

exec: 129: start: not found
Starting OpenLDAP: slapd.

Donc openldap s'arrête et redémarre correctement, par contre mysql non !
Faut-il ajouter quelque chose dans le PATH pour que cela puise fonctionner ?

mon script :
#! /bin/bash

SERVICE="/usr/bin/service"
$SERVICE mysql stop
$SERVICE slapd stop

$SERVICE mysql start
$SERVICE slapd start

J'ai également essayé de mettre /usr/sbin/ et j'ai le même comportement !

Le serveur est en ubuntu server 10.04 (pas taper !).

Merci pour vos lumières !

++

Mourad

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/4D959964.2050806@nativobject.net
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
fabrice régnier
Le #23250291
'lut,

Je ne connais pas '/usr/bin/service mysql start/stop' (propre à ubuntu?)
mais ceci dans un fichier placé dans /etc/cron.d/ fonctionne bien pour moi

0 0 * * * root /etc/init.d/mysql stop && [zap: sauvegarde] &&
/etc/init.d/mysql start

Merci pour vos lumières !


j'ai un peu peur d'avoir proposé une alumette mouillée ;)

a+

f.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/4d95a09d$0$1190$
JC
Le #23250281
As-tu essayé de passer par la cron générale en utilisateur r oot
/etc/crontab

--
Salutations.
Jean-Claude

Marre des versions stables, je vais tester les instables, au moins je
saurai pourquoi ça plante !

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
C. Mourad Jaber
Le #23250411
Le 01/04/2011 11:53, fabrice régnier a écrit :
'lut,

Je ne connais pas '/usr/bin/service mysql start/stop' (propre à ubuntu?) mais ceci dans
un fichier placé dans /etc/cron.d/ fonctionne bien pour moi

0 0 * * * root /etc/init.d/mysql stop && [zap: sauvegarde] && /etc/init.d/mysql start

Merci pour vos lumières !


j'ai un peu peur d'avoir proposé une alumette mouillée ;)

a+

f.



Effectivement sous debian mon script fonctionne bien avec /usr/sbin/service !
J'ai contourné le problème avec un mysqldump, à priori, cela réponds au besoin initial !

Merci pour l'allumette mouillée :)

++

Mourad

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Jeremie COURREGES-ANGLAS
Le #23258751
--lEGEL1/lMxI0MVQ2
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Friday 01 April 2011 à 11:22:44AM, C. Mourad Jaber wrote:
[snip]
Faut-il ajouter quelque chose dans le PATH pour que cela puise fonctionne r ?

mon script :
#! /bin/bash

SERVICE="/usr/bin/service"
$SERVICE mysql stop
$SERVICE slapd stop

$SERVICE mysql start
$SERVICE slapd start

J'ai également essayé de mettre /usr/sbin/ et j'ai le même comportement !

Le serveur est en ubuntu server 10.04 (pas taper !).

Merci pour vos lumières !

++

Mourad



Tu as déjà réglé ton souci, très bien. Mon mail vi se à revenir sur ton script.

Malgré le fait qu'on rencontre souvent ce genre de constructions dans les
scripts des autres, mettre des commandes dans des variables et utiliser des
chemins absolus n'a pas beaucoup d'avantages. Par contre, les inconvén ients
peuvent être nombreux. Mieux vaut utiliser un PATH correct et faire
simplement :

service mysql stop

Petite remarque subsidiaire, il est déconseillé d'utiliser des no ms de
variables composés uniquement de majuscules. Pourquoi ? Parce que les
conventions désignent ce genre de variables comme étant soit des variables
d'environnement soit des variables internes au shell. Ainsi, les modifier
accidentellement peut amener à des comportements erratiques, exemple :

$ PATH=/foo/bar; rm "$PATH"
ksh: rm: not found
$

Ah, et aussi toujours utiliser des guillemets doubles quand on utilise des
variables :

rm $file -> rm "$file"

En espérant que ça serve à quelqu'un.
Bonne soirée.

--
Jérémie Courrèges-Anglas - GPG key : 06A11494

--lEGEL1/lMxI0MVQ2
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (OpenBSD)

iQIcBAEBCAAGBQJNmkPvAAoJEGGRj78GoRSUPWsP/2ud916t0tvXEsClY/FUACrn
GZL1DdcejXtuG3XUU6zV1vzJktkfJtpkfBRtecJXmS8akN/GuERpAIQm30x/RfXh
7cvA6zRtSXjtZH5fwRVCiV7/pq/q9hrIjpVhpZ4wP2Rsblaae381xX4UoAJmFSlb
bRokQ7nZpH4409ZoP8JZkOD5HtMJzM7b5RB8P6NIJ+VAz/abxng4X+3EPQemLYB3
o/F0BRm7O6EgaMQE3bkUz/yy8dz41CYYlU2WuFRKQgCA8DQP0voSlFi1IoVChM2W
cq6tYJtzS5q4BWypcQwutuZVIBBzfs7e6A/UXZj48AzwQolBsJwNZqODtcdTL95e
pCkL6EEqubway5axehriOLjrp1/ZcHdWGqajwmoJWzffjH/ISGVSj4qqJ0GOWTrQ
ETe8+3w7uMSDH7Zx5f7DxfIYGNi2HWEm7Wa3ZHu5hHVQbUqS8hiHxJ6zouA+pBZg
5FpUyYg6+He8NWUszp/7t0G3Oq462dcjbH1x6deGhal94vnEAus0THyXiPx149wz
SOCI5dKTonU+d2MQ3cVf/uGr8IylR5Ge7hm3AyUYO++VCqgW/m0insibIgd7/W22
/sgbooe9Px7iqDEk8JeNZuZ1ixDuxqfbwZ00Br2AlCmDRnHIp4cDPeMdQyVks0YP
xJm02As2wowxm2yuSidu
=R8kf
-----END PGP SIGNATURE-----

--lEGEL1/lMxI0MVQ2--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Publicité
Poster une réponse
Anonyme