GNU/Linux >> Linux Esercitazione >  >> Linux

Come configurare l'esecuzione automatica di uno script Python utilizzando Systemd

Domanda:come eseguire automaticamente uno script Python utilizzando systemd. Come creare il proprio servizio systemd usando lo script Python. Come configurare lo script Python per l'avvio come systemd. Come gestire il servizio Python con systemctl?

Usa questo tutorial per eseguire lo script Python come servizio di sistema in systemd. Puoi facilmente avviare, interrompere o riavviare il tuo script usando il comando systemctl. Ciò consentirà anche di eseguire automaticamente lo script Python all'avvio del sistema.

Fase 1 – Applicazione Python fittizia

Prima di tutto, ho usato uno script Python fittizio che ascolta su una porta specificata. Modifica un file Python come segue

sudo vi /usr/bin/dummy_service.py

e aggiungi i seguenti contenuti per fittizio, puoi usare il tuo script Python secondo i requisiti.

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

Fase 2:crea un file di servizio

Ora, crea un file di servizio per systemd come segue. Il file deve contenere .service estensione in /lib/systemd/system/ directory

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

e aggiungi il seguente contenuto al suo interno. Modifica la posizione dell'annuncio del nome del file dello script Python. Aggiorna anche la descrizione.

[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

Fase 3:abilita il servizio appena aggiunto

Il tuo servizio di sistema è stato aggiunto al tuo servizio. Ricarichiamo il demone systemctl per leggere il nuovo file. Devi ricaricare questo demone ogni volta dopo aver apportato modifiche al file .service.

sudo systemctl daemon-reload

Ora abilita l'avvio del servizio all'avvio del sistema, avvia anche il servizio utilizzando i seguenti comandi.

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

Fase 4 – Avvia/Avvia/Stato nuovo servizio

Infine controlla lo stato del tuo servizio con il seguente comando.

sudo systemctl status dummy.service

Utilizza i comandi seguenti per interrompere, avviare e riavviare il manuale di servizio.

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. Come creare un servizio Systemd in Linux

  2. Come scaricare file dal server SFTP utilizzando lo script python

  3. Come tracciare gli script Python usando trace.py

  4. Come far funzionare uno script Python come un servizio o un demone in Linux

  5. Come eseguire uno script con systemd subito prima dell'arresto?

Come configurare un file server di base utilizzando simpleHTTPserver

Come eseguire lo script della shell come servizio Systemd in Linux

Utilizzo delle funzionalità di systemd per proteggere i servizi

Come eseguire uno script Python in PHP

Come ridimensionare le immagini usando Python

Come eseguire lo script della shell come servizio SystemD in Linux