Linux

Linux

Padroneggiare l'ambiente server e di sviluppo più potente e versatile


Nota introduttiva:

Uso Linux dal 1992, quando si installava da dischetti floppy da 3.5 pollici. Bash e awk imparati da Kernighan e Pike. Per me Linux e l'opensource sono sempre stati come il Lego per i bambini: pezzi che si combinano, si smontano, si rimontano. La shell come estensione naturale del pensiero.

La filosofia Unix — piccoli strumenti che fanno una cosa sola e la fanno bene, combinabili tra loro — è un modo di pensare prima che un sistema operativo. Questo corso trasmette quel modo di pensare.


Metodologia:

Si lavora su macchine Linux reali. Ogni concetto viene sperimentato da terminale. L'obiettivo è costruire un modello mentale solido del sistema, non memorizzare comandi.

Argomenti

Parte 1 — Shell e CLI

  • Struttura dei comandi
  • Navigazione nel filesystem
  • Permessi: user, group, other, e i bit speciali
  • Gestione file e directory
  • Pipe e redirezione: la potenza della composizione

Parte 2 — Scripting Bash

  • Variabili e argomenti
  • Costrutti di controllo: if, for, while, case
  • Funzioni e riutilizzo
  • Da script semplici a tool riutilizzabili
  • Buone pratiche: leggibilità, robustezza, portabilità

Parte 3 — Accesso remoto e trasferimento file

  • SSH: come funziona, configurazione
  • Chiavi pubbliche/private: autenticazione senza password
  • scp e rsync: copiare file in modo efficiente
  • Tunnel SSH e port forwarding

Parte 4 — Filesystem e gerarchia standard

  • FHS: dove stanno le cose e perché
  • /etc, /var, /usr, /usr/local — orientarsi nel sistema
  • Mount point e dispositivi
  • Permessi e ownership in pratica

Parte 5 — Storage con LVM

  • Physical volume, volume group, logical volume
  • Creare, estendere, ridurre volumi
  • Snapshot con LVM
  • Quando usarlo e quando no

Parte 6 — Btrfs

  • Copy-on-write: il concetto
  • Subvolume e snapshot
  • Backup semplificati
  • Confronto con LVM

Parte 7 — Processo di boot e kernel

  • Dal BIOS/UEFI al login
  • GRUB: configurazione e troubleshooting
  • initramfs: cosa contiene e perché
  • Moduli kernel: caricare, scaricare, blacklist

Parte 8 — Systemd

  • Unit e target
  • Gestire servizi: start, stop, enable, status
  • Scrivere unit file custom
  • Journal: log centralizzati
  • Socket activation e dipendenze

Parte 9 — Networking TCP/IP

  • IP, netmask, gateway: i fondamentali
  • Routing: come i pacchetti trovano la strada
  • DNS: risoluzione nomi
  • Strumenti diagnostici: ip, ss, ping, traceroute, dig

Parte 10 — Firewalling con iptables

  • Tabelle, catene, regole
  • Il percorso di un pacchetto
  • Regole base: permettere, bloccare, loggare
  • NAT e port forwarding
  • Cenni su nftables

A Chi è Rivolto

  • Chi vuole capire cosa succede "sotto" invece di copiare comandi da Stack Overflow
  • Chi deve gestire server, container, o ambienti di sviluppo
  • Sviluppatori che lavorano su Linux ma non lo conoscono a fondo

Interessato a questo corso?

Contattami per maggiori informazioni o per prenotare una sessione.

Vai ai Contatti →