Skip to content

Prontuario riga di comando Linux (Cheat Sheet)

Linux è un sistema operativo Unix-like gratuito e open-source basato su POSIX e Unix. È un sistema operativo multi-utente, multi-tasking, multi-threading e multi-CPU. Può eseguire i principali strumenti Unix, applicazioni e protocolli di rete e supporta hardware a 32 e 64 bit. Ereditando la filosofia di design incentrata sulla rete di Unix, Linux è un sistema operativo di rete multi-utente stabile.

Sistema

uname Mostra le informazioni sul sistema Linux
uname -r Mostra la versione del kernel
uptime Mostra da quanto tempo il sistema è in esecuzione (incluso il carico medio)
hostname Mostra il nome host del sistema
hostname -i Mostra l’indirizzo IP del sistema
last reboot Mostra la cronologia dei riavvii del sistema
date Mostra la data e l’ora correnti del sistema
timedatectl Interroga e cambia l’orologio del sistema
cal Mostra il mese e la data correnti del calendario
w Mostra gli utenti attualmente collegati
whoami Mostra la tua identità di accesso
finger username Mostra informazioni su un utente

Hardware

dmesg Mostra i messaggi di avvio
cat /proc/cpuinfo Mostra informazioni dettagliate sulla CPU (modello, core, fornitore)
cat /proc/meminfo Mostra informazioni dettagliate sulla memoria hardware (totale, libera)
lshw Mostra le informazioni sulla configurazione hardware del sistema
lsblk Mostra le informazioni relative ai dispositivi a blocchi
free -m Mostra la memoria libera e usata (in MB)
lspci -tv Mostra i dispositivi PCI in un diagramma ad albero
lsusb -tv Mostra i dispositivi USB in un diagramma ad albero
dmidecode Mostra le informazioni sull’hardware dal BIOS
hdparm -i /dev/xda Mostra informazioni sui dati del disco
hdparm -tT /dev/xda Esegue un test di velocità di lettura sul dispositivo xda
badblocks -s /dev/xda Verifica la presenza di blocchi illeggibili sul disco

Utenti

id Mostra i dettagli dell’utente attivo (uid, gid, gruppi)
last Mostra gli ultimi accessi nel sistema
who Mostra chi è collegato al sistema
groupadd “admin” Aggiunge il gruppo “admin”
adduser “Sam” Aggiunge l’utente Sam
userdel “Sam” Elimina l’utente Sam
usermod Cambia/modifica le informazioni dell’utente

File

ls -al Elenca i file - inclusi i file regolari e nascosti e i relativi permessi
pwd Mostra il percorso della directory corrente
mkdir ’nome_directory' Crea una nuova directory
rm nome_file Elimina un file
rm -f nome_file Forza l’eliminazione di un file
rm -r nome_directory Elimina ricorsivamente una directory
rm -rf nome_directory Forza ed elimina ricorsivamente una directory
cp file1 file2 Copia il contenuto del file1 nel file2
cp -r dir1 dir2 Copia ricorsivamente dir1 in dir2. Crea dir2 se non esiste
mv file1 file2 Rinomina file1 in file2
ln -s /path/to/file_name nome_collegamento Crea un collegamento simbolico a file_name
touch nome_file Crea un nuovo file vuoto
cat > nome_file Crea un file dall’input da tastiera
more nome_file Mostra il contenuto di un file una pagina alla volta
head nome_file Mostra le prime 10 righe di un file
tail nome_file Mostra le ultime 10 righe di un file
gpg -c nome_file Cripta un file
gpg nome_file.gpg Decripta un file
wc Mostra il numero di byte, parole e righe di un file
xargs Esegue comandi dallo standard input

Processi

ps Mostra i processi attualmente attivi
ps aux | grep ’telnet' Cerca l’id del processo di ’telnet'
pmap Mostra la mappa di memoria di un processo
top Mostra tutti i processi in esecuzione
kill pid Termina il processo con il pid indicato
killall proc Uccide tutti i processi chiamati proc
pkill nome-processo Invia il segnale al processo tramite il nome
bg Riprende un comando in background sospeso
fg Porta un comando in background in primo piano
fg n Porta il job n in primo piano
lsof Elenca i file aperti dai processi
renice 19 PID Esegue un processo con priorità molto bassa
pgrep firefox Trova l’ID del processo Firefox
pstree Visualizza i processi in un modello ad albero

Permessi dei file

chmod octal filename Cambia i permessi dei file nel formato ottale
chmod 777 /data/test.c Imposta i permessi rwx per il proprietario, il gruppo e tutti
chmod 755 /data/test.c Imposta rwx per il proprietario, r-x per il gruppo e tutti
chmod 766 /data/test.c Imposta rwx per il proprietario, rw- per il gruppo e tutti
chown owner user-file Cambia la proprietà di un file
chown owner-user:owner-group nome_file Cambia il proprietario e il gruppo di un file
chown owner-user:owner-group directory Cambia il proprietario e il gruppo di una directory

Rete

ip addr show Mostra gli indirizzi IP e tutte le interfacce di rete
ip address add 192.168.0.1/24 dev eth0 Assegna l’indirizzo IP 192.168.0.1 all’interfaccia eth0
ifconfig Mostra gli indirizzi IP di tutte le interfacce di rete
ping host Invia richieste eco ICMP per stabilire la connessione
whois domain Recupera informazioni su un nome di dominio
dig domain Recupera le informazioni DNS per un dominio
dig -x host Esegue il lookup inverso per un dominio
host google.com Esegue il lookup dell’IP per un nome di dominio
hostname -i Mostra l’indirizzo IP locale
wget nome_file Scarica file da risorse online
netstat -pnltu Mostra tutte le porte di ascolto attive

Compressione / Archiviazione

tar -cf home.tar home Crea un archivio tar chiamato home.tar per la directory home
tar -xf files.tar Estrae il file di archivio “files.tar”
tar -zcvf home.tar.gz cartella-sorgente Crea un archivio tar compresso da una cartella sorgente
gzip file Comprime il file con estensione .gz

Installazione dei pacchetti

rpm -i pkg_name.rpm Installa il pacchetto rpm
rpm -e pkg_name Rimuove il pacchetto rpm
dnf install pkg_name Installa il pacchetto usando lo strumento dnf

Installazione da sorgente (Compilazione)

./configure Controlla le dipendenze del sistema e crea il Makefile
make Compila il programma
make install Installa i file binari nel percorso predefinito/modificato

Ricerca

grep ‘pattern’ file Cerca un pattern nei file
grep -r pattern dir Cerca ricorsivamente un pattern in una directory data
locate file Trova tutte le istanze di un file
find /home/ -name “index” Trova i nomi dei file che iniziano con ‘index’ in /home
find /home -size +10000k Trova i file più grandi di 10000k nella cartella home

Accesso

ssh user@host Si connette in modo sicuro all’host come utente specificato
ssh -p port_number user@host Si connette in modo sicuro all’host utilizzando la porta specificata
ssh host Si connette in modo sicuro all’host tramite la porta predefinita 22
telnet host Si connette all’host tramite la porta predefinita 23

Trasferimento file

scp file1.txt server2/tmp Copia in modo sicuro file1.txt nella directory /tmp di server2
rsync -a /home/apps /backup/ Sincronizza la directory /home/apps con la directory /backup

Utilizzo del disco

df -h Mostra lo spazio libero sui file system montati
df -i Mostra gli inode liberi sui file system
fdisk -l Mostra le partizioni del disco, le dimensioni e i tipi
du -sh Mostra l’utilizzo del disco della directory corrente in formato leggibile dall’utente
findmnt Mostra i punti di montaggio per tutti i file system
mount path-dispositivo mount-point Monta un dispositivo

Navigazione tra le directory

cd .. Sali di un livello nella struttura delle directory
cd Cambia directory alla directory $HOME
cd /test Cambia directory alla directory /test