J'ai un Raspberry Pi exécutant OSMC (basé sur Debian).
J'ai défini un travail cron pour démarrer un script, sync.sh, à minuit.
0 0 * * * /usr/local/bin sync.sh
Je dois arrêter le script à 7h du matin. Actuellement j'utilise:
0 7 * * * shutdown -r now
Y a-t-il une meilleure façon? J'ai l'impression que le redémarrage est exagéré.
Merci
Si votre synchronisation peut facilement continuer après 17 heures d'hibernation, essayez
Si votre synchronisation préfère redémarrer depuis le début, essayez
Si votre synchronisation ou ses sous-tâches ignorent les signaux mais ne laissent aucun débris, faites-le
killall
∈ psmiscla source
0 0 * * * timeout 7h /usr/local/bin/sync.sh
ou makillall -TERM
variante pour la plupart équivalente .J'utiliserais également cron pour "arrêter" ou "tuer" ce service ou ce script à un moment spécifié.
Créez d'abord votre tâche cron pour exécuter votre tâche ou votre script. (vous pouvez facilement exécuter un autre cron qui tuera un travail qui a un nom
sudo pkill wget
)Deuxièmement, vous voulez voir l'exécution des tâches crontab, dans un format utile et lisible, dans la sortie de:
Ils apparaîtront dans les premières lignes, quelque chose comme ceci:
La première colonne est PID, la deuxième est l'ID de session et la troisième est la commande démarrée par cron. Vous pouvez tuer tous les processus liés à une tâche cron spécifique en utilisant l'ID de session, donc dans l'exemple ci-dessus, vous devez tuer l'ID de session 4289:
Vous devez mettre le pkill dans un script et l'exécuter en tant que cron
la source