StudioNeuneu Posté(e) le 31 mai 2015 Posté(e) le 31 mai 2015 Bonjour ! Je viens de découvrir ce serveur de livres et BD. C'est en Java, donc pour l'installer il faut d'abord installer Java sur le NAS, puis installer le fichier .jar dans /var/packages/Ubooquity. J'ai fait ça comme expliqué sur le site d'Ubooquity (ICI). Et tout avait l'air de marcher, sauf que normalement le serveur doit se lancer au démarrage du NAS, mais ce n'est pas le cas. Si je le démarre manuellement, pas de problème. Mais si je reboote mon NAS, le serveur n'est pas lancé. Quelqu'un sait comment faire pour que ça démarre en même temps que mon NAS? Merci d'avance !! 0 Citer
Fenrir Posté(e) le 31 mai 2015 Posté(e) le 31 mai 2015 n’éteins pas ton nas Tu peux ajouter un petit script dans le dossier de boot du syno (je n'ai pas le chemin en tête, mais ça ce trouve facilement) 0 Citer
StudioNeuneu Posté(e) le 31 mai 2015 Auteur Posté(e) le 31 mai 2015 C'est pas de ma faute!!! Quand DSM se met à jour, il redemarre le NAS... Pour le script, c'est déjà ce que j'ai fait. J'ai mis un script qui fonctionne si je le lance manuellement, mais la ou je l'ai mis, ca fait rien. Soit le dossier n'est pas bon, soit le script n'est pas fait pour etre lancé automatiquement. J'y connais pas grand chose moi, alors si quelqu'un pouvait me faire un bon petit script qui se lance tout seul comme un grand, eh bin, ça me ferait plaisir 0 Citer
StudioNeuneu Posté(e) le 31 mai 2015 Auteur Posté(e) le 31 mai 2015 (modifié) Ah j'avais lu de le mettre dans /usr/local/etc/rc.d C'est pas tout à fait pareil... J'essaierais demain. Merci. Modifié le 31 mai 2015 par StudioNeuneu 0 Citer
Fenrir Posté(e) le 31 mai 2015 Posté(e) le 31 mai 2015 Je n'ai pas testé en 5.2, mais en 5.1 ça fonctionnait 0 Citer
StudioNeuneu Posté(e) le 1 juin 2015 Auteur Posté(e) le 1 juin 2015 Bah je suis en 5.2 et ça fonctionne pas !! J'ai mis dans le répertoire que tu m'as dit mais que dalle ! Pour démarrer le serveur manuellement il faut faire "sh ubooquity.sh start". Si j'essaie de lancer le serveur en tapant juste "sh ubooquity.sh" ça me répond "$Usage: ubooquity.sh {start|stop}". Je m'y connais pas trop en linux, mais je suppose que la commande attend un paramètre start ou stop. Comment faire pour l'intégrer au démarrage? Ou alors il faudrait changer le script? 0 Citer
StudioNeuneu Posté(e) le 1 juin 2015 Auteur Posté(e) le 1 juin 2015 J'ai modifié le script : #!/bin/bash cd /var/packages/Ubooquity/ nohup java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 esac exit 0 Si je le lance manuellement, il démarre bien le serveur. Mais impossible de le faire démarrer automatiquement... J'ai fait des recherches et j'ai lu qu'il faut modifier les droits pour qu'il soit exécutable. Effectivement il n'était pas exécutable, mais même après avoir modifié, il fonctionne toujours pas. Alors il y a une chose que je me demande. Vu que c'est une application java, et que java n'est pas installé par défaut sur le NAS, est-ce que ce serait possible que le script se lance avant que java soit démarré?? 0 Citer
Fenrir Posté(e) le 1 juin 2015 Posté(e) le 1 juin 2015 est-ce que ce serait possible que le script se lance avant que java soit démarré?? nop, java n'a pas être lancé "avant" Regarde le bas de la page 59 de cette doc : https://global.download.synology.com/download/Document/DeveloperGuide/DSM_Developer_Guide.pdf voici un exemple de script vite fait/mal fait : #!/bin/sh DAEMON_PATH='/var/packages/Ubooquity/' DAEMON='Ubooquity.jar' DAEMON_OPTS='-webadmin -headless -port 2202' PWD=`pwd` #remplace le chemin par le résultat de la commande "which java" JAVA_BIN='/chemin/de/java' ######### case "$1" in start) echo 'Lancement de ton programme' cd $DAEMON_PATH nohup $JAVA_BIN -jar $DAEMON_PATH$DAEMON $DAEMON_OPTS cd $PWD ;; stop) #ici la commande d’arrêt, par exemple avec un kill sur le pid ($!) ;; status) #ici la commande qui retourne l'état du programme ;; *) echo 'Usage: $0 {start|stop} ;; esac exit 0 Tu créés ce script dans le bon dossier, tu corriges/adaptes en fonction de tes besoins et tu le rends exécutable : chmod 755 /chemin/du/script/nomdufichier.sh Ensuite tu peux le tester avec la commande : /chemin/du/script/nomdufichier.sh start S'il est dans le bon dossier, il devrait se lancer avec le syno, sinon, tu peux le lancer depuis une crontab à la condition d'ajouter quelques tests afin de ne pas lancer la commande si elle tourne déjà (existence du process, du pid, ouverture du port, ...). Mais normalement, même si c'est loin d'être propre, tu devrais pouvoir créer un simple script comme suit : #!/bin/sh PWD=`pwd` cd /var/packages/Ubooquity/ nohup java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 cd $PWD exit 0 En passant, bash n'est pas installé sur les Syno et ne doit de toute façon pas être utilisé pour lancer un daemon 0 Citer
StudioNeuneu Posté(e) le 2 juin 2015 Auteur Posté(e) le 2 juin 2015 Je comprends mieux l'histoire du start | stop, je pensais que justement c'etait ca qui bloquait le lancement du script. C'est pour ça que je l'avais modifié... Voila le script original : #!/bin/bash cd /var/packages/Ubooquity/ echo "I have been told to $1 this server."; UBOOQUITY_PID=$(ps | grep java | grep Ubooquity | awk '{ print $1 }') case "$1" in start) echo "Starting the Ubooquity server"; nohup java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 echo "The server has been started."; ;; stop) echo "Stopping the Ubooquity server"; kill $UBOOQUITY_PID ;; *) echo $"Usage: $0 {start|stop}" exit 1 esac exit 0 J'ai modifié le #!/bin/bash en #!/bin/sh, je l'ai mis dans /usr/local/etc/rc.d et je l'ai rendu exécutable. Et la... Bon j'ai redémarré mon NAS pour tester, j'ai attendu un peu, j'ai essayé de me connecter au serveur Ubooquity, et ça marche. Visiblement il s'est bien lancé au démarrage tout seul. Sauf que maintenant, mon NAS est toujours en cours de démarrage. Impossible d'accéder à DSM, il y a quelque chose qui l'empeche d'aller au bout... 0 Citer
Fenrir Posté(e) le 2 juin 2015 Posté(e) le 2 juin 2015 Ton process n'a peut être pas rendu la main, mais ça ne devrait pas bloquer le démarrage. Quel nom as tu donné au script ? (le nom est important pour la séquence de démarrage) Sinon, tu as encore accès au nas d'une manière ou d'une autre ? (ssh, lecteur réseau, ...) 0 Citer
StudioNeuneu Posté(e) le 2 juin 2015 Auteur Posté(e) le 2 juin 2015 En fait j'ai attendu un moment quand meme... Au moins 15 minutes, j'ai pas vraiment compté. Le NAS est démarré, mais c'est juste que je n'ai plus accès à DSM, je peux me connecter en SSH. C'est d'ailleurs comme ça que j'ai pu rebooter. Le script c'est ubooquity.sh. 0 Citer
Fenrir Posté(e) le 2 juin 2015 Posté(e) le 2 juin 2015 Renomme ton script en S99ubooquity.sh et modifie la ligne de démarrage : nohup java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 => nohup java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 & Ajoute aussi un case status En passant, ton stop n'est pas très safe, pour récupérer le PID, tu peux utiliser $! pour récupérer le PID de la dernière commande 0 Citer
StudioNeuneu Posté(e) le 2 juin 2015 Auteur Posté(e) le 2 juin 2015 (modifié) En fait le script ne vient pas de moi !! J'y connais pas grand chose. Je l'ai recupéré sur le site qui indique comment installer Ubooquity sur un NAS Synology. Du coup ajouter un case status... je sais pas faire... Modifié le 2 juin 2015 par StudioNeuneu 0 Citer
StudioNeuneu Posté(e) le 2 juin 2015 Auteur Posté(e) le 2 juin 2015 C'est bon !!! Ca marche !!! Je n'ai pas eu à renommer le fichier, juste rajouter le & à la fin de la ligne de démarrage et ça a marché. Sinon petite précision que j'avais oublié de dire, il a fallu que je rajoute le chemin complet vers java pour que ça marche. La ligne de démarrage ressemble à ca : nohup /var/packages/JavaManager/target/Java/bin/java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 & En tout cas, merci pour ton aide !!! Si je laisse le script comme ça c'est bon? Ou est-ce qu'il vaut mieux faire la modification pour le stop et rajouter le case status? 0 Citer
Fenrir Posté(e) le 2 juin 2015 Posté(e) le 2 juin 2015 (modifié) J'ai écrit ça à la volée, pas testé, mais ça devrait être bon ou pas loin, s'il y a des bugs que tu ne trouve pas, prends juste les morceaux dont tu as besoin #!/bin/sh PWD=`pwd` JAVA_BIN='/var/packages/JavaManager/target/Java/bin/java' UBOOQUITY_PATH='/var/packages/Ubooquity' UBOOQUITY_PKG='Ubooquity.jar' UBOOQUITY_OPT='-webadmin -headless -port 2202' PID_FILE='/var/run/ubooquity.pid' cd $UBOOQUITY_PATH case "$1" in start) #en toute rigueur, il faudrait ajouter un test pour vérifier que le process ne tourne pas déjà, mais j'ai la flemme echo "Starting the Ubooquity server"; nohup $JAVA_BIN -jar $UBOOQUITY_PATH/$UBOOQUITY_PKG $UBOOQUITY_OPT & UBOOQUITY_PID=$! echo UBOOQUITY_PID > $PID_FILE echo "The server has been started with pid $UBOOQUITY_PID ." ;; stop) if [ -f $PID_FILE ]; then echo "Stopping the Ubooquity server" $UBOOQUITY_PID=`cat $PID_FILE` kill $UBOOQUITY_PID exit 0 else echo "Ubooquity server should be stopped" exit 1 fi kill -0 $UBOOQUITY_PID if [ "$?" = "0" ]; then "Won't die !!" kill -9 $UBOOQUITY_PID fi rm $PID_FILE ;; status) if [ -f $PID_FILE ]; then echo "Ubooquity server is running" exit 0 else echo "Ubooquity server is stopped" exit 1 fi ;; *) echo $"Usage: $0 { start | stop | status }" exit 1 ;; esac cd $PWD exit 0 Modifié le 3 juin 2015 par Fenrir 0 Citer
StudioNeuneu Posté(e) le 2 juin 2015 Auteur Posté(e) le 2 juin 2015 J'ai mis ton script, je sais pas si il y a des bugs, mais ça marche !!! Merci !! 0 Citer
StudioNeuneu Posté(e) le 2 juin 2015 Auteur Posté(e) le 2 juin 2015 Par contre maintenant il faut que j'active l'accès en SSL... C'est pas gagné ! Je verrais ça plus tard... 0 Citer
StudioNeuneu Posté(e) le 7 juin 2015 Auteur Posté(e) le 7 juin 2015 SSL activé !!! J'ai pas eu trop de problème on m'a filé un bon tuto. Sinon pour le script j'ai fait quelques modifs, il y avait des erreurs sur celui que tu m'as donné, donc si ça peut intéresser quelqu'un je le mets la : #!/bin/sh PWD=`pwd` PID_FILE='/var/run/ubooquity.pid' cd /var/packages/Ubooquity case "$1" in start) #en toute rigueur, il faudrait ajouter un test pour vérifier que le process ne tourne pas déjà, mais j'ai la flemme echo "Starting the Ubooquity server"; nohup /var/packages/JavaManager/target/Java/bin/java -jar /var/packages/Ubooquity/Ubooquity.jar -webadmin -headless -port 2202 & UBOOQUITY_PID=$! echo $UBOOQUITY_PID > $PID_FILE echo "The server has been started with pid $UBOOQUITY_PID ." ;; stop) if [ -f $PID_FILE ]; then echo "Stopping the Ubooquity server" UBOOQUITY_PID=`cat $PID_FILE` kill $UBOOQUITY_PID rm $PID_FILE exit 0 else echo "Ubooquity server should be stopped" exit 1 fi kill -0 $UBOOQUITY_PID if [ "$?" = "0" ]; then "Won't die !!" kill -9 $UBOOQUITY_PID fi rm $PID_FILE ;; status) if [ -f $PID_FILE ]; then echo "Ubooquity server is running" exit 0 else echo "Ubooquity server is stopped" exit 1 fi ;; *) echo $"Usage: $0 { start | stop | status }" exit 1 ;; esac exit 0 Et voila ! 0 Citer
mattaw Posté(e) le 9 juin 2015 Posté(e) le 9 juin 2015 Super le script, tu devrais le proposer sur http://vaemendis.net/ubooquity/misc/synology-tutorial/ étant donné que celui par défaut est perfectible. 0 Citer
StudioNeuneu Posté(e) le 9 juin 2015 Auteur Posté(e) le 9 juin 2015 J'en ai déjà parlé. Je suppose qu'il sera bientôt mis. 0 Citer
xri59 Posté(e) le 11 juillet 2015 Posté(e) le 11 juillet 2015 bonjour à tous avant la mise à jour de ce matin de mon dsm, j arrivais à lancer en manuel le serveur et cela marchait très bien depuis la mise à jour, ça marche plus je lance dans putty le fameux sh ubooquity.sh start et ca me repond que le serveur has been started ... super mais lorsque je veux me connecter en 192.168.0.x:2202/admin ou 192.168.0.x:2202/comics et bien j ai une belle page internet cette page ne peut pas s afficher quelqu'un aurait il une idée ? merci 0 Citer
StudioNeuneu Posté(e) le 11 juillet 2015 Auteur Posté(e) le 11 juillet 2015 Aucune idée. J'ai réinstallé mon NAS. Et je n'ai pas réinstallé encore Ubooquity depuis. C'est pénible de ne plus pouvoir utiliser une appli après une mise à jour de DSM. Et j'ai l'impression que c'est assez fréquent... 0 Citer
Messages recommandés
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.