Créer un service pour exécuter un script sh

simo.m Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
Flachy Joe Messages postés 2102 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
j'ai un problème sous linux ,j'ai crée un script sh pour enlever les droits d'écriture pour un dossier quand il contient un nombre de fichier supérieur à 5 , le problème c'est que j'ignore comment le rendre en écoute (c'est à dire l'éxecuter tout le temps ) je pense que c'est à partir d'un service mais comment faire j'en ai aucune idée,j'ai essayé pas mal de fois mais sans résultat ,pourriez-vous m'aider svp parce c'est fort urgent . merci

2 réponses

Tomy2e Messages postés 816 Date d'inscription   Statut Membre Dernière intervention   859
 
Bonjour, c'est possible et c'est appelé "tâche cron" sous Linux, voici un petit tutoriel pour pouvoir utiliser ces tâches: http://generation-linux.fr/?post/2009/02/11/Cours-Linux-:-Automatisation-de-taches-avec-Cron
0
Flachy Joe Messages postés 2102 Date d'inscription   Statut Membre Dernière intervention   261
 
Salut,
les "services" ont leurs scripts de démarrage dans /etc/init.d/ (sous debian et dérivés en tout cas, à vérifier pour les autres).

Tu peux écrire ton script à partir du fichier /etc/init.d/skeleton (que tu copie dans /etc/init.d/mon_service ) avec ces variables :
NAME='mon_service'
DEAMON='/bin/bash'
DAEMON_ARGS="chemin_vers_le_script_qui_boucle_en_permanence"

Il faut ensuite l'ajouter au démarrage avec:
update-rc.d mon_service defaults

Je n'ai pas testé la création à partir du squelette mais j'ai déjà utiliser un truc de ce genre : http://www.admin-debian.com/gestion-des-processus/ajouter-un-script-au-demarrage-sous-debian/

Ça a l'avantage sur le cron que le délai peut être très court (le temps pour le script bash de boucler) et donc ton verrouillage sera très réactif.

Bon courage.
0
Flachy Joe Messages postés 2102 Date d'inscription   Statut Membre Dernière intervention   261
 
J'oubliai : pour que ton script bash se termine proprement, il faut qu'il gère la capture des signaux, par l'intermédiaire de la commande trap, sinon il sera tué à la sauvage lors de l'extinction.
0