in tutorial

chmod , chown : permessi e proprietari sotto linux

Se digitiamo al prompt di una macchina linux “# ls -alt” ci viene restituita una lista dei file.

Sulla prima colonna troviamo 10 lettere che indicato come sono impostati i permessi di quella directory o file.

Sulla seconda il numero di hard link (collegamenti fisici) ( ma di questo ne parleremo un’altra volta. )

Sulla terza e quarta rispettivamente nome del proprietario e nome del gruppo.

Cominciamo dalla prima colonna:
La prima lettera indica se è una directory (d) , un link simbolico (l) o un file (-) mentre le restati 9 ( a gruppi di 3 ) definiscono i permessi per proprietario, gruppo e altri utenti.

I tipi di permesso possono essere

  1. lettura (r)
  2. scrittura (w)
  3. esecuzione (x)

Nell’esempio qui sotto abbiamo un file dove il proprietario può leggere e scrivere ( rw-) , il gruppo può solo leggere ( r–) ed infine tutti quelli che non fanno parte del gruppo possono solo leggere ( r– ).
Andando direttamente alla terza e quarta colonna ( root suser ) possiamo capire che questo file appartiene all’utente root ed al gruppo suser
-rw-r--r-- 1 root suser .....................

Adesso che abbiamo capito come leggere tutte queste informazioni vediamo come cambiarle.

chmod è il comando che modifica i permessi mentre chown cambia utente e gruppo.

chmod ha due tipi di sintassi: simbolica e ottale ( vedi # man chmod ) , io cercherò di spiegarvi la seconda che ritengo più sintetica.

Il sistama ottale è composto da tre cifre e definisce un un unica volta i vari tipi di permessi per proprietario, gruppo e utenti.
Questi tre numeri vengono calcolati sommando i seguenti valori ottali:
0 – Nessun permesso.
1 – Esecuzione.
2 – Scrittura.
4 – Lettura.

Passiamo a qualche esempio ..
(1) # chmod 777 nomefile
(2) # chmod 644 nomefile

es.1 In questo modo abbiamo impostato il permesso di lettura scrittura ed esecuzione ( 4+2+1 = 7 ) rispettivamente per proprietario, gruppo e utenti.
es.2 Seguendo lo stesso ragionamento abbiamo impostato lettura e scrittura ( 4+2 = 6 ) per il proprietario e solo lettura ( 4 ) per gruppo e utenti

Arrivati qui non ci rimane altro che capire come usare chown la cui sintatti si può riassumenre con

chown nomeproprietario:nomegruppo nomefile

Faccio un esempio ..

chown maurizio:suser nomefile

Con questo comando abbiamo impostato maurizio come proprietario e suser come gruppo.

Sia per chmod che per chown possiamo sostituire nomefile con nomedirectory e se aggiungiamo il parametro opzionale -R lo applichiamo in modo ricorsivo su tutte le sotto directory.
# chmod -R 744 nomedirectory
# chown -R maurizio:suser nomedirectory

L’uso di questi due comandi diventerà naturale dopo qualche esperimento.

Link di riferimento:

  1. http://it.tldp.org/man/man1/chmod.1.html
  2. http://it.tldp.org/man/man1/ls.1.html
  3. http://it.tldp.org/man/man1/chown.1.html
  4. http://www.shishii.com/dummy/index.php?id=59
  5. http://openskills.info/infobox.php?ID=93
  6. http://openskills.info/infobox.php?ID=94

ps

se trovate errori o inesattezze segnalatemelo

Write a Comment

Comment

  1. volevo chiedere come fare a negare il permesso ad un utente con accesso ssh di uscire dal proprio account e curiosare negli altri

  2. ciao,
    forse tu mi potresti aiutare. Devo cambiare il proprietario di alcuni files in modo definitivo ovvero, se li cambio con la procedura da te descritta funziona ma, come riavvio il pc torna tutto come prima. mi puoi aiutare?
    grazie