Le due notazioni di chmod

Sono disponibili la notazione simbolica e la notazione numerica (ottale).

Notazione simbolica

chmod u+x file.txt
  • Aggiunge il bit di esecuzione (x) al proprietario (u).
  • Modifica solo ciò che indichi (tocco mirato, più sicuro).

Notazione numerica

chmod 744 file.txt
  • Imposta l’intero set permessi: rwx r-- r-- (utente, gruppo, altri).
  • Compatta per preset completi, ma sovrascrive tutto.

Nota: forme ibride come chmod u+3 non sono valide: con la simbolica si usano + - = e i bit r, w, x.

Confronto rapido

Aspetto Simbolica (u+x) Numerica (744)
Leggibilità Alta (“aggiungi esecuzione all’utente”) Media (4=r, 2=w, 1=x)
Rischio errori Basso (delta mirato) Medio/Alto (sovrascrive tutto)
Uso tipico Modifiche puntuali Preset completi uniformi

Cosa cambia ai bit, passo passo

# Stato iniziale
touch file.txt
chmod 644 file.txt      # rw-r--r-- (644)
ls -l file.txt          # verifica

# Aggiungo esecuzione all'utente (simbolica)
chmod u+x file.txt      # diventa rwx r-- r-- (744)

# Impostazione completa (numerica)
chmod 744 file.txt      # stesso risultato, via sovrascrittura

Con la simbolica applichi un delta (solo il bit indicato). Con la numerica riscrivi l’intero set u,g,o.

Chi sono u, g, o

Come decide il kernel

  1. Se sei il proprietario → permessi di u.
  2. Altrimenti, se appartieni al gruppo del file → permessi di g.
  3. Altrimenti → permessi di o.

Si applica una sola categoria (non la somma delle tre).

Esempio

-rw-r----- 1 marco docenti 0 file.txt
  • marco (owner) → rw- (legge/scrive).
  • Membro di docentir-- (solo lettura).
  • Utente esterno → --- (nessun accesso).

Comandi utili da sistemista

# Gruppi di un utente
groups nomeutente

# Proprietario, gruppo e permessi
ls -l file.txt
stat file.txt

# Cambio proprietario/gruppo
sudo chown luca file.txt
sudo chgrp studenti file.txt
sudo chown luca:studenti file.txt

# Modifiche mirate
chmod u+x script.sh
chmod g+w /share
chmod o-rwx file_segreto

Consiglio operativo

Usa la simbolica per cambi mirati (u+x, g-w…), la numerica (755, 640…) per preset completi coerenti.