Linux Admin — Cheat Sheet

Tag: linux, bash, systemd, networking, storage, permissions, troubleshooting

Livello: intermedio

TL;DR: Riferimento rapido per amministrazione Linux: gestione processi, systemd, permessi, storage, networking e diagnosi dei colli di bottiglia.

Concetti chiave

In Linux tutto e' rappresentato come file o descrittore di file.

systemd gestisce init, servizi, dipendenze, target e logging centralizzato tramite journald.

I permessi POSIX standard gestiscono read, write ed execute per utente proprietario, gruppo e altri.

Il carico di sistema (load average) misura i processi attivi in stato running o uninterruptible sleep.

Lo spazio disco si divide tra blocchi dati occupati e disponibilità di inode disponibili.

I segnali POSIX standard includono SIGTERM (15) per arresto controllato e SIGKILL (9) per terminazione immediata.

Le rotte di rete, porte aperte e socket sono interrogabili a livello kernel tramite socket statistics.

La memoria RAM libera include cache e buffer rilasciabili su richiesta del kernel.

Domande tipiche e risposte pronte

Q: Un disco risulta pieno al 100% ma eliminando file lo spazio non scende. Come risolvi?R: Controllo con lsof se processi attivi mantengono aperti descrittori verso file eliminati; riavvio o termino il processo responsabile per liberare i blocchi.

Q: Come individui la causa principale di un picco di load average improvviso?R: Guardo vmstat e top o htop per distinguere tra saturazione CPU (alto us/sy), attesa I/O disco (alto wa) o memory swapping intensivo.

Q: Qual e' la differenza pratica tra un hard link e un symbolic link?R: L'hard link punta direttamente allo stesso inode sul medesimo filesystem, mentre il symlink crea un nuovo file contenente il path della risorsa target.

Insidie e errori comuni

Usare chmod -R 777 per risolvere problemi di autorizzazione compromette l'isolamento e la sicurezza del sistema.

Esaurire gli inode su un filesystem impedisce la creazione di file anche se resta spazio in gigabyte.

Inviare direttamente SIGKILL impedisce a database o processi applicativi di eseguire il flush su disco e liberare lock.

Riavviare una rete senza verificare prima la sintassi nei file netplan o network scripts puo' causare lockout via SSH.

Modificare /etc/fstab senza testare il mount con mount -a puo' bloccare il boot successivo del server.

Snippet e comandi

# Diagnosi risorse e processi
top -c
vmstat 1 5
iostat -xz 1 5
ps aux --sort=-%mem | head -n 10

# Gestione unità systemd
systemctl status nome-servizio.service
systemctl restart nome-servizio.service
journalctl -u nome-servizio.service -n 100 -f

# Storage e filesystem
df -h
df -i
du -sh /* 2>/dev/null | sort -hr | head -n 10
lsof +L1

# Rete, porte e connettività
ss -tulpn
ip a
ip route show
curl -Iv https://example.com

# Permessi e ownership
chmod 755 /var/www/html
chown -R www-data:www-data /var/www/html
find /path -type f -perm 0777

Da ripassare

[ ] Sintassi e sezioni dei file unit di systemd

[ ] Risoluzione di file descriptor orfani con lsof

[ ] Tabelle di routing e configurazione netplan

[x] Permessi numerici e simbolici ottali standard

[x] Gestione dei segnali con kill e killall

Jarvis Interviews
Jarvis