[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
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
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
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$
/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/
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/
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]
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/