GNU/Linux >> Tutoriels Linux >  >> Linux

Comment configurer l'exécution automatique d'un script Python à l'aide de Systemd

Question – Comment exécuter automatiquement un script Python à l'aide de systemd. Comment créer son propre service systemd en utilisant le script Python. Comment configurer le script Python pour qu'il démarre en tant que systemd. Comment gérer le service Python avec systemctl ?

Utilisez ce didacticiel pour exécuter votre script Python en tant que service système sous systemd. Vous pouvez facilement démarrer, arrêter ou redémarrer votre script à l'aide de la commande systemctl. Cela permettra également d'exécuter automatiquement le script Python au démarrage du système.

Étape 1 - Application Python factice

Tout d'abord, j'ai utilisé un script Python factice qui écoute sur un port spécifié. Modifiez un fichier Python comme suit

sudo vi /usr/bin/dummy_service.py

et ajoutez le contenu suivant pour le mannequin, vous pouvez utiliser votre propre script Python selon les besoins.

Python
123456789101112 #!/usr/bin/python3 import sockets =socket.socket(socket.AF_INET, socket.SOCK_STREAM)s.bind(("localhost", 9988))s.listen(1) while Vrai :conn, addr =s.accept() data =conn.recv(1024) conn.close() my_function_that_handles_data(data)

Étape 2 - Créer un fichier de service

Maintenant, créez un fichier de service pour le systemd comme suit. Le fichier doit avoir .service extension sous /lib/systemd/system/ répertoire

sudo vi /lib/systemd/system/dummy.service

et ajoutez-y le contenu suivant. Modifier l'emplacement de l'annonce du nom de fichier du script Python. Mettez également à jour la description.

[Unit]
Description=Dummy Service
After=multi-user.target
[email protected]

[Service]
Type=simple
ExecStart=/usr/bin/python3 /usr/bin/dummy_service.py
StandardInput=tty-force

[Install]
WantedBy=multi-user.target

Étape 3 - Activer le service nouvellement ajouté

Votre service système a été ajouté à votre service. Rechargeons le démon systemctl pour lire le nouveau fichier. Vous devez recharger ce démon à chaque fois après avoir apporté des modifications au fichier .service.

sudo systemctl daemon-reload

Activez maintenant le service pour qu'il démarre au démarrage du système, démarrez également le service à l'aide des commandes suivantes.

sudo systemctl enable dummy.service
sudo systemctl start dummy.service

Étape 4 - Démarrer/Démarrer/Statut nouveau service

Enfin, vérifiez l'état de votre service en suivant la commande.

sudo systemctl status dummy.service

Utilisez les commandes ci-dessous pour arrêter, démarrer et redémarrer votre manuel d'entretien.

sudo systemctl stop dummy.service          #To stop running service 
sudo systemctl start dummy.service         #To start running service 
sudo systemctl restart dummy.service       #To restart running service 

Linux
  1. Comment créer un service Systemd sous Linux

  2. Comment télécharger des fichiers à partir du serveur SFTP à l'aide d'un script python

  3. Comment tracer des scripts Python à l'aide de trace.py

  4. Comment faire fonctionner le script Python en tant que service ?

  5. Comment exécuter un script avec systemd juste avant l'arrêt ?

Comment configurer un serveur de fichiers de base à l'aide de simpleHTTPserver

Comment exécuter un script Shell en tant que service Systemd sous Linux

Utiliser les fonctionnalités de systemd pour sécuriser les services

Comment exécuter un script Python en PHP

Comment redimensionner des images à l'aide de Python

Comment exécuter un script Shell en tant que service SystemD sous Linux