pourquoi faire tourner en root un truc comme grenouille ? la solution de la crontab fonctionne très bien.
Ch'ais pas mais
Code :
su Moi -c monscript.sh
ca fait quand meme son boulot.
Proxounet
Oui je l'ai fait avec cron,
bin je sais pas quand j'ai pensé le mettre au démrrage je 'nai pensé qu'a init.d ,
ca ma fait planté mon truc jai du formater (pas moyen de se loguer, ni en ssh ni en direct
Donc ce que j'ai fais j'ai testé un .sh avec cd /..../
./truc.py
et miracle ca marchait !
donc je l'ai mis en cron et ca marche impécablement bien
(tout ca pour ca, je me dis)
C'est quoi l'intérer de reiserfs ? j'avais regardé les diff il y a assez longtemps les diff n'étaient aps extreme.. ext3 était un peu le truc "normal"
Taz
et puis t'as qu'à aussi laisser tomber ext3 et passer à reiserfs.
Taz
pourquoi faire tourner en root un truc comme grenouille ? la solution de la crontab fonctionne très bien.
oui donc jai fais ca pour voir ce qui ne amrche pas, et lui comme commande il ne fait que "/.../truc.py" donc ca ne amrche pas !
et si t'ecrivais python tonscript.py dans le fichier que tu viens de creer (celui dans init.d) ? meme si je suis presque sur que ca changera rien
Proxounet
oui donc jai fais ca pour voir ce qui ne amrche pas, et lui comme commande il ne fait que "/.../truc.py" donc ca ne amrche pas !
l0ky
Quand tu le lances manuellement il faut faire
/etc/init.d/tonscript start
Proxounet
mais non j'ai fait tout ce que j'ai décris au dessus, mais le script de lancement ne fait que "/..../truc.py"
au lieu de l'éxecuter (comme quand on fait ./truc.py
bon ca ménerve du coup javais mis
cd /..../
./truc.py il ne veut plus démarrer jsuis bon pour tt réinstaller
C'est si dur que ca de lancer un py au démarrage ? :cry:
juste comme ca ton script tu lui as donner des droits [:opus dei]
Proxounet
Bon jai copié ce scrypt :
cp /../pygrenouille.py /etc/init.d/pygrenouille
et jai fais update-rc.d pygrenouille defaults
jespère que ca marchera...
Proxounet
Bon donc je crée un script .sh avec cela dedans :
Citation :
#!/bin/sh case "$1" in
start)
/home/henri/pygrenouille/pygrenouille.py
;;
stop)
killall monapp # <-- ou une commande pour arrêter ton démon
;;
restart)
stop
start
;;
esac
et maintenant jutilise update ? jai fais des recherches mais je nai pas bien compris..
Oui sous debian aprdon j'avais oublié,
donc ln -s /home//pygrenouille.py /etc/rcX.d ?
j'avais vérifié il y a bien l'enthête,
je ne dois pas faire un chmod +x sur le raccourcis , puisque ce n'est pas lui qu iest exécuté ?
Il faut que le lien s'appelle SXXnymame donc normalement il faut faire :
Code :
ln -s /home//pygrenouille.py /etc/rc2.d/S20nyname
rc2.d dépend du bootlevel (ca a un autre nom mais je m'en rappelle plus). En fait, sous debian, après l'initialisation du noyau, ce sont les scripts de /etc/rcS.d qui sont d'abord executés puis ce sont ceux de /etc/rcX.d (où X est un nombre entre 0 et 6). C'est l'administrateur qui choisit quel dossier lire (et cette information est dans /etc/inittab ). Les scripts sont éxécutés selon les numeros de scripts. Jette un coup d'oeil dans /etc/rc2.d pour comprendre.
Mais il faut peut-etre tenir compte de mon edit du message precedent. A voir...
Proxounet
Oui sous debian aprdon j'avais oublié,
donc ln -s /home//pygrenouille.py /etc/rcX.d ?
j'avais vérifié il y a bien l'enthête,
je ne dois pas faire un chmod +x sur le raccourcis , puisque ce n'est pas lui qu iest exécuté ?
comment lancer un scrypt python au démarrage ? celui ci doit rester dans mon dossier home à cause des dépendances
mettre un raccourcis vers ce fichier dans /etc/init.d ?
Ca depend beaucoup de ta distribution. Sous debian, il suffit de mettre un lien vers ton script dans /etc/rcX.d . Bien penser à mettre #!/usr/bin/python au debut du script pour que ce soit python qui l'execute.
Edit: J'ai un doute d'un seul coup puisqu'il faut normalement une fonction start() dans le script. De toutes façons, ça dépend de ta distrib.
Proxounet
Bonjour,
comment lancer un scrypt python au démarrage ? celui ci doit rester dans mon dossier home à cause des dépendances
mettre un raccourcis vers ce fichier dans /etc/init.d ?