I comandi Linux ti aiutano a controllare un gameserver in modo ordinato, gestire file, osservare processi e trovare errori nei log. Con game-serverhosting contano soprattutto controllo tecnico, supporto e procedure tracciabili: puoi gestire comodamente molte attività di routine, ma dovresti conoscere i principali comandi terminale se vuoi analizzare più a fondo o intervenire manualmente.

Prerequisiti

Per i comandi seguenti ti servono un server Linux o un accesso SSH/terminale abilitato, permessi utente adeguati e il percorso della directory del tuo gameserver. Evita, se possibile, di lavorare alla cieca come root. Se modifichi file di configurazione, crea prima una copia e documenta cosa hai cambiato.

Se preferisci gestire i file con un client grafico, può esserti utile anche la guida all'accesso SFTP per i file del gameserver. I comandi admin interni al gioco sono un altro tema: per Valheim li trovi nella guida ai comandi server e admin command di Valheim, per Rust nella guida ai comandi server e admin command di Rust.

File system

Con questi comandi ti orienti nell'albero delle directory e modifichi file o cartelle. Prima di azioni rischiose controlla sempre il percorso attuale con pwd e il contenuto con ls -la.

ls -la                    # Mostrare i file
cd /home/server           # Cambiare cartella
pwd                       # Mostrare il percorso attuale
cp datei.txt backup.txt   # Copiare un file
mv alt.txt neu.txt        # Rinominare/spostare un file
rm datei.txt              # Eliminare un file
mkdir ordner              # Creare una cartella
chmod +x start.sh         # Rendere eseguibile

cp è adatto per backup rapidi di singoli file di configurazione. mv può rinominare o spostare file. rm elimina senza cestino; usalo quindi solo quando nome del file e percorso sono corretti. Con chmod +x start.sh rendi eseguibile uno script di avvio, nel caso in cui il server non parta per mancanza di permessi di esecuzione.

Processi

I comandi di processo ti mostrano se un gameserver è in esecuzione, quanto sono carichi CPU e RAM e quale ID di processo ti serve per un riavvio mirato.

ps aux | grep server      # Cercare processi
top                       # Panoramica CPU/RAM
htop                      # Panoramica migliore
kill <PID>                # Terminare un processo
kill -9 <PID>             # Forzare un processo
screen -S server          # Avviare una sessione screen
screen -r server          # Riprendere la sessione

kill <PID> termina un processo in modo regolare. kill -9 <PID> forza la chiusura e dovrebbe restare l'eccezione, perché il server potrebbe non riuscire più a eseguire correttamente passaggi di salvataggio o shutdown. screen è utile quando un processo server deve continuare a girare dopo che hai chiuso la sessione SSH.

Rete

I comandi di rete ti aiutano a controllare aperture porte, raggiungibilità e regole firewall. Questo è particolarmente importante quando un server gira localmente ma non compare nel browser del gioco.

netstat -tulpn            # Mostrare le porte aperte
ss -tulpn                 # Alternativa più moderna
ping 8.8.8.8              # Testare la connessione
traceroute server.de      # Seguire il percorso
iptables -L               # Regole firewall
ufw status                # Stato UFW
ufw allow 25565/tcp       # Aprire una porta

ss -tulpn è la scelta preferita su molti sistemi Linux attuali per vedere porte TCP e UDP in ascolto. ping controlla la raggiungibilità di base, ma non dice se la porta di gioco è aperta. ufw allow 25565/tcp è un esempio di apertura porta; sostituisci porta e protocollo con i valori del tuo gioco.

Modificare file e leggere log

I log sono spesso il modo più rapido per trovare la causa: file di mod mancanti, parametri di avvio errati, conflitti di porte o configurazioni danneggiate compaiono lì di solito prima dei sintomi visibili.

nano datei.txt            # Aprire l'editor
vim datei.txt             # Editor Vim
cat datei.txt             # Mostrare un file
tail -f server.log        # Seguire il log live
grep "error" server.log   # Cercare in un file

nano è più accessibile per modifiche rapide, vim è più potente ma richiede pratica. Con tail -f server.log osservi l'avvio live. grep "error" server.log filtra i messaggi di errore; se necessario cerca anche termini come failed, exception, denied, port o il nome di una mod.

Gestione del server

Se il tuo gameserver è configurato come servizio systemd, lo controlli con systemctl e leggi i log di sistema con journalctl. La documentazione ufficiale di systemd descrive systemctl come strumento per controllare il gestore di sistema e servizi systemd: documentazione su freedesktop.org

systemctl status server   # Stato del servizio
systemctl restart server  # Riavviare il servizio
journalctl -u server      # Mostrare i log
df -h                     # Controllare lo spazio disco
free -h                   # Uso della RAM

systemctl status server mostra se un servizio è attivo e quali ultime righe di log potrebbero essere rilevanti. journalctl -u server è più preciso se ti serve più cronologia. df -h controlla lo spazio libero; dischi pieni possono bloccare update, salvataggi e file di log. free -h mostra se la memoria è quasi esaurita.

SteamCMD

Molti gameserver dedicati vengono installati o aggiornati tramite SteamCMD. Il comando esistente usa login anonimo, aggiorna un'App-ID, valida i file e poi chiude SteamCMD.

steamcmd +login anonymous +app_update <appid> validate +quit
Gioco App-ID
CS2 730
Rust 258550
ARK 376030
Valheim 896660
7D2D 294420

Sostituisci <appid> con l'App-ID corretta. Dopo un update dovresti avviare il server, controllare il log di avvio e testare se il server è raggiungibile. Su server modificati, validate può sovrascrivere modifiche locali; quindi salva prima configurazioni importanti e file di mod.

Controllare il risultato

Dopo le modifiche controlla in tre passaggi: il processo è in esecuzione, la porta è in ascolto e i log non mostrano nuovi errori? Questa sequenza è pratica: systemctl status server oppure ps aux | grep server, poi ss -tulpn, quindi tail -f server.log oppure journalctl -u server. Solo quando questo livello è a posto vale la pena testare nel client di gioco.

Troubleshooting

Il server non si avvia

Controlla prima il log di avvio. Cause frequenti sono permessi di esecuzione mancanti su start.sh, una cartella di lavoro errata, file mancanti o una porta occupata. Controlla pwd, ls -la, chmod +x start.sh e poi l'output del log.

La porta non è raggiungibile

Confronta porta di gioco, query port e protocollo. Alcuni gameserver usano TCP e UDP in modo diverso. Controlla con ss -tulpn se il servizio è in ascolto e con ufw status se il firewall consente la connessione.

Il processo è bloccato o non risponde

Cerca l'ID del processo con ps aux | grep server. Prova prima uno stop normale tramite servizio o console del gameserver. Usa kill -9 <PID> solo se il processo non può più essere terminato correttamente.

L'update ha modificato la configurazione

Se dopo la validazione SteamCMD mancano impostazioni, ripristina il tuo backup o confronta i file interessati. Soprattutto con mod e parametri di avvio personalizzati dovresti salvare le modifiche prima degli update.

Verifica, limiti e ritorno sicuro

La guida "Comandi Linux per gameserver – comandi terminale importanti" vale per il tipo di server descritto nell'articolo e per lo stato delle versioni visibile al momento della verifica. Nomi di menu, versioni disponibili, compatibilità di mod o plugin e risorse necessarie possono cambiare dopo gli update. Perciò non trasferire valori senza controllo a un'altra versione di gioco, loader o server.

Prima di modificare mondo, salvataggio, configurazione o estensioni, crea un backup dei file interessati. Poi modifica solo un passaggio coerente alla volta e verificalo con la stessa versione client e server con cui vuoi giocare in seguito.

Punto di controllo Risultato atteso Interruzione e ritorno
Avvio server Il server raggiunge lo stato operativo senza nuovi messaggi di errore. In caso di errori di avvio, annulla la modifica e ripristina l'ultimo backup.
Test di connessione Un account di test può connettersi tramite l'indirizzo mostrato nel pannello. In caso di errori di versione o connessione, ricontrolla versione, porta e aperture.
Test funzionale La funzione modificata lavora senza danneggiare dati esistenti del mondo o del gioco. In caso di effetti collaterali, ferma il server e ripristina i file salvati.

Un singolo test riuscito non è una garanzia di prestazioni o disponibilità. Dimensione del mondo, mod, plugin, numero di giocatori, percorso di rete e carico simultaneo possono cambiare il risultato. Documenta versione, modifica e risultato del test, così puoi ricostruire eventuali differenze future.

FAQ

Mi servono sempre questi comandi Linux con game-serverhosting?

No. Molte attività standard passano da interfacce di gestione e procedure operative supportate. I comandi sono utili soprattutto quando vuoi capire da solo cause tecniche o lavorare in modo mirato con indicazioni del supporto.

È meglio netstat o ss?

ss sui sistemi Linux moderni è spesso la scelta più adatta, perché usa la famiglia di strumenti più recente. Se netstat è presente sul tuo sistema, può comunque funzionare per controlli semplici.

Quando dovrei usare kill -9?

Solo come ultima misura, quando un processo non reagisce agli stop normali. Una chiusura forzata può interrompere operazioni di scrittura, quindi dopo dovresti controllare log e file di salvataggio.

Posso usare SteamCMD in modo anonimo per ogni gioco?

No. Il comando mostrato funziona solo per app server che consentono l'accesso anonimo. Se un gioco richiede login o permessi aggiuntivi, devi seguire la documentazione ufficiale del rispettivo gioco.

Qual è il comando più importante per cercare errori?

Non esiste un unico comando. Nella pratica la combinazione di tail -f server.log, ss -tulpn e systemctl status server è particolarmente utile, perché rende visibili insieme errori di log, porte e stato del servizio.