Non voglio vivere una vita fatta solo di voci.
  • Permission denied su Linux: 10 casi, compreso /dev/null

    Permission denied è un errore di Linux che compare quando il tuo account attuale non ha il permesso di usare quel file, quella cartella o quel comando. Scegli il tuo caso in base al nome del comando e al percorso all'inizio della riga di errore, controlla permessi e proprietario con ls -l e riesegui con i permessi o l'account giusti per risolvere. L'output qui sotto proviene dall'account root di un server AlmaLinux 9.8 e da un account normale di un server Debian 12; i nomi di account e di host e gli orari nell'output di /dev/null sono valori di esempio…

  • Comando watch: uso, intervallo -n, evidenziazione -d e uscita quando l'output cambia

    Il comando watch è un comando Linux che riesegue un comando indicato ogni 2 secondi e ridisegna il suo output su tutto lo schermo del terminale. Osservando con watch dei file su un server AlmaLinux 9 mentre venivano modificati da un'altra finestra, l'opzione -d ha evidenziato i caratteri cambiati e l'opzione -g ha chiuso watch dopo il cambiamento dell'output. L'output qui sotto proviene da una cartella di lavoro su un server AlmaLinux 9.8, eseguito come root; su un server Debian 12 è stata verificata solo la versione…

  • Comando su: differenza tra su e su -, sudo su e sudo -i, e come cambiare account

    Per eseguire comandi con un altro account in Linux senza uscire dall'account attuale, usa il comando su. Eseguendo su dall'account root di un server AlmaLinux 9 verso daemon, un account di sistema che non può accedere, un solo trattino ha cambiato la cartella di lavoro e il PATH, e il comando è partito solo dopo aver indicato una shell. L'output qui sotto proviene da un server AlmaLinux 9.8 (account root) e da un server Debian 12 (account normale)…

  • Comando zip: comprimere cartelle, estrarre con unzip e opzioni di compressione

    Il comando zip raccoglie su Linux file e cartelle in un unico file zip compresso, e per estrarlo si usa unzip insieme a lui. Su un server AlmaLinux 9, comprimendo con zip -r la cartella di un sito web si è passati da 35.825 byte a 4.158 byte, e unzip -O ha corretto i nomi di file illeggibili di un file zip creato su Windows. L'output qui sotto proviene da una cartella di lavoro su un server AlmaLinux 9.8, eseguito come root, con orari in UTC…

  • Comando nohup: uso, nohup.out e come continuare l'esecuzione dopo aver chiuso il terminale

    Per far continuare un lavoro anche se chiudi il terminale o cade la connessione SSH, avvialo con il comando nohup. nohup esegue il comando facendogli ignorare il segnale di disconnessione (SIGHUP) che arriva quando il terminale si chiude. Su un server AlmaLinux 9 sono stati avviati insieme uno sleep con nohup e uno senza, poi il terminale è stato chiuso: è rimasto in esecuzione solo quello avviato con nohup. L'output qui sotto proviene da un server AlmaLinux 9.8 (account root) e da un server Debian 12 (account normale)…

  • gzip: comprimere file su Linux, decomprimere gzip e usare gunzip e zcat

    gzip è il comando Linux che comprime un singolo file in un file .gz; per decomprimere aggiungi -d allo stesso comando oppure usa gunzip. Su un server AlmaLinux 9 un log di accesso di 31.878 byte è sceso a 4.424 byte, e dopo la decompressione sono tornati la dimensione e l'orario di modifica originali. L'output qui sotto proviene da una cartella di prova su un server AlmaLinux 9.8, eseguito come root, con orari in UTC…

  • ssh-keygen: creare chiavi SSH, registrare la chiave pubblica e usare ssh-copy-id

    ssh-keygen è il comando di OpenSSH che crea la coppia di chiave privata e chiave pubblica usata per le connessioni SSH e che si occupa anche di controllare le impronte, cambiare la passphrase e ripulire known_hosts. Ho creato chiavi ed25519 e rsa su un server AlmaLinux 9, ho controllato le impronte, cambiato passphrase e commento e poi provato ssh-copy-id in dry-run: l'unica cosa che passa al server è la riga della chiave pubblica nel file .pub. I nomi degli account e i percorsi dei file di chiave nell'output qui sotto…

  • Comando journalctl: uso, log per servizio e pulizia delle dimensioni del journal

    Il comando journalctl è lo strumento per scegliere e leggere, nel journal di systemd, i log lasciati dai servizi e dal kernel. Su Linux con systemd, systemd-journald raccoglie questi log nel journal. Leggendo i log per servizio, orario e priorità su un server AlmaLinux 9 e su un server Debian 12, un account normale vedeva solo i propri log, e un server che tiene il journal in memoria non poteva scegliere un avvio precedente. L'output qui sotto proviene dai due server…

  • Comando dig: query DNS su Linux e come leggere l'output di +short e +trace

    Per controllare i record DNS di un dominio fino all'intestazione di risposta del server DNS si usa il comando dig. Interrogando per tipo i record di example.com su server AlmaLinux 9 e Debian 12 e cambiando il server DNS interrogato, abbiamo verificato che bastano status e flags nell'intestazione di risposta per distinguere un nome che non esiste, un server DNS che non è riuscito a dare una risposta e una risposta data direttamente dal server che gestisce i record. L'output qui sotto è stato ottenuto su un server AlmaLinux 9.8 (account root) e su un server Debian 12 (account normale)…

  • Comando ss: controllare porte e processi su Linux, confronto con netstat

    Su un server Linux, il comando ss mostra quali porte sono aperte e chi è connesso. ss è lo strumento di consultazione dei socket di iproute2 che sostituisce netstat. Interrogando con ss le porte in ascolto (LISTEN) e le connessioni su un server Debian 12, abbiamo verificato che da un account normale il nome dei programmi avviati da altri account non compare nella colonna Process, nemmeno con -p. L'output qui sotto è stato ottenuto con una locale inglese…

Fine dei contenuti

Fine dei contenuti