F FabGPT-FAQ

Processi e performance

Chi consuma cosa: CPU, RAM, load average, I/O wait e i kill fatti bene. Ogni comando è verificato e copiabile; in chat basta descrivere cosa vuoi fare.

11 comandi in questa pagina

# Come trovo un processo per nome?

pgrep -a nginx      # PID + riga di comando
ps aux | grep [n]ginx

Il trucco [n]ginx esclude il grep stesso dai risultati.

Approfondisci: Come si gestiscono i servizi Linux con systemctl?

# Come monitoro i processi in tempo reale?

htop      # o btop, se installato

In htop: F6 ordina per colonna, F5 vista ad albero, F9 kill – e la barra della RAM distingue cache e usata.

Approfondisci: Il sito è lento: come si diagnostica (davvero)?

# Quale processo sta mangiando la CPU?

ps aux --sort=-%cpu | head -10

Una foto secca, script-friendly; per la dinamica nel tempo resta htop.

Approfondisci: Il sito è lento: come si diagnostica (davvero)?

# Quale processo si sta mangiando la RAM?

ps aux --sort=-%rss | head -10

Guarda RSS (memoria reale), non VSZ (virtuale, bugiarda); il colpevole seriale sul lungo periodo è chi CRESCE.

Approfondisci: Il sito è lento: come si diagnostica (davvero)?

# Come termino un processo (con grazia e senza)?

kill <pid>          # SIGTERM: chiusura pulita
kill -9 <pid>       # SIGKILL: ultima spiaggia
pkill -f 'python.*server'

Prima TERM, poi KILL: il -9 non lascia salvare né pulire. Un processo che ignora anche il -9 è in stato D: guarda l'I/O.

Approfondisci: Come si gestiscono i servizi Linux con systemctl?

# Come abbasso la priorità di un processo pesante?

nice -n 19 tar czf backup.tgz /dati     # parte già umile
renice 19 -p <pid>                       # a processo avviato
ionice -c3 -p <pid>                      # umile anche sull'I/O

Per i backup notturni la coppia nice+ionice evita che il server "rallenti misteriosamente" alle 3.

Approfondisci: I/O delay alto su Proxmox: da dove viene?

# Come si legge il load average?

uptime
nproc     # i tuoi core: il metro di paragone

I tre numeri sono medie a 1/5/15 min di processi in attesa: load 4 su 4 core = pieno, su 16 = tranquillo. Load alto con CPU bassa = attesa di I/O.

Approfondisci: Il sito è lento: come si diagnostica (davvero)?I/O delay alto su Proxmox: da dove viene?

# Il server è lento con iowait alto: come indago?

iostat -x 2      # %util e await per disco
iotop -o         # chi sta leggendo/scrivendo ORA

%util vicino a 100 con await alto = disco saturo: trova il processo con iotop prima di incolpare l'hardware.

Approfondisci: I/O delay alto su Proxmox: da dove viene?Il sito è lento: come si diagnostica (davvero)?

# free dice poca RAM libera ma è tutta cache: devo preoccuparmi?

free -h

Guarda available, non free: la cache è RAM ben spesa che il kernel molla all'istante. Il problema esiste solo se available è basso e la swap cresce.

Approfondisci: Il sito è lento: come si diagnostica (davvero)?

# Come riavvio o spengo un server in modo pulito?

shutdown -r now     # riavvio
shutdown -h +5 'Manutenzione tra 5 minuti'   # avvisa gli utenti loggati

Prima di un riavvio remoto: systemctl list-units --failed e conferma di poter raggiungere la console se non torna su.

Approfondisci: Come si gestiscono i servizi Linux con systemctl?Come si fa l'hardening di un server Linux appena installato?

# Cos'è una fork bomb (e come ci si protegge)?

# la famigerata :(){ :|:& };:  definisce una funzione che lancia
# due copie di se stessa all'infinito: esaurisce i PID in secondi.
# Protezione: limiti per utente in /etc/security/limits.conf
mario  hard  nproc  4096

Su un sistema senza limiti la shell si blocca e spesso serve il riavvio. systemd mitiga già i servizi (TasksMax); il limite nproc protegge dalle sessioni utente.

Approfondisci: Utenti, gruppi e sudo su Linux: le basi che servonoCome si fa l'hardening di un server Linux appena installato?Come si gestiscono i servizi Linux con systemctl?

Chiedi in chat