OVH Cloud OVH Cloud

Cron et portable ?

31 réponses
Avatar
ludovic.thebault
Bonjour,

Plusieurs question sur cron :

1/ les tâches systèmes sont prévues pour s'exécuter la nuit.
Si le mac est en veille ou éteint, elles n'ont pas lieu. Quels sont les
risques de ne jamais (ou pas souvent) laisser le système exécuter ces
tâches ?

2/ Grâce à cronnix on peut heureusement, et facilement, les exécuter à
d'autres heures, mais pour les portables ? Quand on ne les utilises pas,
ils sont en veille ou éteints, bien plus souvent donc qu'un ordi de
bureau. Il est alors difficile de planifier un horaire pour l'éxécution
des tâches système.

3/ Quels risques peuvent être liés à une mise en veille en pleine action
d'une tâche de maintenance ?

4/ Un utilitaire qui déclencherait une tâche cron lors d'une période
d'inactivité de l'ordi ne serait-il pas plus adapté (en même temps que
l'écran de veille par exemple) ?

Merci de vos réponses !

10 réponses

1 2 3 4
Avatar
laurent.pertois
Anonyme wrote:

Aucun réel risque. Eventuellement quelques ralentissements si les
scripts ne sont vraiment jamais lancés. Des utilitaires en ligne de
commande comme "locate" n'auront pas une base à jour, etc... Rien de
grave...


Aucuns risques, mais des ralentissements, je confirme, j'ai vu un
system.log, jamais compressé, de plus d'1 Go, ben, vu que Mac OS X est
sans cesse en train d'écrire dedans, c'est plus lent que quand il écrit
dans un system.log de quelques ko...

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.

Avatar
DINH Viêt Hoà

Non. Une bonne implémentation de cron exécute les tâche au moment précis
prévu pour le lancement, pas à un autre moment.


http://www.opengroup.org/onlinepubs/007904975/utilities/crontab.html

POSIX ne précise pas le comportement de cron.
Il ne dit pas s'il doit exécuter les tâches ou non dans le cas décrit.

--
DINH V. Hoa,

"un bon ingénieur n'est pas paresseux" -- ArSuniK [1]

Avatar
DINH Viêt Hoà

Et aussi réactiver quand le modem détecte une sonnerie ou pour accès
éthernet de l'administrateur (tableau de bord Economiseur d'énergie).
Pourquoi Cron ne pourrait-il pas en faire autant ?


Parce que cron est un logiciel et qu'il dort quand la machine dort. Les
exemples que tu cites font intervenir du matériel (modem, carte
ethernet) qui ne dorment pas et peuvent donc réveiller le système.


enfin on pourrait imaginer qu'une commande cron bien adapté au matériel
pourrait scheduler un réveil de l'ordinateur à une date donnée.

ce qui ferait que si l'ordinateur est en veille à se moment-là, il se
réveillera.
Et si l'ordinateur est déjà allumé, le réveil sera simplement ignoré.

--
DINH V. Hoa,

"un bon ingénieur n'est pas paresseux" -- ArSuniK [1]


Avatar
laurent.pertois
DINH Viêt Hoà wrote:

enfin on pourrait imaginer qu'une commande cron bien adapté au matériel
pourrait scheduler un réveil de l'ordinateur à une date donnée.


C'est çui qui dit qui fait :)

--
Politically Correct Unix - UTILITIES
The "touch" command has been removed from the standard distribution due
to its inappropriate use by high-level managers.

Avatar
Anonyme
DINH Viêt Hoà wrote:


Non. Une bonne implémentation de cron exécute les tâche au moment précis
prévu pour le lancement, pas à un autre moment.


http://www.opengroup.org/onlinepubs/007904975/utilities/crontab.html

POSIX ne précise pas le comportement de cron.
Il ne dit pas s'il doit exécuter les tâches ou non dans le cas décrit.



The sixth field of a line in a crontab entry is a string that shall be
executed by sh at the specified times.

Ce qui veut dire que la tâche doit être exécutée aux heures précisées.
Ce ne dit pas que les tâches doivent être exécutées absoluement, juste
qu'elles doivent être exécutées à ces heures là.



--
Anonyme ( jayce <@> mosx.net )
********* MosX.net <http://www.mosx.net/> *********


Avatar
DINH Viêt Hoà

POSIX ne précise pas le comportement de cron.
Il ne dit pas s'il doit exécuter les tâches ou non dans le cas décrit.


The sixth field of a line in a crontab entry is a string that shall be
executed by sh at the specified times.

Ce qui veut dire que la tâche doit être exécutée aux heures précisées.
Ce ne dit pas que les tâches doivent être exécutées absoluement, juste
qu'elles doivent être exécutées à ces heures là.


Quand je disais "POSIX ne précise pas", c'est que POSIX ne dit pas ce
qu'il faut faire si la machine est éteinte entre 2. C'est à
l'implémentation de faire son choix.

--
DINH V. Hoa,

"un bon ingénieur n'est pas paresseux" -- ArSuniK [1]


Avatar
bpesenti_pala
Ludovic Thébault wrote:

4/ Un utilitaire qui déclencherait une tâche cron lors d'une période
d'inactivité de l'ordi ne serait-il pas plus adapté (en même temps que
l'écran de veille par exemple) ?


anacron, installable via Fink

Avatar
Anonyme
DINH Viêt Hoà wrote:

Ce qui veut dire que la tâche doit être exécutée aux heures précisées.
Ce ne dit pas que les tâches doivent être exécutées absoluement, juste
qu'elles doivent être exécutées à ces heures là.


Quand je disais "POSIX ne précise pas", c'est que POSIX ne dit pas ce
qu'il faut faire si la machine est éteinte entre 2. C'est à
l'implémentation de faire son choix.


Non, c'est clairment dit, la tache doit être exécutée à une certaine
heure. Et c'est heureux que les divers implémentation ne jouent pas sur
ce fait parce que certaines choses programmées à une certaine ne doivent
ABSOLUEMENT pas être faite à un autre moment, même si elles n'ont pas
été faite au moment voulu.

--
Anonyme ( jayce <@> mosx.net )
********* MosX.net <http://www.mosx.net/> *********


Avatar
Anonyme
Laurent Pertois wrote:

Philippe RAI wrote:

Et aussi réactiver quand le modem détecte une sonnerie ou pour accès
éthernet de l'administrateur (tableau de bord Economiseur d'énergie).
Pourquoi Cron ne pourrait-il pas en faire autant ?


Parce que cron est un logiciel et qu'il dort quand la machine dort. Les
exemples que tu cites font intervenir du matériel (modem, carte
ethernet) qui ne dorment pas et peuvent donc réveiller le système.


Et heureusement... Imaginez un peu un protable qui se réveille tout seul
pendant qu'on est en train de le transporter...

--
Anonyme ( jayce <@> mosx.net )
********* MosX.net <http://www.mosx.net/> *********


Avatar
DINH Viêt Hoà

Ce qui veut dire que la tâche doit être exécutée aux heures précisées.
Ce ne dit pas que les tâches doivent être exécutées absoluement, juste
qu'elles doivent être exécutées à ces heures là.


Quand je disais "POSIX ne précise pas", c'est que POSIX ne dit pas ce
qu'il faut faire si la machine est éteinte entre 2. C'est à
l'implémentation de faire son choix.


Non, c'est clairment dit, la tache doit être exécutée à une certaine
heure. Et c'est heureux que les divers implémentation ne jouent pas sur
ce fait parce que certaines choses programmées à une certaine ne doivent
ABSOLUEMENT pas être faite à un autre moment, même si elles n'ont pas
été faite au moment voulu.


ah ouais ?

Je me disais plutôt qu'il serait intéressant qu'elles soient exécutées
quand même. C'est un choix d'implémentation (pardon d'insister).
Quand une certaine norme est établie (ou religion), il y a toujours des
égarement dans l'interprétation des choses. C'est aux textes d'être
clairs et interdire les comportements non désirés. Et dans le cas de
crontab, je n'ai lu nul part que c'était proscrit.

--
DINH V. Hoa,

"un bon ingénieur n'est pas paresseux" -- ArSuniK [1]



1 2 3 4