Aller au contenu

[DSM5] Lancer un script au démarrage et à l'extinction du NAS


tahitibub

Messages recommandés

Bonjour,

Je souhaite lancer un script shell (xxx.sh) au démarrage et à l'extinction d'un NAS tournant sous DSM 5.

Sous DSM6, cette opération est simple et s'apparente à utiliser le panneau de configuration "planificateur de tâches" et à créer une "tâche déclenchée" (une pour le démarrage et une pour l'arrêt).

Cette option n'étant pas implémentée sous DSM5, il faut donc passer en lignes de commandes ... et c'est là que cela se corse.

Quelqu'un peut-il me renseigner sur la façon de procéder ?

Merci.

Modifié par tahitibub
Lien vers le commentaire
Partager sur d’autres sites

Il y a 2 heures, Mic13710 a dit :

Le planificateur de tâche existe depuis pas mal de versions et il est bien évidemment dispo avec DSM5 dans la partie système.

Les options "tache déclenchée sur événement (démarrer/éteindre) n'est apparue qu'avec DSM6

Pour les version précédentes faut mettre les mains dans le cambouis (plus exactement dans "/usr/local/etc/rc.d") et suivre ces instructions:

If you would like to run an application when the system boots up, you have to write a startup script and put it in /usr/local/etc/rc.d/. Following are some rules for the startup script:

1.  It must have the suffix “.sh”. For example, “myprog.sh”.
2.  The permission must be 755.
3.  It must have the options “start” and “stop”. When the system boots
up, it will call “myprog.sh start”; when it shuts down, it will call
“myprog.sh stop”.  

You can refer to the scripts in /usr/syno/etc/rc.d/. They are script for Synology default services.
 

Lien vers le commentaire
Partager sur d’autres sites

Il y a 3 heures, Mic13710 a dit :

Le planificateur de tâche existe depuis pas mal de versions et il est bien évidemment dispo avec DSM5 dans la partie système.

Sous DSM 5 et 6, il est effectivement possible de créer une tâche planifiée (script défini par l'utilisateur / corbeille / contrôle du bip / service).

Toutefois, comme je le disais dans mon premier message, seul DSM 6 permet la création d'une tâche déclenchée (script défini par l'utilisateur).

DSM6 - Planificateur 0.png

DSM6 - Planificateur 1.png

La tâche déclenchée est liée à un évènement (démarrage ou extinction système), alors que la tâche planifiée est ... planifiée selon un jour et une heure donnés.

Pour contourner ce manque, il faut donc passer par des lignes de commandes, et je vous livre ici la solution :

 

1 - Créer un script shell contenant les instructions à exécuter au démarrage et à l'extinction (ici le lancement et l'arrêt d'un conteneur docker) et le placer, par exemple, dans /volume1/ :

 

case  $1 in
start)
         /var/packages/Docker/target/usr/bin/docker start <Nom du conteneur>
         ;;
stop)
         /var/packages/Docker/target/usr/bin/docker stop <Nom du conteneur>
         ;;
         *)
echo "Usages: $0 [start|stop]"
         ;;
esac

 

2 - Faire un "chmod 755 <nom_de_votre_script.sh>"

 

3 - Créer un fichier d'appel du script dans /etc/init/ avec une extension en ".conf"

 

start on filesystem and started docker
stop on runlevel [06]
exec /volume1/<nom_de_votre_script.sh>

 

4 - Faire un "chmod 755 /etc/init/<Nom de votre fichier en .conf>"

 

5 - Redémarrer.

 

@+

Modifié par tahitibub
Lien vers le commentaire
Partager sur d’autres sites

il y a 47 minutes, tahitibub a dit :

je vous livre ici la solution

Un poil plus compliqué que la mienne, donnée juste avant! on dépose le script, correctement nommé et chmodé, directement dans le "/usr/local/etc/rc.d/" et roule ma poule.

En plus je ne suis pas sur que cette méthode, qui ajoute un fichier dans "/etc/init" résiste au upgrades DSM (alors que le contenu de /usr/local est garanti conservé par Synology dans ces circonstances)

Modifié par CoolRaoul
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.