In article <4bd6b53b$0$21592$,
LeBuss wrote:
> OK as tu des infos, tuto ou quoi que ce soit pour que je puisse me
> débrouiller avec ça ??
là par exemple :
http://patpro.net/blog/index.php/2008/01/03/131-passer-de-cron-a-launchd/
In article <4bd6b53b$0$21592$426a74cc@news.free.fr>,
LeBuss <lebuss@free.fr> wrote:
> OK as tu des infos, tuto ou quoi que ce soit pour que je puisse me
> débrouiller avec ça ??
là par exemple :
http://patpro.net/blog/index.php/2008/01/03/131-passer-de-cron-a-launchd/
In article <4bd6b53b$0$21592$,
LeBuss wrote:
> OK as tu des infos, tuto ou quoi que ce soit pour que je puisse me
> débrouiller avec ça ??
là par exemple :
http://patpro.net/blog/index.php/2008/01/03/131-passer-de-cron-a-launchd/
Merci patpro pour ce blog, que j'ai jamais remarqué
dans ta signature <:o)
Plein de bonnes choses à lire !
Par contre je ne comprends pas pourquoi, alors que tu critiques launchd
tout du long de ton article, tu dis qu'il est buggy, verbeux et
complexe, incompatible avec les versions précédentes de Mac OS X,
pourquoi donc tu continues à dire qu'il faut l'utiliser à la place de
cron !?
Tu penses que Apple va supprimer cron dans une future version ?
Ou que cron a des défaut ?
En revanche j'ai les problèmes suivants avec launchd :
(en plus de ce que tu évoques)
- Il est complexe. J'ai pas pris le temps de bien étudier la chose, mais
par exemple que vient faire umask dans launchd ?
Le man ne le dit pas.
- Je doutes de sa fiabilité. par exemple sur la grosse majorité de mes
clients les daily ne sont pas exécutés de façon régulière
- "launchctl list" ne dit que si le process est on ou off.
Pour un scheduler c'est pas un peu léger ?
Savoir quand chaque job sera exécuté ne serait pas du luxe.
un "crontab -l", pour peu qu'on saches lire, nous le dit.
- Je ne sais pas quel est le status des bugs de launchd.
Dureste j'ai pas trouvé comment chercher des bug reports qui ne
m'appartiennent pas, donc possiblement ce truc a des problèmes et je ne
peux pas le savoir. Comme il change régulièrement, on est pas à l'abris
d'une coquille. A l'inverse, cron est débuggé depuis des années.
- Je ne connais pas la compatibilité entre les version système, vu que
c'est pas le même entre 10.4, 10.5 et 10.6. Et même si on test de façon
approfondie un truc, rien ne dit qu'il tournera encore après une update
système.
- Le détail qui agace, dans la man page de launchctl :
-w Overrides the Disabled key and sets it to false. In
previous versions, this option would modify the config-
uration file. Now the state of the Disabled key is
stored elsewhere on-disk.
C'est bien la première fois que je vois une man page dire "elsewhere"
ça veux dire quoi ? C'est le jeux des devinettes ? Il y a combien de
façon différentes de gérer la même chose ?
Merci patpro pour ce blog, que j'ai jamais remarqué
dans ta signature <:o)
Plein de bonnes choses à lire !
Par contre je ne comprends pas pourquoi, alors que tu critiques launchd
tout du long de ton article, tu dis qu'il est buggy, verbeux et
complexe, incompatible avec les versions précédentes de Mac OS X,
pourquoi donc tu continues à dire qu'il faut l'utiliser à la place de
cron !?
Tu penses que Apple va supprimer cron dans une future version ?
Ou que cron a des défaut ?
En revanche j'ai les problèmes suivants avec launchd :
(en plus de ce que tu évoques)
- Il est complexe. J'ai pas pris le temps de bien étudier la chose, mais
par exemple que vient faire umask dans launchd ?
Le man ne le dit pas.
- Je doutes de sa fiabilité. par exemple sur la grosse majorité de mes
clients les daily ne sont pas exécutés de façon régulière
- "launchctl list" ne dit que si le process est on ou off.
Pour un scheduler c'est pas un peu léger ?
Savoir quand chaque job sera exécuté ne serait pas du luxe.
un "crontab -l", pour peu qu'on saches lire, nous le dit.
- Je ne sais pas quel est le status des bugs de launchd.
Dureste j'ai pas trouvé comment chercher des bug reports qui ne
m'appartiennent pas, donc possiblement ce truc a des problèmes et je ne
peux pas le savoir. Comme il change régulièrement, on est pas à l'abris
d'une coquille. A l'inverse, cron est débuggé depuis des années.
- Je ne connais pas la compatibilité entre les version système, vu que
c'est pas le même entre 10.4, 10.5 et 10.6. Et même si on test de façon
approfondie un truc, rien ne dit qu'il tournera encore après une update
système.
- Le détail qui agace, dans la man page de launchctl :
-w Overrides the Disabled key and sets it to false. In
previous versions, this option would modify the config-
uration file. Now the state of the Disabled key is
stored elsewhere on-disk.
C'est bien la première fois que je vois une man page dire "elsewhere"
ça veux dire quoi ? C'est le jeux des devinettes ? Il y a combien de
façon différentes de gérer la même chose ?
Merci patpro pour ce blog, que j'ai jamais remarqué
dans ta signature <:o)
Plein de bonnes choses à lire !
Par contre je ne comprends pas pourquoi, alors que tu critiques launchd
tout du long de ton article, tu dis qu'il est buggy, verbeux et
complexe, incompatible avec les versions précédentes de Mac OS X,
pourquoi donc tu continues à dire qu'il faut l'utiliser à la place de
cron !?
Tu penses que Apple va supprimer cron dans une future version ?
Ou que cron a des défaut ?
En revanche j'ai les problèmes suivants avec launchd :
(en plus de ce que tu évoques)
- Il est complexe. J'ai pas pris le temps de bien étudier la chose, mais
par exemple que vient faire umask dans launchd ?
Le man ne le dit pas.
- Je doutes de sa fiabilité. par exemple sur la grosse majorité de mes
clients les daily ne sont pas exécutés de façon régulière
- "launchctl list" ne dit que si le process est on ou off.
Pour un scheduler c'est pas un peu léger ?
Savoir quand chaque job sera exécuté ne serait pas du luxe.
un "crontab -l", pour peu qu'on saches lire, nous le dit.
- Je ne sais pas quel est le status des bugs de launchd.
Dureste j'ai pas trouvé comment chercher des bug reports qui ne
m'appartiennent pas, donc possiblement ce truc a des problèmes et je ne
peux pas le savoir. Comme il change régulièrement, on est pas à l'abris
d'une coquille. A l'inverse, cron est débuggé depuis des années.
- Je ne connais pas la compatibilité entre les version système, vu que
c'est pas le même entre 10.4, 10.5 et 10.6. Et même si on test de façon
approfondie un truc, rien ne dit qu'il tournera encore après une update
système.
- Le détail qui agace, dans la man page de launchctl :
-w Overrides the Disabled key and sets it to false. In
previous versions, this option would modify the config-
uration file. Now the state of the Disabled key is
stored elsewhere on-disk.
C'est bien la première fois que je vois une man page dire "elsewhere"
ça veux dire quoi ? C'est le jeux des devinettes ? Il y a combien de
façon différentes de gérer la même chose ?
Parce que c'est la voie tracée par Apple. Si tu résistes, tu finis par
te faire mal, à moins d'être hyper-compétent. Si tu n'aimes pas, il vaut
mieux te tourner vers des alternatives (FreeBSD, Linux...)
hmmmm
man launchd.plist (10.6) me donne :
Umask <integer>
This optional key specifies what value should be passed to umask(2)
before running the job.
> - Je doutes de sa fiabilité. par exemple sur la grosse majorité de mes
> clients les daily ne sont pas exécutés de façon régulière
je n'ai pas de souvenir d'échec de cet ordre avec Launchd, par contre
j'ai eu pas mal de problèmes de mails non-envoyés à l'issue de
l'exécution d'un plist.
C'est sans fin, car launchd fait des tonnes de choses. Si tu commences à
indiquer les données de scheduling, il faut indiquer des données de
WatchPaths, QueueDirectories... et toutes les autres, dans un format
lisible et compact.
la compatibilité est plutôt bonne, mais c'est vrai que 10.4-10.5 est une
période charnière pendant la quelle Apple a mélangé allègrement
StartupItems, Launchd, ... le temps que les fonctionnalités de launchd
se stabilisent.
Parce que c'est la voie tracée par Apple. Si tu résistes, tu finis par
te faire mal, à moins d'être hyper-compétent. Si tu n'aimes pas, il vaut
mieux te tourner vers des alternatives (FreeBSD, Linux...)
hmmmm
man launchd.plist (10.6) me donne :
Umask <integer>
This optional key specifies what value should be passed to umask(2)
before running the job.
> - Je doutes de sa fiabilité. par exemple sur la grosse majorité de mes
> clients les daily ne sont pas exécutés de façon régulière
je n'ai pas de souvenir d'échec de cet ordre avec Launchd, par contre
j'ai eu pas mal de problèmes de mails non-envoyés à l'issue de
l'exécution d'un plist.
C'est sans fin, car launchd fait des tonnes de choses. Si tu commences à
indiquer les données de scheduling, il faut indiquer des données de
WatchPaths, QueueDirectories... et toutes les autres, dans un format
lisible et compact.
la compatibilité est plutôt bonne, mais c'est vrai que 10.4-10.5 est une
période charnière pendant la quelle Apple a mélangé allègrement
StartupItems, Launchd, ... le temps que les fonctionnalités de launchd
se stabilisent.
Parce que c'est la voie tracée par Apple. Si tu résistes, tu finis par
te faire mal, à moins d'être hyper-compétent. Si tu n'aimes pas, il vaut
mieux te tourner vers des alternatives (FreeBSD, Linux...)
hmmmm
man launchd.plist (10.6) me donne :
Umask <integer>
This optional key specifies what value should be passed to umask(2)
before running the job.
> - Je doutes de sa fiabilité. par exemple sur la grosse majorité de mes
> clients les daily ne sont pas exécutés de façon régulière
je n'ai pas de souvenir d'échec de cet ordre avec Launchd, par contre
j'ai eu pas mal de problèmes de mails non-envoyés à l'issue de
l'exécution d'un plist.
C'est sans fin, car launchd fait des tonnes de choses. Si tu commences à
indiquer les données de scheduling, il faut indiquer des données de
WatchPaths, QueueDirectories... et toutes les autres, dans un format
lisible et compact.
la compatibilité est plutôt bonne, mais c'est vrai que 10.4-10.5 est une
période charnière pendant la quelle Apple a mélangé allègrement
StartupItems, Launchd, ... le temps que les fonctionnalités de launchd
se stabilisent.
Le launchDaemon com.apple.periodic-daily.plist dit ceci :
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
fera jamais le daily ?
C'est malin ... mais c'est rassurant.
En fait il faut mettre un StartInterval à la place du
StartCalendarInterval, comme on mettait anacron à la place de cron ?
Je comprends ton argument, mais je trouve qu'une fois de plus le nouveau
machin en fait moins que l'ancien.
Le launchDaemon com.apple.periodic-daily.plist dit ceci :
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
fera jamais le daily ?
C'est malin ... mais c'est rassurant.
En fait il faut mettre un StartInterval à la place du
StartCalendarInterval, comme on mettait anacron à la place de cron ?
Je comprends ton argument, mais je trouve qu'une fois de plus le nouveau
machin en fait moins que l'ancien.
Le launchDaemon com.apple.periodic-daily.plist dit ceci :
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
fera jamais le daily ?
C'est malin ... mais c'est rassurant.
En fait il faut mettre un StartInterval à la place du
StartCalendarInterval, comme on mettait anacron à la place de cron ?
Je comprends ton argument, mais je trouve qu'une fois de plus le nouveau
machin en fait moins que l'ancien.
Le launchDaemon com.apple.periodic-daily.plist dit ceci :
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
fera jamais le daily ?
C'est malin ... mais c'est rassurant.
Le launchDaemon com.apple.periodic-daily.plist dit ceci :
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
fera jamais le daily ?
C'est malin ... mais c'est rassurant.
Le launchDaemon com.apple.periodic-daily.plist dit ceci :
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>3</integer>
<key>Minute</key>
<integer>15</integer>
</dict>
Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
fera jamais le daily ?
C'est malin ... mais c'est rassurant.
Nicolas Michel a couché sur son écran :
> Le launchDaemon com.apple.periodic-daily.plist dit ceci :
>
> <key>StartCalendarInterval</key>
> <dict>
> <key>Hour</key>
> <integer>3</integer>
> <key>Minute</key>
> <integer>15</integer>
> </dict>
>
> Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
> fera jamais le daily ?
>
> C'est malin ... mais c'est rassurant.
Pour compléter les propos de Patrick, j'ai constaté que les scripts
daily, weekly et monthly étaient lancé au réveil si la machine est en
veille, mais pas si la machine est éteinte. (10.5 et 10.6)
Nicolas Michel a couché sur son écran :
> Le launchDaemon com.apple.periodic-daily.plist dit ceci :
>
> <key>StartCalendarInterval</key>
> <dict>
> <key>Hour</key>
> <integer>3</integer>
> <key>Minute</key>
> <integer>15</integer>
> </dict>
>
> Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
> fera jamais le daily ?
>
> C'est malin ... mais c'est rassurant.
Pour compléter les propos de Patrick, j'ai constaté que les scripts
daily, weekly et monthly étaient lancé au réveil si la machine est en
veille, mais pas si la machine est éteinte. (10.5 et 10.6)
Nicolas Michel a couché sur son écran :
> Le launchDaemon com.apple.periodic-daily.plist dit ceci :
>
> <key>StartCalendarInterval</key>
> <dict>
> <key>Hour</key>
> <integer>3</integer>
> <key>Minute</key>
> <integer>15</integer>
> </dict>
>
> Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
> fera jamais le daily ?
>
> C'est malin ... mais c'est rassurant.
Pour compléter les propos de Patrick, j'ai constaté que les scripts
daily, weekly et monthly étaient lancé au réveil si la machine est en
veille, mais pas si la machine est éteinte. (10.5 et 10.6)
In article <4bd85013$,
Frédéric Testuz wrote:
> Nicolas Michel a couché sur son écran :
>
> > Le launchDaemon com.apple.periodic-daily.plist dit ceci :
> >
> > <key>StartCalendarInterval</key>
> > <dict>
> > <key>Hour</key>
> > <integer>3</integer>
> > <key>Minute</key>
> > <integer>15</integer>
> > </dict>
> >
> > Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
> > fera jamais le daily ?
> >
> > C'est malin ... mais c'est rassurant.
>
> Pour compléter les propos de Patrick, j'ai constaté que les scripts
> daily, weekly et monthly étaient lancé au réveil si la machine est en
> veille, mais pas si la machine est éteinte. (10.5 et 10.6)
En fait je crois que launchd détermine quand lancer le job la prochaine
fois. Si on éteint la machine tous les soirs, il va chaque matin
déterminer qu'il faut le lancer la nuit suivante (il ne s'occupe pas de
savoir si le script a été exécuté ou pas).
Par contre, la veille ne fait que suspendre le compteur, qui reprend au
réveil : l'effet est que l'exécution du script sera décalée dans le
temps, le décalage correspondant à la durée de veille.
C'est donc pas du tout une fonctionnalité, juste un effet secondaire de
la manière dont launchd lancer periodic.
In article <4bd85013$1_1@news.tiscalinet.ch>,
Frédéric Testuz <ftestuz@macsanspub.com.invalid> wrote:
> Nicolas Michel a couché sur son écran :
>
> > Le launchDaemon com.apple.periodic-daily.plist dit ceci :
> >
> > <key>StartCalendarInterval</key>
> > <dict>
> > <key>Hour</key>
> > <integer>3</integer>
> > <key>Minute</key>
> > <integer>15</integer>
> > </dict>
> >
> > Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
> > fera jamais le daily ?
> >
> > C'est malin ... mais c'est rassurant.
>
> Pour compléter les propos de Patrick, j'ai constaté que les scripts
> daily, weekly et monthly étaient lancé au réveil si la machine est en
> veille, mais pas si la machine est éteinte. (10.5 et 10.6)
En fait je crois que launchd détermine quand lancer le job la prochaine
fois. Si on éteint la machine tous les soirs, il va chaque matin
déterminer qu'il faut le lancer la nuit suivante (il ne s'occupe pas de
savoir si le script a été exécuté ou pas).
Par contre, la veille ne fait que suspendre le compteur, qui reprend au
réveil : l'effet est que l'exécution du script sera décalée dans le
temps, le décalage correspondant à la durée de veille.
C'est donc pas du tout une fonctionnalité, juste un effet secondaire de
la manière dont launchd lancer periodic.
In article <4bd85013$,
Frédéric Testuz wrote:
> Nicolas Michel a couché sur son écran :
>
> > Le launchDaemon com.apple.periodic-daily.plist dit ceci :
> >
> > <key>StartCalendarInterval</key>
> > <dict>
> > <key>Hour</key>
> > <integer>3</integer>
> > <key>Minute</key>
> > <integer>15</integer>
> > </dict>
> >
> > Est-ce que ça veux dire que une machine éteinte ou en veille à 3h15 ne
> > fera jamais le daily ?
> >
> > C'est malin ... mais c'est rassurant.
>
> Pour compléter les propos de Patrick, j'ai constaté que les scripts
> daily, weekly et monthly étaient lancé au réveil si la machine est en
> veille, mais pas si la machine est éteinte. (10.5 et 10.6)
En fait je crois que launchd détermine quand lancer le job la prochaine
fois. Si on éteint la machine tous les soirs, il va chaque matin
déterminer qu'il faut le lancer la nuit suivante (il ne s'occupe pas de
savoir si le script a été exécuté ou pas).
Par contre, la veille ne fait que suspendre le compteur, qui reprend au
réveil : l'effet est que l'exécution du script sera décalée dans le
temps, le décalage correspondant à la durée de veille.
C'est donc pas du tout une fonctionnalité, juste un effet secondaire de
la manière dont launchd lancer periodic.
Merci pour ces précisions intéressantes !
Merci pour ces précisions intéressantes !
Merci pour ces précisions intéressantes !