Impara Linux

Tutto sui demoni in Linux

Tutto sui demoni in Linux

Poiché il sistema operativo Linux è caratterizzato come un sistema operativo multitasking, un demone è, per definizione, un programma che viene eseguito continuamente come processo in background. In breve, l'esecuzione di questo processo non dipende dall'interazione del sistema di un utente attivo. Un normale utente di sistema non può controllare l'esecuzione periodica di un processo demone.

La convenzione di denominazione che definisce la maggior parte dei processi demone è il "suffisso" di una lettera d. Questa convenzione di denominazione consente di distinguere tra normali processi di sistema e processi basati su demoni. Per esempio, sshd è un processo demone responsabile della gestione dell'incomingSSH connessioni. Un altro esempio di processo demone èsyslogd. È responsabile della funzione di registrazione del sistema Linux.

In un ambiente Linux, il lancio dei demoni avviene al momento dell'avvio. Poiché il sistema Linux è un clone Unix perfetto, un processo init si qualifica come processo padre di un demone. Per avviare e arrestare i demoni sul tuo sistema operativo Linux, devi prima accedere al/etc/init.d directory degli script sul tuo sistema operativo.

Funzioni comuni dei demoni

Utili demoni del servizio Linux

Che tu sia un utente principiante, intermedio o esperto nel mondo del sistema operativo Linux, non mancherai mai di familiarizzare con uno dei demoni sopra elencati mentre avanzi le tue abilità e competenze all'interno di questo ambiente operativo.

Avvio/arresto/riavvio dei demoni: l'approccio basato su terminale

Ora che hai un elenco di utili demoni Linux da memorizzare ed esplorare, la prima cosa che devi sapere è come avviare, arrestare o riavviare questi demoni. Con il tuo terminale Linux avviato, considera le seguenti regole di sintassi per avviare, arrestare e riavviare un demone sul tuo sistema operativo Linux.

inizio nome-demone-preferito del servizio servizio preferito-daemon-name stop  servizio preferito-daemon-name riavvio

Sostituisci il nome-demone-preferito argomento di sintassi con il nome del demone di sistema Linux di tua scelta. Puoi sceglierne uno dall'elenco dei demoni evidenziato sopra purché sia ​​attivo o già definito sul tuo sistema Linux. Ad esempio, possiamo implementare l'uso pratico della sintassi precedente provando ad avviare, arrestare e riavviare ademone. Vai a /etc/init.d directory sul tuo terminale per l'elenco dei demoni disponibili sul tuo sistema Linux.

elencare i demoni attivi sul tuo sistema Linux.png

come avviare, arrestare e riavviare un servizio demone sul tuo sistema Linux.png

Elencare i demoni dei tuoi sistemi Linux

Un modo più efficace per annotare i demoni disponibili sul tuo sistema Linux invece di navigare verso il /etc/init.d directory è elencare tutti i demoni attivi e inattivi definiti da quella directory con un singolo comando. Il seguente comando è efficace per raggiungere questo obiettivo.

$ service -status-all

elencare tutti i demoni sul tuo sistema operativo Linux.png

I segni tra parentesi positivi [+] e negativi [-] che precedono i nomi dei demoni elencati implicano che sono rispettivamente attivi o inattivi.

Lavorare con i demoni definiti dall'utente

È necessario seguire regole o protocolli specifici per creare e implementare con successo un demone definito dall'utente. Questi protocolli ti aiutano a comprendere appieno l'esecuzione dei demoni su qualsiasi ambiente Linux. I demoni sono anche abbastanza flessibili da interfacciarsi con i moduli del kernel tramite chiamate di sistema. Questa funzionalità del demone supporta la sua interazione con dispositivi hardware come PDA (Personal Digital Assistants), stampanti e schede controller esterne valide. Gli elementi costitutivi dei demoni contribuiscono anche alla caratteristica potenza e flessibilità del sistema operativo Linux.

Un'implementazione di demone identificabile usando Python è accuratamente dimostrata e documentata da Sander Marechal. Sii desideroso di seguire l'ordine di esecuzione nella creazione di questo demone. Prima di tutto, il tuo sistema Linux ha bisogno dell'installazione di pacchetti Python per sviluppare i demoni con successo. Per installare Python, puoi usare il seguente comando.

$ sudo apt install python3-pip python3-dev

Il collegamento al codice del demone Python creato da Sander Marechal offre anche una versione del codice Python 3 raffinata. Sarebbe utile se prendessi in considerazione l'implementazione per capire meglio come funzionano i demoni.

Se non sei sicuro di aver installato Python, esegui il seguente comando sul tuo terminale Linux.

$ python3 --version

Lo scopo di ogni demone

Poiché un singolo demone è dedicato alla gestione di un compito specifico, dovrebbe eseguirlo alla perfezione. L'attività in questione può essere semplice come creare un report e inviarlo a un amministratore tramite sendmail o complessa come gestire più domini collegati a più caselle di posta. Ad un certo punto, il demone che creerai dovrà parlare con altri demoni esistenti.

interazione da utente a demone

È sconsigliato far comunicare direttamente l'utente del sistema e il demone creato. Se è necessario che il demone crei per comunicare con un utente di sistema. Questa comunicazione può essere facilitata attraverso qualcosa come un'interfaccia GUI. Questa piattaforma di comunicazione può avere la complessità della GUI GTK+ o la semplicità del set di segnali.

Creare il tuo demone

Numerosi approcci supportano la creazione di demoni. Ad esempio, puoi utilizzare l'interfaccia della riga di comando per demonizzare uno script Python come segue:

$ python mio_script_python.pi &

Puoi salvare il codice del demone Python3 creato da Sander Marechal su un file Python e demonizzarlo con il comando sopra. Mentre il comando del terminale sopra creerà facilmente un demone per te, dovrai affrontare sfide come output del terminale imprevedibili. Queste sfide dipendono da quanto bene hai rifattorizzato il codice del tuo demone Python. Inoltre, l'approccio di cui sopra non supporta l'assegnazione di file di blocco PID a demoni specifici. Rende impossibile controllare qualsiasi demone poiché la maggior parte di essi verrà eseguita istantaneamente. D'altra parte, se hai solo bisogno di un semplice demone, l'approccio sopra menzionato ti darà i risultati desiderati del demone.

Struttura di base del demone

Prima che un demone esegua o esegua una funzione prevista, dovrà considerare alcune regole preconcette che portano alla sua esecuzione. Puoi pensare a queste regole come lavori domestici di basso livello che portano al suo compito effettivo. Queste regole possono essere suddivise nei seguenti passaggi.

Ulteriori informazioni sulle implementazioni di esempio dei demoni possono essere trovate su GitHub.

I migliori giochi da riga di comando per Linux
La riga di comando non è solo il tuo più grande alleato quando usi Linux, ma può anche essere una fonte di intrattenimento perché puoi usarla per gioc...
Le migliori app di mappatura del gamepad per Linux
Se ti piace giocare su Linux con un gamepad invece di un tipico sistema di input di tastiera e mouse, ci sono alcune app utili per te. Molti giochi pe...
Strumenti utili per i giocatori Linux
Se ti piace giocare su Linux, è probabile che tu abbia utilizzato app e utilità come Wine, Lutris e OBS Studio per migliorare l'esperienza di gioco. O...