Accedi
Accedi

Come montare una condivisione SMB su Linux

Come montare una condivisione SMB su Linux
Shahid Ali
Redattore tecnico
Sistema: Linux
16.07.2025
Reading time: 5 min

Il protocollo Server Message Block (SMB) consente la condivisione di file in rete, permettendo alle applicazioni di leggere, scrivere file e richiedere servizi da programmi server. Questo protocollo è fondamentale per una comunicazione fluida tra dispositivi diversi, in particolare in ambienti misti come Windows e Linux.

Montare una condivisione SMB su Linux consente agli utenti di accedere ai file su un server Windows o un altro dispositivo abilitato per SMB direttamente dal proprio sistema Linux. Questo tutorial ti guiderà passo dopo passo nel montaggio di una condivisione SMB su Linux, assicurando una condivisione file fluida e una buona comunicazione di rete.

Prerequisiti per montare condivisioni SMB

Prima di montare una condivisione SMB, assicurati che i seguenti prerequisiti siano soddisfatti:

  • Un sistema Linux, come un server cloud economico Hostman, con privilegi root o sudo.
  • Il pacchetto cifs-utils installato sul tuo sistema Linux.

  • Credenziali di accesso (nome utente e password) per la condivisione SMB.

  • Connettività di rete tra il tuo sistema Linux e il server SMB.

Installare i pacchetti necessari

Il pacchetto cifs-utils è essenziale per montare condivisioni SMB su Linux. Inoltre, il pacchetto psmisc fornisce il comando fuser, utile per gestire e monitorare l’utilizzo dei file.

Aggiorna l’elenco dei pacchetti e il sistema

sudo apt update

Installa cifs-utils e psmisc

sudo apt install cifs-utils psmisc

Verifica l’installazione di cifs-utils e la disponibilità del comando fuser

mount -t cifs
fuser

Trovare i dettagli della condivisione SMB

Identifica i dettagli della condivisione SMB, incluso il nome del server o l’indirizzo IP e il nome della condivisione. Potrebbe essere necessario consultare l’amministratore di rete o controllare la configurazione del server.

Esempio:

  • Server: serverSMB.esempio.com
  • Condivisione: cartellacondivisa

Montare le condivisioni SMB con il comando mount

Per montare la condivisione SMB, utilizza il comando mount con l’opzione -t cifs, specificando il protocollo SMB.

Crea una directory che fungerà da punto di mount:

sudo mkdir /mnt/condivisione_smb

Monta la condivisione SMB con il seguente comando:

sudo mount -t cifs -o username=tuo_nome_utente,password=tua_password //192.0.2.17/FileCondivisi /mnt/condivisione_smb

Sostituisci tuo_nome_utente e tua_password con le credenziali reali. Assicurati che /mnt/condivisione_smb sia una directory esistente.

Verificare il montaggio

Per confermare che la condivisione SMB sia stata montata correttamente, usa il comando:

mount -t cifs

Naviga fino al punto di mount e visualizza i file:

cd /mnt/condivisione_smb
ls

Creare un file delle credenziali

Per evitare di inserire le credenziali ogni volta, crea un file delle credenziali. Questo file dovrebbe essere nascosto e protetto.

Crea il file con un editor di testo:

nano ~/.smbcredentials

Aggiungi il seguente contenuto, sostituendolo con le credenziali effettive:

username=tuo_nome_utente
password=tua_password

Imposta i permessi corretti per il file:

sudo chown tuo_nome_utente: ~/.smbcredentials
sudo chmod 600 ~/.smbcredentials

Montare utilizzando il file delle credenziali

Monta la condivisione SMB utilizzando il file delle credenziali:

sudo mount -t cifs -o credentials=~/.smbcredentials //192.168.2.12/FileCondivisi /mnt/condivisione_smb

Automatizzare il montaggio delle condivisioni SMB

Per automatizzare il processo di montaggio, aggiungi una voce al file /etc/fstab. Questo garantirà il montaggio della condivisione SMB all’avvio del sistema.

1. Apri /etc/fstab per la modifica:

sudo nano /etc/fstab

2. Aggiungi la seguente riga:

//serverSMB.esempio.com/cartellacondivisa /mnt/condivisione_smb cifs username=tuo_nome,password=tuapassword,iocharset=utf8,sec=ntlm 0 0

3. Salva e chiudi il file.

4. Verifica la voce di fstab:

sudo mount -a

Assicurati che non vengano visualizzati errori.

Risoluzione dei problemi comuni

 

Permesso negato

Verifica le credenziali e i permessi sul server SMB.

File o directory inesistente

Assicurati che l’IP del server, il percorso della condivisione e il punto di mount siano corretti.

Errore di mount 13 = Permesso negato

Controlla di nuovo nome utente e password.

Errore di mount 112 = Host non raggiungibile

Verifica la connettività di rete e la disponibilità del server.

Smontare una condivisione SMB

Per smontare la condivisione SMB, usa il comando umount seguito dal punto di mount:

sudo umount /mnt/condivisione_smb

Conclusione

Montare una condivisione SMB su Linux è un processo semplice che migliora la condivisione dei file tra sistemi operativi diversi. Seguendo questo tutorial, potrai configurare e risolvere eventuali problemi di montaggio delle condivisioni SMB, garantendo una comunicazione di rete efficiente e l’accesso ai file.

Non dimenticare di consultare anche la nostra guida su come configurare un’immagine del server su Linux!

Domande frequenti

Cos’è Samba in Linux e come si relaziona con SMB?

Samba è un’implementazione open-source del protocollo SMB/CIFS su Linux. Consente ai sistemi Linux di condividere file e stampanti con dispositivi Windows in rete.

Qual è il comando per montare una condivisione Windows in Linux?

Utilizza mount -t cifs //server/condivisione /mnt/condivisione -o username=tuo_utente.

Come posso montare automaticamente una condivisione SMB all’avvio su Linux?

Aggiungi la configurazione di montaggio nel file /etc/fstab usando le credenziali corrette.

Ho bisogno dei privilegi root per montare una condivisione SMB?

Per il montaggio tradizionale, sì. Ma è possibile usare strumenti in user-space come gio mount senza privilegi root.

Sistema: Linux
16.07.2025
Reading time: 5 min

Simili

Sistema: Linux

Come aprire una porta su Linux

Aprire le porte in Linux è un’operazione fondamentale che consente a determinati servizi o applicazioni di scambiare dati sulla rete. Le porte agiscono come canali di comunicazione, permettendo l’accesso ai servizi autorizzati e bloccando quelli non autorizzati. La loro corretta gestione garantisce sicurezza, buone prestazioni e funzionamento stabile delle applicazioni. Comprendere le porte e la loro funzione Le porte sono gli endpoint logici della comunicazione di rete, attraverso i quali i dispositivi inviano e ricevono informazioni. Esempi comuni: HTTP → Porta 80 HTTPS → Porta 443 SSH → Porta 22 Una porta aperta indica che un servizio è in ascolto e accetta connessioni in ingresso. Una porta chiusa, invece, blocca la comunicazione. Per garantire sicurezza e disponibilità dei servizi, è fondamentale gestire correttamente le porte aperte su Linux. Verificare le porte aperte su Linux Prima di aprire una nuova porta, conviene controllare quali porte sono già attive. Puoi farlo con diversi comandi Linux. Con netstat Per mostrare le porte aperte, esegui: netstat -tuln L’opzione -tuln limita l’output alle porte TCP e UDP, senza risolvere i nomi host. netstat offre una panoramica in tempo reale delle connessioni attive. Nota: se netstat non è installato: sudo apt install net-tools Con ss Il comando ss è una versione più moderna e veloce di netstat: ss -tuln Mostra le porte attualmente in uso e le relative informazioni sui socket. Con nmap Per un’analisi più approfondita: nmap localhost nmap esegue una scansione dell’host specificato (in questo caso localhost) per individuare le porte aperte — utile per capire quali servizi sono esposti alla rete pubblica. Nota: installa nmap con: sudo apt install nmap Aprire porte su Linux Per consentire l’accesso attraverso una porta specifica, occorre modificare le regole del firewall. Linux offre vari strumenti: iptables, ufw e firewalld. Ecco come utilizzarli. Metodo 1: con iptables iptables è un potente strumento a basso livello che offre un controllo preciso sul traffico di rete. Aggiungere una regola per una porta specifica Esempio: aprire la porta 8080 per traffico HTTP: sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT Spiegazione: sudo: esegue il comando come amministratore -A INPUT: aggiunge la regola alla catena di input (traffico in ingresso) -p tcp: si applica al protocollo TCP --dport 8080: specifica la porta 8080 -j ACCEPT: accetta il traffico corrispondente alla regola Queste modifiche non sono permanenti: dopo il riavvio del sistema, le regole vengono cancellate. Salvare la configurazione Per rendere le regole permanenti: sudo apt install iptables iptables-persistent sudo netfilter-persistent save Le regole vengono così memorizzate e ricaricate automaticamente a ogni riavvio. Ricaricare le modifiche sudo netfilter-persistent reload Metodo 2: con ufw (Uncomplicated Firewall) ufw è un’interfaccia semplificata per iptables che permette di gestire facilmente le regole del firewall. Abilitare ufw sudo ufw enable Se non è installato: sudo apt install ufw Aprire una porta specifica Esempio: consentire connessioni SSH sulla porta 22: sudo ufw allow 22/tcp Questo comando autorizza il traffico TCP in ingresso sulla porta 22. Verificare lo stato del firewall sudo ufw status Mostra tutte le regole attive e le porte aperte. Metodo 3: con firewalld firewalld è un demone firewall dinamico che semplifica la gestione delle regole. Aggiungere una regola permanente Esempio: aprire la porta 443 (HTTPS): sudo firewall-cmd --permanent --add-port=443/tcp Installazione e avvio di firewalld: sudo apt install firewalld sudo systemctl enable firewalld sudo systemctl start firewalld Ricaricare le regole sudo firewall-cmd --reload Verificare che la porta sia aperta sudo firewall-cmd --list-all Visualizza tutte le zone e le regole attive, incluse le porte aperte. Testare la porta aperta Dopo aver aperto una porta, assicurati che sia effettivamente accessibile. Con telnet telnet localhost port_number Se la connessione va a buon fine, la porta è aperta e operativa. Con nmap nmap -p port_number localhost Scansiona il port specificato per verificarne la disponibilità. Con curl curl localhost:port_number Una risposta positiva indica che il servizio è attivo sulla porta aperta. Risoluzione dei problemi comuni Se l’apertura di una porta non funziona: Controlla le regole del firewall iptables -L ufw status Verifica lo stato del servizio systemctl status <nome_servizio> Aprire porte in base al protocollo A seconda del servizio, può essere richiesto TCP o UDP. Porta TCP Esempio: consentire il traffico MySQL sulla porta 3306: sudo ufw allow 3306/tcp Porta UDP Esempio: aprire la porta 161 per SNMP: sudo ufw allow 161/udp Gestire l’accessibilità delle porte Limitare l’accesso a un indirizzo IP specifico sudo ufw allow from 192.168.1.100 to any port 22 Permette l’accesso SSH solo da quell’indirizzo IP, migliorando la sicurezza. Chiudere una porta sudo ufw deny 80/tcpBlocca il traffico in ingresso sulla porta 80 (HTTP). Conclusione Verificare e aprire le porte in Linux è essenziale per garantire il corretto funzionamento della rete e la sicurezza dei servizi. Con strumenti come iptables, ufw e firewalld puoi controllare il traffico in modo preciso e sicuro. Effettua sempre test con nmap, curl o telnet per assicurarti che le configurazioni siano corrette. Una buona gestione delle porte è la base per server affidabili, connessioni sicure e prestazioni ottimali.
29 October 2025 · 5 min to read
Sistema: Linux

Scorciatoie da tastiera Linux: le migliori combinazioni per gli utenti

Le scorciatoie da tastiera in Linux sono strumenti estremamente utili che permettono di lavorare in modo più efficiente. Invece di usare il mouse e navigare nei menu, puoi spesso premere solo un paio di tasti per ottenere lo stesso risultato in meno tempo. I sistemi operativi Linux supportano un’ampia gamma di scorciatoie, o hotkey. È importante notare che ogni distribuzione può avere combinazioni specifiche che non funzionano altrove. Tuttavia, gli utenti possono aggiungere nuove combinazioni o modificare quelle esistenti nelle impostazioni di sistema. In questo articolo vedremo le combinazioni universali, valide per la maggior parte degli ambienti desktop. La maggior parte delle scorciatoie descritte riguarda l’uso del terminale. Scorciatoie di base di Linux Cominciamo con le scorciatoie generali, utili per svolgere attività ripetitive più rapidamente. Molte di esse utilizzano il tasto Super, che corrisponde al tasto Windows nei sistemi Windows o al tasto Cmd in macOS. Ad esempio, la scorciatoia Super + Spazio per cambiare layout di tastiera in Linux è simile a Windows + Spazio o Cmd + Spazio. Combinazioni principali: Alt + Tab o Super + Tab – Passa tra le finestre aperte (come su Windows). Super + Spazio – Cambia layout di tastiera. Super + A – Apre il menu delle applicazioni (solitamente in basso a sinistra). F2 – Rinomina un file selezionato. Clicca sul file, poi premi F2. Ctrl + Alt + T – Apre il terminale, una delle scorciatoie più importanti di Linux. Alt + F2 – Apre una finestra di comando al centro dello schermo per eseguire un programma. Super + D – Minimizza tutte le finestre e mostra il desktop. Ctrl + Alt + Canc – Apre un prompt con le opzioni “Annulla” e “Disconnetti”.Se non viene effettuata alcuna scelta, il sistema esegue automaticamente il logout dopo 60 secondi. Queste combinazioni aiutano a lavorare più velocemente e in modo più ordinato. Passiamo ora ai comandi rapidi del terminale, fondamentali per gli utenti Linux. Scorciatoie del terminale Linux Il terminale è lo strumento principale per interagire con la shell Linux. Le scorciatoie seguenti permettono di lavorare in modo più rapido ed efficiente. Gestione di finestre e schede del terminale Queste scorciatoie servono per aprire, passare o chiudere rapidamente schede e finestre del terminale: Ctrl + Shift + Q – Chiude completamente la finestra del terminale. Ctrl + Shift + T – Apre una nuova scheda. Ctrl + Shift + W – Chiude la scheda corrente (o la finestra, se è l’unica aperta). Ctrl + Shift + D – Stacca la scheda corrente e la apre in una nuova finestra. Ctrl + PgUp / PgDown – Passa tra le schede (precedente/successiva). Movimento del cursore in una riga Gli utenti Linux lavorano quasi sempre con la tastiera. Queste combinazioni evitano l’uso del mouse e permettono di spostarsi nel testo più velocemente: Ctrl + A (o Home) – Sposta il cursore all’inizio della riga. Ctrl + E (o End) – Sposta il cursore alla fine della riga. Ctrl + X, X – Passa rapidamente all’inizio della riga e poi torna alla posizione originale. Ctrl + → / ← o Alt + F / B – Muove il cursore di una parola avanti o indietro. Inserimento e modifica dei comandi Oltre a muovere il cursore, queste scorciatoie semplificano la scrittura e la modifica dei comandi: Tab – Una delle scorciatoie più utili: completa automaticamente comandi e percorsi.Premila una volta per completare, due volte per visualizzare i suggerimenti. Ctrl + T – Scambia le ultime due lettere prima del cursore. Alt + T – Scambia le ultime due parole prima del cursore. Alt + Backspace – Cancella la parola precedente. Alt + D – Cancella tutti i caratteri dopo il cursore fino al successivo spazio. Alt + U / Alt + L – Converte in maiuscolo o minuscolo il testo a destra del cursore. Operazioni con gli appunti Queste combinazioni permettono di tagliare, copiare e incollare testo nel terminale: Ctrl + W – Cancella la parola precedente. Ctrl + U – Cancella tutto dal cursore all’inizio della riga. Ctrl + K – Cancella tutto dal cursore alla fine della riga. Ctrl + Y – Incolla l’ultimo testo cancellato. Navigazione nella cronologia dei comandi I seguenti tasti aiutano a richiamare rapidamente comandi precedentemente usati. Per visualizzare l’elenco completo dei comandi eseguiti: history Altri comandi utili: Ctrl + R – Cerca un comando usato in precedenza.Premi Invio per eseguirlo o Esc per annullare. Ctrl + O – Esegue il comando trovato. Alt + < – Carica il primo comando della cronologia. Gestione dello schermo e dei processi Queste scorciatoie gestiscono la quantità di informazioni visualizzate e il controllo dei processi attivi: Ctrl + C – Interrompe immediatamente il processo attivo (segnale SIGINT). Ctrl + D – Chiude il terminale (equivalente al comando exit). Ctrl + Z – Sospende il processo corrente e lo invia in background.Usa fg per riportarlo in primo piano o jobs per elencare i processi in background. Ctrl + L – Pulisce la finestra del terminale (equivalente a clear). Ctrl + S / Ctrl + Q – Ctrl + S sospende l’output, Ctrl + Q lo riprende.Utile per fermare temporaneamente la visualizzazione e analizzare un testo. Aggiungere o modificare scorciatoie In alcune distribuzioni, certe combinazioni potrebbero non funzionare o mancare. Ogni ambiente Linux ha una lista predefinita di scorciatoie, ma è possibile personalizzarle facilmente. Procedura: Premi Super + A per aprire il menu delle applicazioni. Cerca e apri Impostazioni. Vai su Dispositivi → Tastiera. Sulla destra vedrai l’elenco delle scorciatoie predefinite. Clicca su un comando per modificarlo o assegnare una nuova combinazione. Per aggiungere una scorciatoia personalizzata, clicca sul pulsante “+” in basso. Inserisci il nome, il comando da eseguire e la combinazione di tasti desiderata. Conclusione Abbiamo esaminato le principali scorciatoie di Linux che semplificano e velocizzano il flusso di lavoro quotidiano. Naturalmente, questa non è una lista completa: ogni distribuzione offre combinazioni aggiuntive per diverse funzionalità. Conoscere e usare queste scorciatoie renderà l’esperienza Linux più fluida, produttiva e piacevole, soprattutto nel terminale.
28 October 2025 · 6 min to read
Sistema: Linux

Che cos’è un daemon in informatica?

Il termine daemon deriva dalla mitologia greca antica, dove indicava un essere immateriale che influenzava il mondo umano. In informatica, soprattutto nei sistemi operativi di tipo UNIX, un daemon è un processo in background che si esegue senza interazione diretta con l’utente. Non dipende da un terminale o da un’interfaccia grafica e in genere viene avviato all’avvio del sistema o in determinate condizioni. Che cos’è un daemon La funzione principale di un daemon è fornire servizi specifici ad altri processi o utenti. Ad esempio, un daemon può restare in ascolto su porte di rete in attesa di connessioni, monitorare eventi di sistema e rispondere quando vengono soddisfatte determinate condizioni, gestire attività pianificate (come cron), inviare e-mail (sendmail) e molto altro. In Windows, l’equivalente più vicino a un daemon è un servizio (Service). La differenza principale risiede nel modo in cui vengono avviati, registrati, gestiti e configurati all’interno del sistema operativo. Tuttavia, lo scopo è lo stesso: garantire il funzionamento continuo in background di determinate funzioni o servizi. Caratteristiche principali di un daemon Esecuzione in background: gli utenti di solito non vedono un’interfaccia del daemon; non scrive sull’output standard (o lo reindirizza ai log) e non richiede input da tastiera. Autonomo: un daemon viene avviato all’avvio del sistema, quando viene richiamato da un sistema di init (come systemd), oppure manualmente dall’utente (tramite script, cron, ecc.). Lunga durata: idealmente un daemon viene eseguito indefinitamente, a meno che non si verifichi un errore critico o riceva un segnale di arresto esplicito. Isolato: di solito viene eseguito sotto un account utente o gruppo separato per ridurre i privilegi, rendendo i servizi più sicuri e facili da gestire. Logging: invece di utilizzare input/output standard, i daemon registrano le informazioni in file di log o nel logger di sistema (journald, syslog, ecc.), utile per il debug e la diagnostica. Daemon in Linux Storicamente, quasi tutte le attività di sistema in background in Linux sono implementate come daemon. Il sistema operativo ne include decine, ciascuno con una funzione specifica. Ecco alcuni esempi: sshd (Secure Shell Daemon): resta in ascolto sulla porta 22 (per impostazione predefinita) e consente agli utenti remoti di connettersi tramite SSH crittografato. Senza sshd, l’accesso remoto al terminale sarebbe quasi impossibile. cron: un daemon di pianificazione dei lavori. Controlla le voci del crontab ed esegue script o comandi secondo una pianificazione, come la pulizia dei log, l’invio di report o i controlli di sistema. syslogd / rsyslog / journald: daemon di registrazione del sistema che raccolgono messaggi dal kernel, dalle utility, da altri daemon e applicazioni, e li salvano nei file di log o nel journal. NetworkManager o Wicd: daemon che gestiscono le impostazioni di rete — automatizzano connessioni a reti cablate/wireless, switch, configurazioni VPN e altro. Questi daemon vengono avviati all’avvio del sistema e registrati nel gestore dei servizi (ad esempio systemd). Restano in esecuzione fino allo spegnimento o riavvio del sistema. Gli utenti interagiscono con essi indirettamente — tramite file di configurazione, comandi da terminale (service, systemctl) o richieste di rete (se il daemon fornisce un’interfaccia HTTP/S, SSH o simile). Come creare e gestire daemon Per implementare un daemon, segui questi passaggi: Creazione del processo (fork): il processo padre chiama fork() e continua l’esecuzione del codice del daemon nel processo figlio. Scollegamento dal terminale di controllo (setsid): per evitare interferenze dell’utente (ad esempio la chiusura del terminale), il daemon chiama setsid() per avviare una nuova sessione e diventarne il leader. Chiusura dei descrittori di input/output standard: poiché il daemon non deve scrivere sullo schermo o attendere input, stdin, stdout e stderr vengono chiusi o reindirizzati ai file di log. Gestione dei segnali e logging: per supportare uno spegnimento pulito o il ricaricamento della configurazione, il daemon deve gestire i segnali (SIGTERM, SIGHUP, ecc.). La registrazione viene generalmente effettuata tramite syslog o file. Ciclo principale: dopo l’inizializzazione, il daemon entra nel ciclo principale: attende eventi, li gestisce e ripete finché non viene interrotto. Vediamo come creare un daemon su Ubuntu 22.04 utilizzando un server cloud Hostman. 1. Scrivere il daemon in C Crea un file chiamato mydaemon.c e inserisci il seguente codice: #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <syslog.h> int main() { // Aprire syslog     openlog("mydaemon", LOG_PID, LOG_DAEMON); syslog(LOG_NOTICE, "Daemon started"); // Ciclo infinito principale     while (1) { // Attività in background: monitoraggio, gestione code, ecc. syslog(LOG_NOTICE, "Performing task..."); sleep(60); } // Se il ciclo termina     syslog(LOG_NOTICE, "Daemon stopped"); closelog(); return 0; } 2. Compilare il programma Aggiorna prima i pacchetti: sudo apt update && sudo apt upgrade Installa il compilatore GCC se non è già installato: sudo apt install gcc Compila il daemon: gcc mydaemon.c -o mydaemon 3. Spostare l’eseguibile Sposta il file binario in /usr/local/bin/, una posizione standard per le utility personalizzate: mv mydaemon /usr/local/bin/mydaemon 4. Creare un servizio systemd Crea un file di unità chiamato mydaemon.service: sudo nano /etc/systemd/system/mydaemon.service Inserisci il seguente contenuto: [Unit] Description=My Daemon After=network.target [Service] Type=simple ExecStart=/usr/local/bin/mydaemon Restart=on-failure [Install] WantedBy=multi-user.target Spiegazione dei campi: Description: descrizione mostrata in systemctl status. After=network.target: assicura che il daemon si avvii dopo che la rete è attiva. Type=simple: il daemon non crea sottoprocessi, si esegue come un unico processo. ExecStart: percorso all’eseguibile del daemon. Restart=on-failure: riavvio automatico in caso di errore del daemon. WantedBy=multi-user.target: fa partire il servizio nell’ambiente multiutente standard. 5. Avviare e monitorare il daemon sudo systemctl daemon-reload # Ricaricare la configurazione di systemd sudo systemctl start mydaemon # Avviare il daemon sudo systemctl status mydaemon # Verificare lo stato Se tutto funziona, lo stato mostrerà active. Per visualizzare i log: journalctl -u mydaemon.service -e Esempi di utilizzo dei daemon Server web Il loro compito è restare in ascolto su una porta di rete (di solito 80 o 443), accettare richieste HTTP/HTTPS, generare una risposta (una pagina HTML, dati JSON, ecc.) e restituire il risultato al client. Nella maggior parte dei casi, un server web si avvia con il sistema e rimane in esecuzione fino allo spegnimento o a un comando di stop (es. systemctl stop nginx). Daemon di database MySQL/MariaDB, PostgreSQL, MongoDB — tutti questi sono daemon. Si avviano con il sistema e continuano a funzionare in background, accettando richieste da applicazioni client o servizi web. Questi daemon registrano l’attività, supportano la configurazione tramite file e sono gestiti con strumenti dedicati (o systemd). Pianificatori di attività (cron, atd) Il daemon cron controlla la tabella di pianificazione (crontab) ed esegue programmi negli orari o intervalli specificati dall’utente. Ciò consente di automatizzare backup, aggiornamenti di sistema, controlli di integrità e molte altre attività di routine. atd è un daemon simile, ma esegue le attività solo una volta in un momento specifico (a differenza di cron, che le esegue periodicamente). Servizi di accesso e controllo (sshd, xrdp) sshd (Secure Shell Daemon) fornisce accesso remoto tramite il protocollo SSH. xrdp abilita connessioni desktop remote utilizzando il protocollo RDP. Agisce come daemon che ascolta le connessioni di rete su una porta specifica. Daemon del sistema di init (systemd, init, Upstart) Nei sistemi moderni, il ruolo del “daemon principale” è svolto da systemd (che sostituisce il vecchio sistema SysV init). systemd è il primo processo che parte dopo il kernel ed è responsabile dell’avvio e della gestione di tutti gli altri servizi e processi. Li avvia in parallelo e gestisce le loro dipendenze. In breve, systemd è esso stesso un daemon che “orchestra” tutti gli altri del sistema. Vantaggi e svantaggi dei daemon Vantaggi: Automazione: i daemon permettono di automatizzare il comportamento del sistema — dalla risposta alle richieste di rete alla pianificazione di attività — senza intervento dell’utente. Isolamento: l’esecuzione sotto account o gruppi separati e il distacco dal terminale aumentano la sicurezza, limitando i danni potenziali in caso di compromissione. Funzionamento continuo: un daemon può continuare a fornire servizi (come un server web) senza interruzioni anche se l’utente si disconnette o chiude la console. Gestibilità: Linux fornisce strumenti di sistema (es. systemd, script di init) per gestire centralmente tutti i daemon: avvio, arresto, riavvio e registrazione. Svantaggi: Complessità di debug: poiché i daemon funzionano in background e non mostrano output su console, il debug richiede log dettagliati e configurazioni più complesse (flag di debug, tracciamento, ecc.). Rischi di sicurezza: se un daemon viene eseguito con privilegi elevati (ad esempio come root), una vulnerabilità può compromettere l’intero sistema. È consigliabile eseguirli con privilegi limitati. Gestione delle dipendenze: alcuni daemon possono fallire se, ad esempio, necessitano dell’accesso alla rete prima che questa sia disponibile. I moderni sistemi di init risolvono questo problema, ma con i vecchi script SysV init era comune. Maggior consumo di risorse: qualsiasi processo in esecuzione continua consuma risorse di sistema (memoria, CPU). Un numero eccessivo di daemon può ridurre le prestazioni, soprattutto su sistemi con risorse limitate. Conclusione I daemon sono una parte fondamentale dell’architettura dei sistemi operativi Linux, offrendo ampie capacità di automazione e servizi in background. Consentono agli amministratori di configurare in modo flessibile operazioni di rete, attività pianificate, logging, sistemi di sicurezza e molti altri componenti. Scrivere un proprio daemon richiede la comprensione di processi, segnali, chiamate di sistema e particolare attenzione alla registrazione e alla sicurezza. I moderni sistemi di init (in particolare systemd) hanno semplificato la gestione dei daemon e la logica dei servizi, rendendo la creazione di servizi personalizzati più strutturata e flessibile. Tuttavia, rimane un campo complesso che richiede progettazione accurata, debug e manutenzione costante. Se cerchi una soluzione affidabile, performante ed economica per i tuoi flussi di lavoro, Hostman offre opzioni di Hosting VPS Linux, tra cui Debian VPS, Ubuntu VPS e VPS CentOS.
23 October 2025 · 9 min to read

Hai domande,
commenti o dubbi?

I nostri professionisti sono disponibili per assisterti in ogni momento,
che tu abbia bisogno di aiuto o non sappia da dove iniziare.
Inviaci un'email
Hostman's Support