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
Frederic PONCET

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 ?


Le système va perdre petit à petit de sa réactivité et le disque dur
sera encombré de vieux fichiers inutiles. Rien de très grave. Par contre
il est bon de faire du ménage en lançant les tâches "à la main" avec un
utilitaire (Onyx, MacJanitor...)

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.


Si on les planifie quotidiennement, on augmente les chances qu'elles
soient exécutées au moins une fois par semaine. De même, on peut
planifier hebdomadairement une tâche qui doit être effectuée au moins
une fois par mois, etc.


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


Aucun. La mise en veille n'est pas une brutale interruption de
l'alimentation! Regarde les logs système (avec Console) et tu verra
qu'il fait plein de choses avant de s'endormir. Les tâches qui ne
doivent pas être interrompues ne le sont pas, celles qui peuvent l'être
sont remises à plus tard... (au prochain appel par cron)

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) ?


Quand l'écran de veille est actif, l'ordinateur n'est pas inactif. Donc
les tâches cron s'exécutent.

Pour exécuter des tâches quand on ne se sert pas de l'ordinateur,
crontab ne suffit pas. Il faut un script shell ou AppleScript (qui
peuvent être lancé par crontab, voire par iCal pour un script AppleScript)

Pour ma part (j'ai un PowerBook) j'ai programmé la déconnexion
automatique de session (fonction disponible sur 10.3). J'ai écrit un
script shell qui est appelé toutes les 30 mn par crontab. Ce script
vérifie s'il y a un utilisateur connecté ou non; s'il n'y en a pas, il
lance certaines tâches (synchronisation de dossiers, etc...). S'il y a
un utilisateur connecté, il peut lancer un script AppleScript par
exemple. Il effectue également des tests sur la date, ce qui permet de
programmer, pourquoi pas, les tâches de maintenance. Enfin il crée un
fichier log dans lequel il note ce qu'il fait.

Résultat : les tâches automatisées ne s'exécutent que quand je ne me
sers pas de l'ordinateur. L'expérience montre qu'elles le sont au moins
une fois par jour.

Je n'ai pas encore diffusé ce script pour l'instant parce qu'il n'est
pas "fini", mais s'il y a de la demande...
--
"Il faut être absolument moderne" (Arthur Rimbaud)

http://www.frederic-poncet.com/

Avatar
DINH Viêt Hoà

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 ?


Lorsqu'il est éteint à la date prévue de démarrage de la tâche, la
tâche ne s'exécutera pas.

S'il est en veille, une bonne implémentation de cron permettrait
d'exécuter les tâches en attente lors du réveil du mac.
Mais attention, il est fort probable que ça ne permette pas d'exécuter
plus d'une fois les tâches en attente, je m'explique :

Si une tâche est prévue toutes les heures et que tu mets en veille ton
portable pendant une journée, il est fort probable que la tâche ne soit
exécutée qu'une fois.

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


La tâche sera mise en pause et puis continuée au réveil du mac.
(Même comportement que tes applications comme Mail lorsque ton portable
est en veille).

Un risque peut être que, si l'application ne gère pas les sauts
d'horloge, elle risque d'avoir un comportement non souhaité.
Par exemple, si elle mesure le temps entre 2 actions et défini un
comportement différent en fonction de cette mesure.

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) ?


Ce serait effectivement intéressant mais pas adapté à toutes tâches. Si
cette tâche est longue, comment la couper lorsque tu utilises ta machine
de nouveau ?

--
DINH V. Hoa,

"Vu que t'es physiquement intelligente, tu viens avec moi ?" - Brice

Avatar
Cyril
DINH Viêt Hoà :

S'il est en veille, une bonne implémentation de cron permettrait
d'exécuter les tâches en attente lors du réveil du mac.


Nan ;-) Pour ça, installer anacron :

<http://fink.sourceforge.net/pdb/package.php/anacron>

--
Cyril, du Havre
Cyril, du Havre

Avatar
philo.ra
Ludovic Thébault wrote:

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.


Ah bon ? il me semble avoir lu quelque part que la veille n'empêchait
pas leur exécution.

Philippe RAI

Avatar
Anonyme
DINH Viêt Hoà wrote:

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 ?


Lorsqu'il est éteint à la date prévue de démarrage de la tâche, la
tâche ne s'exécutera pas.

S'il est en veille, une bonne implémentation de cron permettrait
d'exécuter les tâches en attente lors du réveil du mac.


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.

Ce que du décrit est le comportement d'anacron, qui est complémentaire à
cron, mais ne le remplace pas.

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


Avatar
Anonyme
Philippe RAI wrote:

Ludovic Thébault wrote:

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.


Ah bon ? il me semble avoir lu quelque part que la veille n'empêchait
pas leur exécution.


Ce qui est bien sûr absoluement faux, l'ordinateur en veille ne faisant
rien, je ne vois pas comment il pourrait exécuter des script...

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


Avatar
Anonyme
Ludovic Thébault wrote:

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 ?


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...

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.


Il faut utiliser anacron.

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


Aucun. Comme n'importe quelle action au moment de la mise en veille,
elle se met en veille et continue eu réveil. Dans les tâches par défaut,
il n'y a aucune tâche faisant des calculs en fonction de l'heure, donc
pas de problème.

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) ?


Bof bof...

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

Avatar
philo.ra
Anonyme wrote:

Philippe RAI wrote:

Ludovic Thébault wrote:

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.


Ah bon ? il me semble avoir lu quelque part que la veille n'empêchait
pas leur exécution.


Ce qui est bien sûr absoluement faux, l'ordinateur en veille ne faisant
rien, je ne vois pas comment il pourrait exécuter des script...


Et en le réveillant ? Après tout on peut bien commander la mise en route
de l'ordinateur à une heure donnée.
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 ?

Philippe RAI



Avatar
laurent.pertois
Frederic PONCET wrote:

Résultat : les tâches automatisées ne s'exécutent que quand je ne me
sers pas de l'ordinateur. L'expérience montre qu'elles le sont au moins
une fois par jour.


En même temps, les tâches automatisées d'origine ne sont pas
pénalisantes si elles sont effectuées régulièrement, mais je ne sais pas
ce que tu as rajouté.

Je n'ai pas encore diffusé ce script pour l'instant parce qu'il n'est
pas "fini", mais s'il y a de la demande...


Yep, envoie le lien (pas le fichier, les PJ sont filtrées) à l'adresse
indiquée, elle est valide.

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

Avatar
laurent.pertois
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.

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

1 2 3 4