All pastes #1410508 Raw Edit

gnu

public text v1 · immutable
#1410508 ·published 2009-05-02 18:21 UTC
rendered paste body
[16:45:58] Spip: Est ce que quelqu'un sait ici, comment gérer les lockfile à l'arret brutal d'une machine pour un démon ?[16:47:19] Spip: est ce que /var/lock/subsys/ subit un nettoyage automatique ?[16:47:34] Spip: ofaurax_boulot, une idée ?[16:47:41] ofaurax_boulot: heu[16:47:54] ofaurax_boulot: Spip, je crois pas[16:48:09] ofaurax_boulot: Spip, le lockfile est créé par qui ?[16:48:26] ofaurax_boulot: Spip, comment doit se comporter le programme s'il trouve un lockfile, mais que le programme tourne pas ?[16:49:04] Spip: ben, dans les services, genre crond, anacron et cie, le lockfile est crée par la fonction start(), mais lors d'un arret brutal, pourquoi les services parviennent à démarrer (et pas le mien ^^)[16:50:16] Spip: ofaurax_boulot, apparament, si lockfile deja existant et un start, ça start quand meme   Moi j'ai pas fait ça[16:50:35] ofaurax_boulot: Spip, toi, tu as fait quoi ?[16:51:13] ofaurax_boulot: en fait, je crois que "la bonne manière" de faire, c'est de mettre le PID dans le lockfile[16:51:44] Spip: http://forum.mandriva.com/viewtopic.php?t=108523[16:52:02] ofaurax_boulot: ensuite, quand tu démarres, tu regardes si /proc/PID/cmdline est le nom du programme[16:52:17] ofaurax_boulot: si non, tu vires le lockfile et tu lances[16:52:18] Spip: ofaurax_boulot, en fait, j'ai pas fait ça, mais pas "volontairement". il y a bien le pid dans le lockfile chez moi. pas dans les services crond etc apparament[16:52:26] ofaurax_boulot: si oui, tu dis que le programme est déjà lancé[16:52:38] Sébastien (tuxakadjseb@jabber.fr) est parti[16:54:05] ofaurax_boulot: Spip, $HOME/session/rtorrent.lock ???[16:54:11] Spip: "tu regardes si /proc/PID/cmdline est le nom du programme" , je comprend pas ?[16:54:31] Spip: ofaurax_boulot, oui. Et il y a un socket aussi, à cause de dtach[16:55:00] ofaurax_boulot: Spip, fais :  cat /proc/1/cmdline[16:55:17] ofaurax_boulot: si tu fais ls /proc, tu verras tout pleins de dossiers, qui représente tes processus[16:55:30] ofaurax_boulot: et dedans, pour chaque processus, tu as pleins d'infos[16:55:44] Spip: hummm, je ne savais pas...[16:56:13] ofaurax_boulot: Spip, le mieux, c'est donc de tester au démarrage, s'il y a un dossier avec le pid de ton rtorrent[16:56:26] Spip: ofaurax_boulot, donc en fait si...[16:56:27] Spip: ok[16:56:30] ofaurax_boulot: et si oui, tu vérifies que c'est bien un rtorrent qui tourne[16:56:46] ofaurax_boulot: sinon, ça veut dire que soit le rtorrent s'est arrêté[16:56:59] ofaurax_boulot: soit qu'une autre processus tourne à sa place (redémarrage)[16:57:41] Spip: ok, je vois...[16:58:00] Spip: je te remercie beaucoup ofaurax_boulot pour tes conseils, je retoucherai ça [16:58:06] ofaurax_boulot: ça t'évite de faire un gros grep sur la liste des processus pour voir si ton rtorrent tourne déjà[16:58:16] Spip: ofaurax_boulot, ^^