===================================================== DOCUMENTATION — Installation & Gestion du service ms1_reader ===================================================== 1. Fichier wrapper stable : run.sh Chemin : /home/reader/udp_server/run.sh Contenu du fichier : #!/bin/bash /usr/bin/python3 /home/reader/udp_server/chronotrack_server_au.py Commande pour rendre exécutable : chmod +x /home/reader/udp_server/run.sh 2. Installation des dépendances Python pour le service Installer pip3 : sudo dnf install python3-pip -y Installer le module MySQL utilisé par le script : sudo pip3 install mysql-connector-python 3. Fichier systemd : ms1_reader.service Chemin : /etc/systemd/system/ms1_reader.service Contenu du service : [Unit] Description=MS1 Reader - Service Python After=network.target [Service] User=reader WorkingDirectory=/home/reader/udp_server ExecStart=/home/reader/udp_server/run.sh Restart=always RestartSec=5 [Install] WantedBy=multi-user.target 4. Commandes systemd obligatoires après installation Recharger les fichiers systemd : sudo systemctl daemon-reload Activer le service au démarrage : sudo systemctl enable ms1_reader.service Démarrer le service : sudo systemctl start ms1_reader.service Vérifier l’état : sudo systemctl status ms1_reader.service ===================================================== SECTION : GESTION ET DIAGNOSTICS DU SERVICE ===================================================== 5. Commandes de gestion Arrêter : sudo systemctl stop ms1_reader.service Redémarrer : sudo systemctl restart ms1_reader.service Redémarrer + voir immédiatement le status : sudo systemctl restart ms1_reader.service && sudo systemctl status ms1_reader.service Désactiver le démarrage automatique : sudo systemctl disable ms1_reader.service 6. Journalisation & logs Voir les 50 dernières lignes : sudo journalctl -u ms1_reader.service -n 50 --no-pager Voir les logs en temps réel (streaming) : sudo journalctl -u ms1_reader.service -f Voir tous les logs depuis le début : sudo journalctl -u ms1_reader.service --no-pager Filtrer par date : sudo journalctl -u ms1_reader.service --since "2025-12-01" --until "2025-12-02" Effacer les logs journald (si nécessaire) : sudo journalctl --rotate sudo journalctl --vacuum-time=2d 7. Vérifications essentielles Tester si le service tourne : sudo systemctl is-active ms1_reader.service Tester si le service est configuré pour démarrer au boot : sudo systemctl is-enabled ms1_reader.service Voir le PID du service : systemctl show -p MainPID ms1_reader.service Voir la mémoire utilisée par le service : systemctl status ms1_reader.service (la ligne "Memory:" affiche la valeur) 8. Dépannage rapide Si le service plante immédiatement : journalctl -u ms1_reader.service -n 30 --no-pager Si le script ne démarre pas : • vérifier que run.sh est exécutable chmod +x /home/reader/udp_server/run.sh • vérifier que le chemin vers le script Python est correct /home/reader/udp_server/chronotrack_server_au.py • vérifier les permissions du dossier : ls -ld /home/reader/udp_server • vérifier que le module MySQL est installé globalement pip3 show mysql-connector-python