⚔ Configuration de tâches basées sur des déclencheurs d’événements sous Linux
▶ Introduction
Ce tutoriel montre comment configurer des tâches automatisées sous Linux, déclenchées par des événements spécifiques comme l'ouverture de session ou l'inactivité du système. L’utilisation de cron, anacron et des scripts de gestion permet de maintenir le système en effectuant des actions ciblées à des moments opportuns, optimisant ainsi les ressources.
Prérequis
• Système Linux avec accès root
• Connaissance de base des scripts bash et de cron
• Paquet xprintidle pour détecter l'inactivité (si nécessaire)
Méthodologie
Configuration d’une Tâche Automatisée à l’Ouverture de Session
• Pour exécuter un script bash à l'ouverture de session, éditez le fichier /.bash_profile (ou /.profile sur certaines distributions) et ajoutez le chemin du script à exécuter. Par exemple :
• Ce script sera exécuté automatiquement chaque fois que vous vous connectez à la session. Vous pouvez l'utiliser pour des nettoyages, des synchronisations de fichiers, ou d'autres actions de maintenance.
Configuration d’une Tâche Basée sur l’Inactivité avec xprintidle et cron
• Installez xprintidle avec la commande suivante :
• Créez un script pour vérifier l'inactivité. Par exemple, le script ci-dessous exécute une tâche si le système est inactif depuis plus de 15 minutes :
• Planifiez ce script pour qu'il s’exécute toutes les minutes avec cron. Ouvrez le crontab en éditant la commande suivante :
• Ajoutez cette ligne pour exécuter le script d’inactivité toutes les minutes :
• Le script d’inactivité se déclenchera lorsque le système n’aura détecté aucune activité durant la durée spécifiée.
Astuce
Utilisez systemd timers pour des options plus flexibles de planification, en particulier si vous souhaitez limiter les tâches de fond à certains utilisateurs ou ajuster les priorités.
Avertissement
Les tâches récurrentes peuvent interférer avec les performances ; évitez d’utiliser des scripts trop intensifs, surtout avec une fréquence d’inactivité basse. Testez d’abord pour éviter des exécutions multiples non désirées.
Conseil
Pour les tâches complexes, combinez cron avec des scripts bash enregistrant des logs d’exécution, ce qui permet de suivre l’activité et de corriger rapidement les erreurs.
Solution alternative
Essayez ntopng pour la gestion de l’activité réseau et des tâches liées à l’inactivité, en complément des solutions de planification.
Conclusion
Avec des outils comme cron, xprintidle, et bash, vous pouvez automatiser les tâches en fonction des déclencheurs d’ouverture de session ou d’inactivité, optimisant ainsi la gestion et la maintenance du système sous Linux.
▶ Introduction
Ce tutoriel montre comment configurer des tâches automatisées sous Linux, déclenchées par des événements spécifiques comme l'ouverture de session ou l'inactivité du système. L’utilisation de cron, anacron et des scripts de gestion permet de maintenir le système en effectuant des actions ciblées à des moments opportuns, optimisant ainsi les ressources.

• Système Linux avec accès root
• Connaissance de base des scripts bash et de cron
• Paquet xprintidle pour détecter l'inactivité (si nécessaire)


• Pour exécuter un script bash à l'ouverture de session, éditez le fichier /.bash_profile (ou /.profile sur certaines distributions) et ajoutez le chemin du script à exécuter. Par exemple :
Code:
sh /chemin/vers/votre_script.sh
• Ce script sera exécuté automatiquement chaque fois que vous vous connectez à la session. Vous pouvez l'utiliser pour des nettoyages, des synchronisations de fichiers, ou d'autres actions de maintenance.

• Installez xprintidle avec la commande suivante :
Code:
sudo apt install xprintidle
• Créez un script pour vérifier l'inactivité. Par exemple, le script ci-dessous exécute une tâche si le système est inactif depuis plus de 15 minutes :
Code:
#!/bin/bash if [ $(xprintidle) -gt 900000 ]; then /chemin/vers/tache_inactive.sh fi
• Planifiez ce script pour qu'il s’exécute toutes les minutes avec cron. Ouvrez le crontab en éditant la commande suivante :
Code:
crontab -e
• Ajoutez cette ligne pour exécuter le script d’inactivité toutes les minutes :
Code:
* * * * * /chemin/vers/script_inactivite.sh
• Le script d’inactivité se déclenchera lorsque le système n’aura détecté aucune activité durant la durée spécifiée.

Utilisez systemd timers pour des options plus flexibles de planification, en particulier si vous souhaitez limiter les tâches de fond à certains utilisateurs ou ajuster les priorités.

Les tâches récurrentes peuvent interférer avec les performances ; évitez d’utiliser des scripts trop intensifs, surtout avec une fréquence d’inactivité basse. Testez d’abord pour éviter des exécutions multiples non désirées.

Pour les tâches complexes, combinez cron avec des scripts bash enregistrant des logs d’exécution, ce qui permet de suivre l’activité et de corriger rapidement les erreurs.

Essayez ntopng pour la gestion de l’activité réseau et des tâches liées à l’inactivité, en complément des solutions de planification.

Avec des outils comme cron, xprintidle, et bash, vous pouvez automatiser les tâches en fonction des déclencheurs d’ouverture de session ou d’inactivité, optimisant ainsi la gestion et la maintenance du système sous Linux.